Current Articles
  Archived Articles
  TECHS Articles
  Current Projects
  About Us
You are not logged in.

Please either Login or create a New Account.
Custom RSS

Note: this links is the RSS feed for the current filters shown at the top of the page. For an RSS feed for all articles in this community, click here
Tag
VB.NET (3)
With the demise of Manila, Broken Bow is looking for a different way to provide teachers with a professional web presence.  The probable adoption of web apps like Blackboard and the move toward Web 2.0 apps parcels out many of the reasons for a professional web page to a collection of more specialized systems.  As a result, the ubiquitous "professional web page (every teacher should have one)" is being gradually eviscerated.  There are already schools in Nebraska that are using one-to-one and have completely dropped the use of individual teacher professional web pages.  Our approach will probably be to drop back from "every teacher must have one" to "teachers who want one in addition to what's on Blackboard and Infinite Campus already can have one."

Manila's exit from the scene has a bearing on the development of a different approach.  First, it is driving the timeline for adoption.  It's our intent to drop Manila as of the end of the 2009 Spring semester, and a replacement solution must be in place before then.  Second, Manila's long use in the District has a host of difficulties and complaints that we think can be corrected in a new system.  (It's not that we don't like WordPress, it's just that we don't necessarily agree that every computer user and their dog must blog and that the jury's still out for us.)  Complaints include:

  • I have to remember a separate login ID and password
  • Pages have to be created in Manila, so I have to learn a whole different editing system
  • Drag and drop from Microsoft Word doesn't work, so I wind up having to type things twice
  • Keeping up my web pages is always an additional task, and I don't have the time

Local resources may lend themselves to an elegant solution.  (1) Microsoft IIS is capable of serving out pages from "webshare" folders located in teachers' network home directories, and we are already using it for many other purposes. (2) Microsoft Office (the District's standard application software platform) is capable of producing robust static web pages to put in the webshare folders.  Links between pages would have to be managed manually, but the effort to do so is no greater than the effort to do so in Manila -- maybe less.  (3) I'm functionally fluent in ASP (including ADSI interface access to Active Directory), HTML, CSS and SQL, and somewhat less fluent in PHP.  I certainly don't consider myself to be anything close to "expert." (4) We have Sharepoint installed, and are considering that as part of the local mix.

Having said all that, here's the vision and the problem:

Professional pages should be created and maintained in Word 2007, and stored/served from a webshare subfolder in the individual's home directory.  Security permissions for editing vs. reading should be controlled by NTFS/Active Directory.   A Microsoft SQL 2000 Desktop instance has been created on the IIS server to support the website, but no tables have been created yet.

Somewhere somehow the professional pages need to be encapsulated in a template wrapper (the template is already fully developed using CSS floated boxes, and can be seen at http://services.bbps.org/theme3/index.asp).   The Word-created HTML pages should appear in the large white section to the right of the navigation menu.

The problem so far has been that Word-created HTML pages include their own styles, fonts, and tags.  If the file is simply imported into it's proper sequence in the template, you have nested <HTML>, <META>, <HEAD>, <STYLE> and <BODY> tags that are consequently misinterpreted.  I'm in the process of experimenting with framesets, but understand that frames have been deprecated.  If I store the Word-created pages as BLOBs in the SQL database, it's still not a matter of just adding the template segments around them -- the nested tags still exist.  Of course, Manila accomplished this by requiring use of their own HTML editor that couldn't understand the complex markup in Word documents.  And storing them in SQL implies a two-step update process: (1) open the document in Word and make the change, then (2) upload it to SQL again.  Ideally, it should be enough to just open it in Word, make the changes, and save it again, just like any other document. 

So what I really need to do is display NESTED web pages (a web page inside another web page), where both the inner and outer pages are fully independent and standards-compliant.

So... any ideas?

Tags: CSSembedHTMLprojectsVB.NET



I've had fun making dumb little programs for fun.  The inspiration for this came from the need to host a gathering where some group games were to be played.  So knowing that I could project my screen from my laptop I created this game to have a little fun.  It is a very basic version of hangman or Wheel of Fortune.  I've zipped up the source code and exe in this attached file.  Let me know if you have any suggestions. 

WordPuzzle.zip

Note:  Requires .NET Framework 2.0 or greater.



I figured out this way to implement a log file for an application by using an xml file and adding it to the final compliation.  

In the solution add a new xml file.
In the properties of that file, there are 2 things to set, the build action and the copy to output direcotry.

Make sure the build action is Content
Make sure the Copy to Output Directory is Copy if newer

The settings for the "copy to output directory" are "Do not copy", "Copy Always" and "Copy if Newer"
The do not copy option doesn't put a file into the final build directory, and if this is selected, a relative reference to the file cannot be obtained.  The copy always option copies the file as it exists to the build directory for every build, and therefore will delete any changes you made programmatically.  This is not desirable when you are testing.  The copy if newer allows for only copying the file over if the original file has changed and therefore has a newer timestamp. 

These settings ensure that the file is copied to the bin/debug folder on a build.  Then one can reference the xml file in a relative manner so the path need not be known.

Here is an example of a routine to open a log file and append an entry. 

Public Shared Sub AddEntryToLog() 
    Dim xmlDoc As New System.Xml.XmlDocument() 
    xmlDoc.Load("Logs.xml") 
    Dim objElement As Xml.XmlElement = xmlDoc.CreateElement("entry") 
    objElement.InnerText = "Added a log entry."
    objElement.SetAttribute("date", "4/2/2008") 
    xmlDoc.SelectSingleNode("logs").AppendChild(objElement) 
    xmlDoc.Save("Logs.xml")
End Sub

Here is the log file with the entry from above.


<?xml version="1.0" encoding="utf-8"?>
<!-- Logs of reminders sent.-->
<logs>
<entry date="4/2/2008">Added a log entry.</entry>
</logs>




  1