This book holds information about design on the proposed Tuatha de Bhriain website. Add sub-pages underneath this top level book page to create a logical outline. Though comments are now disabled on other books in the library, I am keeping comments 'on' in this section as we develop the site.
This page was originally set here last year, but I have updated it and added it back in as a forum post (as is the currently accepted procedure for new topics).
I took a backup of the site again today (Aug 19, 2007) and came across a couple of new issues due to the new modules that have been installed over the last few months.
The process of backing up the site goes as follows:
Move a copy of the entire tdbcelts.org directory structure to the laptop. This will include drupal core files, as well as custom graphic images or code 'snippets' that make up that skeletal framework. This is a 'complete' backup, and really only necessary once in a great while. I only did a partial backup this time.
1. Log onto the server and access phpmyadmin
2. Export the tdb476 database to a gzipped SQL file with all structure and data (I like to make sure compatibility to 4.0 is checked)
3. If I copied *everything* in the tdbcelts directory I will have a complete copy of the files folder (and all subdirectories) on the local machine. This is the directory with all user submitted images and files. If I didn't do a complete backup, at least grab this. Drupal itself and the modules can always be reinstalled from source.
4. Import the dumped SQL file into my mysql 4.0 database on my laptop and load the site locally as it was on the outside server.
Running the site on my powerbook
Since I gzipped the SQL file, the resulting file was only 1.6 meg, well under the 7 meg where there might be a problem.
Other problems I had included: I had to disable Captcha and textimage since I couldn't get the ImageMagick module working properly on the laptop (I have upgraded to a newer OS), and had to do this through phpmyadmin, by going to the system table and setting captcha and textimage modules to '0' (disabled) directly in the database. Then I had to empty the cache table manually. I eventually got ImageMagick installed and working, but I messed up my http.conf file (Apache) and now .htaccess files just cause server 500 errors all the time, so I had to delete the protecting one in the files/images directory on the laptop.
The .htaccess file I use on the live site doesn't work on the laptop (yet?) and was causing a server error 500. To get around this I had to change the general setting to not use 'clean URLs' - the site on the laptop runs so that this page looks like this: http://tdbcelts.org/?q=node/718 instead of what it normally looks like. Not a big deal, but it is different.
Designing a site requires figuring out what everybody needs to be able to do on it, and assigning appropriate permissions to people to do that stuff. What is possible to do depends on what modules are installed, and what you are allowed to do depends on what group you're in and what permissions those groups have. If you are an anonymous browser of the site, you won't be able to do everything a logged in (authenticated) user can do. If you are a logged in user, you still might not be able to do all the things a TdB member can do. A TdB member still can't do everything an administrator can do, and then there may be other special groups of people who are members of one or more of the standard groups, but can also do another specific thing.
That was poorly said, but perhaps if you could see the settings themselves, it would help explain it better... The attached PDF shows the 'access control' settings as of Jan, 2007. There are several groups (anonymous, authenticated user, Official Friend, and TdB member).
| Attachment | Size |
|---|---|
| access control 070120.pdf | 380.18 KB |
| access control 070121b.pdf | 377.44 KB |
This is from the website design spec, but it hasn't been addressed yet and is becoming important. I will set this forum post to TdB members eyes only. Basically, I need the Clann to decide how this should be handled because handling permissions is granting me big powers, and yet I am not holding any office at this time and so these powers are un-regulated.
3. Controlling Access
I've come up against one issue that I don't know how to handle. When someone signs up on the site (today was Dairchan), I don't know what permissions to grant. For instance, I think he is still probate status - but since I didn't have group called probate (what would they not be able to do on the site that a member can, or more than a Friend, or an Authenticated user from Norseland, or an anonymous user? You see my point I think. And I am assigning him the permissions, so I need a list of folks and who are members, probates, friends and who aren't.
I do a lot of fiddling around on the various websites I host on my webserver, and as a result tend to end up with a situation that I *hope* no one else is experiencing: Occassionally I won't be able to log in to the TdB site :( I found the only way to get in is to go into my Firefox preferences and blow away all my cookies for the in8sworld.net domain and try again. This may only be because of my use of Firefox, or because I have other sites which require cookies on that domain, I don't know. If anyone else has a problem, please let me know.
The scope document (attached) describes the plan of action for getting a job done. It is a list of things to accomplish, and (in it's present raw form) includes a lot of personal discussion about the various ideas that a final draft would eliminate.
Since this document has not changed very much in the last couple weeks, I'm considering most of the plan in it's near final form. It is offered here for comment.
This document was created on Google Docs with three collaborators: Aonghus, Guthrum and Comyn. Their text is either annotated (as a comment) with their name and date, or changes inserted colorized. I forget which color was who, but you can probably figure it out.
| Attachment | Size |
|---|---|
| New_website_plans.pdf | 120.33 KB |
OK - as I learn more about how to configure the site, I am changing stuff around a bit. Workflow is a mapping out of the procedure for doing some task which outlines the steps you need to take in order including any decisions you need to make along the way. This morning I set all the different content types (blog, book page, forum topic, image, page, poll, and story) to *NOT* appear on the front page of the site as default.
This might not be what we wanna do, and will need to discuss how we want everything to function - but I thought it best to have stuff not appear on the front page as default, and if you want it to, you select that from the Publishing options at the bottom. The reason I did this was there seems to be a lot of stuff we might want to load in to books, and images we might want to contribute at first and having everything pop up on the front page may become disorienting to new folks.
We might choose to set story to be default Publish to front page, and leave the others off. A user can always change that setting though for any particular content type (unless I change the access control settings I think). It should be possible to restrict what ends up on the front page entirely by requiring all that content to be 'moderated' first by someone (I think this is kind of what happens with the Yahoo site right now).
The front page of the site (which now has only a small sidebar on the
left with recent activity and some basic user controls) and a large
area on the right for 'stories'. The top story is a 'Welcome' feature
with a symbol. The stories that appear beneath it can come from
various sources: blogs are only one of these, though at the present
that is all that is happening. We could choose to not allow blog
posts to appear on the front page at all. This would leave the latest
minutes or events up there for a longer time. Any kind of post can be
promoted to 'the front page', though only one type appears there by
default (story) right now. This is all part of defining the
'Workflow' or how we will use the site.
One possible workflow: When minutes are posted, they could be posted
as a 'book page' or a 'story' which would then get linked into the
'outline' so that it appears in the correct 'chapter' of the Minutes
and Newsletters 'Book'. All books are in the 'library'. Click
library to see all the current books. The books are created, and get
bigger as more pages are added to them. The pages can be moved around
easily and re-organized as needed without having to do any kind of
hand coding. We can assign permissions to whoever needs to maintain
this kind of thing.
A 'book page' might have a short stint on the front page until it is
superseded by another (more recent) posting. Older posts then move
down (in reverse chrono order - much like your average blog).
In order to post the minutes on a website, the notes were composed in Word and saved in HTML format for many years, when the Clann began using the Yahoo groups list, it became common to post the minutes in the original Microsoft Word doc format. While using Word makes it easy to compose a readable document (if you own Word!), Word does *not* generate standard HTML, and HTML created from Word is not easy to get onto the web without massive intervention. (Caveat: you can throw a MS Word saved HTML doc right up on the web, and it will display OK, but since it's non-standard HTML, don't expect to be able to easily integrate it into a themed website like this one).
We might argue back and forth the relative merits of Word / Frontpage vs. Open source alternatives, but the bottom line is we need to create a document specification for minutes that is easy for anyone to comply with. The content of the minutes is fairly well understood - the disagreements we have had about that lately regarding required detail aside. The digital format of the minutes is not.
An alternative, just popping into my head now might be some kind of Word macro which cleans up the code, or possible a Word template which creates only the formatting we want. Forms are good. However, not everyone has Word at home believe it or not - so I'd like to stick with free software.
However the minutes are generated, they eventually need to be converted into standard HTML for inclusion on the website. In my opinion, the Sencha should type the minutes in something that will create standard HTML easily! From my experience, it's best if we define a small subset of HTML that can be used.
For instance, we might create a spec that defines the header as bold, the subsections as underlined, the attendance as a bulleted list, the What News as an ordered list, etc. Then we know what tags will always be used and could create a template or a form.
For me, it's easy to just write it out in HTML, since it's no more arcane than ogham or runes, in fact it's English so it's easier to understand. But, given the success that Aonghus had with that doctrine on the AOL site, I think we should settle on something WYSIWYG (what you see is what you get).
Google Docs should do this (though I haven't tried to import the minutes I typed up in that as yet), as well as Open Office (though I am sceptical if anyone will be willing to install that if they already have Microsoft Office). I think we might be able to standardize on N-vu which is available for Windows, Linux, MacOSX, as well as other operating systems, and is open source and free. (It's the old Netscape Composer after it was removed from Mozilla). I think it may be the way to go for anyone who wants to create better formatted HTML documents for inclusion on this (or any) website.
It is also possible to incorporate a WYSiWYG editor (called tinyMCE) into Drupal, but I doubt the Sencha will want to be forced into typing the stuff up while online.
It seems someone actually sells a product called
Word Cleaner that puports to do the job for you, but it's a shame we have to waste time doing it all.
It's a much more commonly discussed thing than I thought at first. Here's a good article about it on MonkeyFlash.
This is a place to put notes on general layout of the site, including where blocks of information appear, how they work, and what links appear where.
The search stopped working today after some modifications I made and I can't get it working again :( I have disabled it, and removed the cron job for now.
I added a search form to the site at lower left. This required me to hook up the 'cron job' which basically is a command which runs at a set time every hour or so to update some things, like the search database. You don't want the server to be indexing the whole site every time somebody does a search for performance reasons, so this does it hourly and then when you search you see the index from that time. To do it, I had to edit the cron-lynx.sh file in the scripts folder and then edit my crontab (crontab -e) to add:
43 * * * * /path/tdb/scripts/cron-lynx.sh
The cron-lynx.sh file actually runs lynx (a text browser) and hits a certain page on the site (this way it's hitting it from the server itself, the only way it will work) which re-indexes the site.
The scripts clean up temp files and the like as well.
So I grabbed all the minutes that were available on both the AOL site and the Yahoo site. I ran them through some filters to clean up the code as best as i could, and come to find that I just can't get these pages to display decently at all. Drupal offers two methods of displaying text - the standard 'Filtered HTML' mode (the system is expecting just plain old text, and allows some minimal set of markup:
* Allowed HTML tags: a em strong cite code ul ol li dl dt dd
* Lines and paragraphs break automatically.
* Images can be added to this post.
The trouble is, the pages were never formatted the same way more than about four times, and there is no consistency across them at all for markup. I can't easily fit the various layouts into one single format without rewriting them all. At work, for instance, we have developed a document specification (much like MIL spec has) and all docs are written to meet that spec, right down to fonts used and spacing, etc. The easiest way to enforce this would be to create a template form for entering minutes here on the site, but I wouldn't want to force anyone to type the crap in online, that seems onerous. However the desire to impose some kind of order on the minutes / newsletter chaos is strong in me.
Most of the old minutes are filled with tables, breaks, paragraph marks, Microsoft word classes, ...the list goes on. It seems that the minutes are almost more trouble than they're worth, expect for the fact that they contain vital motions and votes that may someday be relevant to an as-yet unforeseen situation. I wondered briefly if they best idea might not be to create PDFs of all meeting minutes and attach them to a book entry for each year. That way the formatting is preserved and the minutes would not be editable. Problem with this approach is that the consistency of presentation (and subsequent searching of the docs for some piece of info) becomes a pain, though the Sencha can attach a file to a page if given the permissions to do so.
I also tried enabling full HTML to just use the existing HTML docs (which were mostly saved out of Word) with no good result. The minutes from AOL are all inside tables which means they can't go up as is. I manually removed all outer tables (using a progam which works on multiple docs at a time), but still results were lackluster for another reason (below):
Full HTML
* Lines and paragraphs break automatically.
but the presentation is not as expected because while Drupal says it's full HTML, it seems that it inserts line breaks and paragraph marks automatically which means if you have these elements sprinkled throughout your HTML coded, Drupal will add more, making the whole page look too spaced out and crappy.
Another option they give is PHP code (which can be dangerous to allow if you don't know what you're doing). However, this might provide another solution: If the minutes were stored as simple text files on the server some place, I could write a simple PHP include to well, include them. That's probably not an option since the Sencha wouldn't be able to submit them to the site directly.
Unfortunately, preserving some of the more atrocious formatting (like words colored green and red, and various hues of backgroundc colors) is hard to justify. The minutes would need to be reformatted, by hand anyway to get them into a readable state unless I just print them to PDF right off wherever they are living right now (AOL, Word, HTML, etc.). I guess this may be how I proceed since cleaning up the minutes has become a nightmare.
However, given more time, the book outline feature offers a compelling means of accomplishing this goal as well: If the minutes for each meeting were broken down into their components (What News, New Business, etc.) each as a page in the book, then formatting each becomes less of a problem. You would always do a page of a given type the same way, and you could always click 'printer ready version' for a quick printout of all the minutes or some subsection thereof. The Book feature is a very powerful tool and I'd hate to give it up for relatively useless PDFs.
Arrrgh - Maybe I'll try both and see which one is more friendly.
I moved all of the persona stories from the AOL site over to a section of the library. I removed the persona story from the user profile because most of them were just too damn long for that area, and I wanted to allow an easy way to print them all out if you wanted to. I might add a place to put a link TO your persona story in your profile. The other thing to mention is that the page with your persona story can be AUTHORED by you (or set that way) so your 'avatar' image (user picture) shows up there, but I believe it is also possible to add images to your persona story to spice it up a bit.
We need to talk about permissions on all these pages. Who can edit / add / delete / etc.

A quick reference quide for the site describing the elements and what they do. This image was created using Photoshop layers, and can be updated if the layout of the site changes.
Another good thing about this guide is that as we move stuff around, we have something to remember what it used to look like :)
Click 'original' for full size image.
This is an example of a book content entry. Supposedly we would be able to collaborate on this document. Here's an example of what we could use it for. Drupal has a lot of modules that extend the functionality of the site. I'll post some ideas.
The Private Messaging Module -
http://drupal.org/handbook/modules/privatemsg
The Table Manager Module -
http://drupal.org/project/tablemanager
(Don't be frightened by this write up, it's actually quite easy to use out of the box, I have it running on my laptop, this is mainly about how to configure the display of tables. The default look should be OK for our purposes.
Calendar
Have a look at this event modules comparison, perhaps that will help us decide which is the best way to attack the shared calendar idea.
Perhaps somebody could try editing this post and see what happens.
Installed two modules important to us: Events and Simple_Access. One allows us to post events on a shared calendar, the other allows us to restrict who sees stuff (all types of stuff).
Managed to get the event module installed and running.
Go ahead and try to add an event and see if you can make heads or tails out of it. There is a calendar now at lower left that you can use to navigate quickly with as well.
Since we also have the simple access module, we can also control who can see and add events. I added the Norseland Winter Thyng (on Jan 20) for TdB members only. By the way, this means that TdB Friends (I haven't set a group up for them) CANNOT see this event - and it's their event! Unless we want to set events to be viewable by everyone, we'll have to have another group called TdB friends so we can publish stuff that Friends + Members can see. Simple Access restricts access to the groups you have created roles for. This is opposite from some other access modules which restricts everything except for those you explicitly set up to see it. I thought that was far to draconian for our purposes.
To set restrictions on stuff, you have to select a group (or groups) that can see the content by choosing the Access item underneath the post. Most content types have this item, though I think comments inherent it from the 'node' type it is attached to. (ie: forum topic, event, page, etc.)
As luck (of the Irish) would have it, right after I took a complete backup of the site, I decided to change something which hosed all of the images on the site (or at least, confused the database about the location of the various sizes of each image). I wanted to change the thumbnail size from 150 to 130 so that more images will fit per gallery, but changing that setting caused a massive problem somehow.
I managed to upload the saved copy of the database with no problem, and uploaded all the images again (in the files/images directory), though I don't know if that was necessary, and got the site up and running again. Just as it came up live, they took the server down for an upgrade! which was very disconcerting since I thought it was my problem, not a server maintenance issue. Luckily I found a post on the server's announcement board pretty soon after the issue occurred. I don't know what really happened, since I'm still unfamiliar with the how the database really works :p
It's a priority to me to figure out what the proper procedure for changing the image thumbnail size would be as well as the correct method to recover from such a disaster. My solution wouldn't work very well if I didn't have a recent backup of the database... All the posts made since the database backup would be gone! So I need to know how the image resizing and linking is working behind the scenes.
Basically we need to find a module for Drupal which will allow us to create a Myspace-like profile. Wordpress offers this out of the box I think, where you have an avatar picture and any comments you make anywhere carry this picture along... In any case I don't see that built in here.
This book page should hold notes about themes. I watched the dudertown videos 11 and 12 about themes and I think they're really not too hard to follow if you've ever seen CSS before. If you haven't seen CSS before and are interested in web design at all, do yourself a favor and learn about it. It's a way to separate the look and feel of a site from the content, allowing you to change the entire layout of a site based on one page of code.
I substituted the 'chameleon' theme with the 'foliage' theme and replaced the main images. I did some work to change the color scheme to greens, but wasn't happy with what I ended up with and didn't have any more time.
The colors may not be exactly what we're after yet, but they were very readable, so I wasn't going to tweak them too much yet. I grabbed a page out of the Book of Kells for the banner image. I'm sure we could find something more suited to our period (the Book of Kells is from about 800 A.D.), but it gives the impression of ancient Ireland in a powerful and readily recognizable way. Without more active collaboration with you folks, I'm afraid you'll just have to deal with whatever I come up with.
How it works:
You just grab a new theme from drupal.org and drop it into the themes subdirectory, it instantly becomes available in the administration page, you enable it and you're done. You can customize the css that points to images (as shown at the top of the page and the bottom), or all the colors and the fonts used by editing the style.css page in the theme folder.