A quick post to note the changes made to the interoperability site, changes still left to do, and to keep this blog fresh! The interoperability site is located at http://interoperability.ucsd.edu.
Changes Made
- Tabs
- Reshuffled nav tabs: Home, Project, People, Publications, Activities, Links, Tools
- Nixed Resources tab. The former sub-pages under Resources were Publications and Links. Those now have their own tabs.
- Moved Blog and Files under newly created Tools tab.
- Sidebar
- Removed block from sidebar (e.g. Stuff, Menu, etc.).
- Added green background color: #618c65
- Breadcrumbs
- Added bottom padding, gives more space to ease viewing.
- Adder underlines to hyperlinks, underlines removed when hovering.
- Images
- New background images behind main content: silver->green with drop shadow, colors used to distinguish columns
- Moved logos to directly under main content in left column. Overlayed white background on silver in Photoshop to give transparent effect.
- To finish drop shadow effect, added background images in footer and used a “corner” element so that shadow wouldn’t stretch entire width of the wrapper
- Borders
- Changed border color of block from green to silver: #ccc
- Added silver border underneath breadcrumbs.
Changes To Do
- Add photo gallery/random photo viewer on sidebar for all pages.
- Integrated authentication for private and tools pages.
- Email-by-post and email notifications for blog.
As always, I created before and after snapshots of the interoperability site, shown here. The Before shot shows the site how it looked under the Xoops CMS. The After shot shows how it looks today.
Subversion Notes
I had issues with subversion when updating the working site. Somewhere or somehow, I changed/added/deleted a file from the dev site, and failed to mimic the action with the proper svn add, svn delete, svn move, svn copy commands. The file in question is 05LTER_NetworkNews_spring.pdf. Subversion stopped updating the working site when it reached this file, complaining that this file was already added in the repository? (I don’t have the exact error msg at this point. I will post it as soon as I re-see the problem). Regardless, I ended up abandoning Subversion temporarily and used a cp -r dir1 dir2 to copy the code from the dev site to the working site. I will go back when I have time to address the issue with Subversion. It’s probably something really simple, so I’m not too worried about it.
This issue made me think about how we should use Subversion. It is designed mainly versioning code. Yet, if we throw an entire website into a repository, we end up versioning all sorts of files, including images and binaries (docs, pdfs, etc.). Must all these be versioned?
Perhaps we should recognize what files should be stored in Subversion for certain projects.
For web sites, it is good practice to store html, php, css, javascript, sql, perl, and any other related web-scripting or programming files. I would also store basic image files used for presentation purposes (background images, bullets, etc.), as these are seen as part of the project. However, docs do not really need to be stored in Subversion. They should be managed by separately, particularly since they are peripheral items to me, the developer, and are not part of a web-programming project from my point of view.
It may be a poor practice to segragate code files from doc files, as this creates a parallel workflow to consider when updating a site. However, the doc files typically remain dormant, and are only editted and tracked by other users. Their only relation to the code are the anchors that link back to them. Keeping these files outside of Subversion frees me from issuing the svn * commands each and every time a file is added or removed to the project. An added benefit is the prevention of wasted space in the repository that is otherwise eaten by very large files. If having a parallel workflow is the consequence of preventing complications elsewhere in the workflow, I’ll take it. I am figuratively picking the less deadly poison… at least I’d like to think so anyway!
One more note about storing config files in Subversion. Particularly with web applications, the config file is specific to the web app path, and other factors (dev vs. working databases). Thus, a config file is the only code file that should “not” be included in the repository, as any update could potentially overwrite the local config file. One workaround (something I see with many open-source projects) is to create a distribution config file, something like: config_dist.php. When checking out code for the first time, you would then copy this file to config.php and add the appropiate settings as dictated by your file path and database. Using this method, config.php is safe from being overridden by Subversion, yet you can still recieve up-to-date changes to config_dist.php, should there be any.
WordPress Note
I wrote this post in Firefox, which uses Javascript to provide an HTML Quicktags bar on top the text area window. This helps with some html generation. From my experience here, it’s not as much a time-saver as I thought it would be, because it’s just as cumbersome to click the tags on top as it is to type them in manually. Most entries won’t contain html anyway, and those that do use only simple html tags (lists, bold, italic, etc.). Thus, Safari is fine to write/edit posts, even though it lacks some extra editting quirks seen in other browsers.