-- MySQL dump 10.11 -- -- Host: dbmysql.sphericalharmony.com Database: spherical -- ------------------------------------------------------ -- Server version 5.0.45-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; -- -- Table structure for table `adminviewtags` -- DROP TABLE IF EXISTS `adminviewtags`; CREATE TABLE `adminviewtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `adminviewtags` -- LOCK TABLES `adminviewtags` WRITE; /*!40000 ALTER TABLE `adminviewtags` DISABLE KEYS */; INSERT INTO `adminviewtags` VALUES ('','pagetype'),('
','','
','tagindex'); /*!40000 ALTER TABLE `adminviewtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `anyformtags` -- DROP TABLE IF EXISTS `anyformtags`; CREATE TABLE `anyformtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `anyformtags` -- LOCK TABLES `anyformtags` WRITE; /*!40000 ALTER TABLE `anyformtags` DISABLE KEYS */; INSERT INTO `anyformtags` VALUES ('\r\n
\r\n

\r\nAdd new form definition\r\n


\r\n
\r\nName of form?
\r\n\r\n

Header?
\r\n\r\n

Footer?
\r\n
\r\n
What Tagtable should be used?
\r\n\r\n
\r\nAdd form to what form database?
\r\n\r\n
\r\n\r\n
','','bodye'); /*!40000 ALTER TABLE `anyformtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `bdataentrytags` -- DROP TABLE IF EXISTS `bdataentrytags`; CREATE TABLE `bdataentrytags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `bdataentrytags` -- LOCK TABLES `bdataentrytags` WRITE; /*!40000 ALTER TABLE `bdataentrytags` DISABLE KEYS */; INSERT INTO `bdataentrytags` VALUES ('\r\n
\r\n

Beta database Entry form:\r\n


\r\n
\r\nTitle:

\r\n
Affected systems:
\r\n\r\n

Text description:
\r\n\r\n

Reference entries:
\r\n\r\n

External links:
\r\n
\r\n
Change status:
done \r\n
ongoing \r\n
bug \r\n

\r\n
\r\n','',''); /*!40000 ALTER TABLE `bdataentrytags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `beta` -- DROP TABLE IF EXISTS `beta`; CREATE TABLE `beta` ( `ts` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `title` varchar(100) default NULL, `systems` varchar(100) default NULL, `what` varchar(10000) default NULL, `followup` varchar(1000) default NULL, `links` varchar(500) default NULL, `done` enum('done','ongoing','bug') default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `beta` -- LOCK TABLES `beta` WRITE; /*!40000 ALTER TABLE `beta` DISABLE KEYS */; INSERT INTO `beta` VALUES ('2006-12-02 07:22:24','First entry','test','Attempting first log entry using crudely modified alpha templates applied to betas more complex structure. Total shot in the dark here.','','','ongoing'),('2006-12-02 08:10:26','Table generation, blank fields','test php','Debugged initial data display of first beta DB entry. Discovered that blank fields lead to blank table data so I added an automatic trailing period to all entries to prevent blank cells. Discovered that echo seems to have issues with some html strings, which needs to be thoroughly investigated, because it could make the main page display engine harder to create.','2006-12-02 01:22:24','','ongoing'),('2006-12-02 09:20:48','Basic beta links','html pages','Added a few quick and dirty links to and between the new beta database pages. Note that only the database itself has status as true beta implementation, the editing and viewing pages are just souped-up alpha tech designed to make sure database is correctly structured and accessible. The next step is to create an alpha version of the basic page engine and the necessary metafiles to display a selected database entry.','','','done'),('2006-12-02 10:53:26','php tester page created','php PDE ','Created general purpose php test page. Experimented with generating html output by assigning variables to html tags and echoing them. Worked fine with a bit of learning. Learned to escape quotes within html variables and succeeded in printing a working form button by echoing a single variable. Plan to generate pages by loading in database entries as variables and echoing them seems like there are no technical problems. IMPORTANT: need to disable magic quotes feature asap so I am in charge of all string processing.','','tester.php','ongoing'),('2006-12-02 11:22:32','Remote test via proxy','test','Just a simple check of full functionality from the beta database modules via a proxified post. Not expecting issues, probably just finding an excuse to make more entries.','','proxify.com','done'),('2006-12-02 12:04:00','More random remote testing','fun test','Amusing myself by watching my host server sleep while I access it from a different machine. My page actually looks slightly better on this other machine, perhaps because of default font rendering? The speed I\\\'m experiencing even though my upload isn\\\'t fast is quite gratifying, and to my mind demonstrates how annoying the graphics-rich web is.','','All those crappy high-bandwidth sites','done'),('2006-12-02 12:36:41','Output format model','interface html','Upgraded the table formatting of the beta database viewer. Now it is a potential goal template for eventual PDE implementation. New display frames the main text field as a colspan 5 with the generally smaller data fields above and below. The title is accented with the header+footer color.','','','done'),('2006-12-03 01:15:00','PDE needed database notes','PDE mysql php','Rough draft of PDE code has been written, probably broken but not testable until support databases are made etc. The following databases need to be created: 1) forms needs 4 columns, pagetype header footer tagindex, and header and footer need to be large, they will contain big chunks of html code. 2) every page type needs a uniquely named tag database with 3 columns, open close varname. After these databases are created, just need a HTML referral form to launch PDE and we can start tearing out the hair to figure out why it doesnt work at all!','','','ongoing'),('2006-12-03 05:14:08','PDE alpha online','PDE php mysql','After hours of grueling debugging, an early version of the PDE is up and running! It accepts four variables (targettable, targetvar, targetdef, pagekind) from POST input. The first three define the data set to be operated on, and the fourth targets an entry within the global page definition database. PDE retrieves a header, footer, and tagtable pointer from the global page database. The tagtable is a unique database created for each page template that associates a given database variable with a particular set of enclosing html tags. After echoing the header, the PDE proceeds into its main print loop, which is a nested while statement that steps through the matching database arrays on the exterior and steps through the html tags with associated variables on the interior. Once the two loops conclude, the footer is printed and PDE terminates.','2006-12-02 19:15:00','sendtopde.htm','ongoing'),('2006-12-02 21:15:32','It was PDE madness','PDE php mysql demo','Somewhat shockingly, the core PDE display engine now seems to be running smoothly, if given proper input. The basic execution pattern is almost infinitely flexible, because both page content and page formatting are completely database driven. The PDE does need work on error handling and security, so the core module isn\\\'t finished, but the real work now is providing a set of efficient tools to create the datasets that PDE uses. Currently, the forms and tags databases have to be created in the mysql command line terminal. Allowing creation and editing of those databases from within the browser is a big step towards Shiva 1.0.','','','done'),('2006-12-02 21:46:04','Experimental forms and tags','interface mysql','A few primitive PDE output templates for the beta database have been created. A decent header and footer now exists, at least. Current project is to create at least one solid set of format tags then start working on the html-powered database editor. mysql seems to save in non-sequential order when overwriting previously erased rows, which is adding some funkiness to my early attempts.','','headertemp.htm','ongoing'),('2006-12-03 01:55:15','betaluxe pagetype created','interface mysql','Pure beta technology has finally duplicated and surpassed all features of the alpha codebase. Betaluxe is a sophisticated page layout available from sendtopde.htm and implemented entirely via PDE database files. The basic html formatting was created in NANO and debugged with firefox. Once the page design was finalized, it was converted to INSERT format within nano and then copypastad to the mysql command line. This will be the last templating project done manually, hopefully. Note that the basic layout references the alpha-tech full log list still linked from index.php.','2006-12-02 06:36:41','betapde2.loadsql\r\nbetapde2.src','done'),('2006-12-03 03:10:56','Logroller alpha is live','interface logroller html','With the addition of a few usability tweaks such as locking into beta variables with menus, the Logroller database browser alpha is active. Logroller can find all database entries containing a matching string in any of the beta database fields, and display the results in one of several different formats. Logroller at this point is just a form to provide the 4 basic variables to launch the PDE. The key to Logroller development is creating canned inputs to PDE to enable greater and greater control for the user.','','design files have early Logroller material','ongoing'),('2006-12-03 20:31:44','Hardware change','hardware test','Made a few changes to the base hardware the server is running on. This is a test via remote proxy to make sure that everything is still functioning as before. So far I haven\\\'t noticed any anomalies. Linux seems happy. Haven\\\'t investigated and compared system logs from pre and post change, which would be a good project. My assault on php and mysql has left my system base exploration behind by a bit, although I do file maintenance and all my editing in the shell still, of course.','','','done'),('2006-12-04 09:45:58','Setup gNewSense server','hardware backup','Created a new web server installation on fresh hardware using the gNewSense distriibution and Synaptic package manager. Used mysql dump files to recreate databases (users and passwords needed to be reset) and a gzipped tarball of the web directory to restore the pages and scripts. Tested full post functionality in beta with external loopback. Very happy to note that backup system is capable of replicating content and dynamics on an external host. Compatibility requirements are apache 2 mysql 5 php 5. Since gNewSense and its repositories are 100% free I should really support it as my main OS I suppose. ','','','done'),('2006-12-04 20:18:47','system time bug','date and timestamp','From looking at the complete beta database so far, I notice that the timestamps are impossible. Almost all the changes are on 12-02. I\\\'m pretty certain this is a consequence of a glitch of my system\\\'s time handling and updating on the global level. It\\\'s nothing major, but until this bug is resolved or a workaround is implemented, all timestamps should be taken dipped in salt.','all the 12-02 timestamps','','bug'),('2006-12-04 22:54:18','Tag creator alpha online','mysql sawmill','A tool to add new html tags to a tagtable is now online. It has not been fully debugged, and will probably require a slight upgrade to PDE to function perfectly. Regardless, it is now possible to create new HTML content from within the beta pages themselves. Security and the creation of intelligent metatools is becoming an increasing priority in beta development as more powerful functionality comes online. ','','tagmaker.htm','ongoing'),('2006-12-04 23:27:11','PDE php mysql data integration','PDE php mysql debug','Edited the main PDE display module to handle data preprocessed from POST by php prior to printing. Applied STRIPSLASHES to the open and close tags from the selected tagtable. Since I am currently using magicquotes and no other string handling on format data insertion, just stripping the backslashes seems to work fine to make data portable from user to eventual output in a transparent way.','','pdestrip.php','done'),('2006-12-05 03:27:20','Beta is now a functioning beta','beta shiva sawmill','The sawmill feature set is mostly implemented in rough form. A utility to create new databases based on a set of stored templates has been added, and a utility to add new form definitions to the form definition table has also been added. In combination with the existing tag set editor, entirely new formats (which are general enough to include almost any type of content) can be created and made active. All of the basic functions of the initial beta design have now been implemented. The final feature to be added before beta reaches 1.0 is an editor for the new blank page database template.','','makeform.htm \r\n maketable.htm','ongoing'),('2006-12-05 05:21:50','Generic page editor online','sawmill','The final component of the beta design set, a generic page editor, is now active. The template is simply 8 varchar fields up to 1000 characters in each, with the following names: pagename, bodya, bodyb, bodyc, bodyd, bodye, bodyf, meta. This template is one of the two currently active options from the table creator. A full test of table creation, content creation, form creation, and tagset creation has been run successfully. ','','gpedit.htm','done'),('2006-12-05 09:31:28','Beta v1.0 testing and expansion','beta interface PDE','Beta 1.0 is fully operational and continuously expanding its functions. A demonstration of current peak performance is the two new hotlinks added to the beta index page. Both use a predefined request to PDE to generate a page for the viewer. One is a single-record explanation of beta\\\'s components from the gpages+betagpform content branch, the other is a nicely templated dump of the full beta change log via beta+betaluxe. The beta 1.0 announcement and explanation page is the best example so far of fully bootstrapped content. The next stage is to convert all the html data entry forms that launch the php components into PDE format themselves. Every document that is .htm can be transferred to a database and given a hardcoded PDE identifier.','','','ongoing'),('2006-12-05 11:52:01','Dynamic PDE hot link collection','PDE interface links','There is now a dynamic collection of PDE powered links available. It is best viewed as gpages-pagename-search-searchform . Additional links will be added continuously via the searchtags database. Best added in tabled pairs.','','','ongoing'),('2006-12-05 14:09:23','Beta data entry form in PDE','test debug PDE log','Testing a first, rough version of a PDE powered beta data entry form. Still a few bugs in the system, as they say. I failed to think through my formatting and this form is just as ugly as the original, possibly worse. Still, if it works, it will be the first of the older crucial component forms to be ported into PDE. ','','','ongoing'),('2006-12-05 17:22:40','pde compliant templates','PDE mysql interface','Need to bring all templates, backported pages, etc, into the PDE framework. The goal is to have no links to non-PDE pages apart from resource creation. This transitional period is a bit of a brainstrain because half the resources correctly hotlink into PDE and the other half don\\\'t. Even so, the bootstrap process is proceeding quite rapidly.','reference entry system needs to plugin to PDE.','','ongoing'),('2006-12-06 17:21:40','Everybody must get PDE','PDE mysql interface','The current project is to bring all the beta viewing and editing pages fully within the PDE system. An important first step was creating a footer whose PDE hotlinks reference pages which are themselves compliant! Kind of a self-referential thing. I confess that I am still just starting to learn what my own system is capable of, so occasionally I spend a long time thinking about how to do something only to realize that it is completely simple and trivial. One issue with the footer is that the built in hotlink to this data entry page leads to a page with absolutely abysmal formatting.','','','ongoing'),('2006-12-06 19:00:41','Fixed beta entry form','interface mysql','used Drop Table to get rid of old bdataentrytags table and create a new one. Did it the ultra-expedient way of just pasting in a decent form as a single tag. A shortcut like that fails to leverage the power of PDE but is still a great improvement on a legacy HTML page. I think a similar approach to get working versions of the other database editor utilities is completely appropriate. One component of future upgrades that hasn\\\'t been implemented yet is database editing from within the HTML. Partly for security reasons, deleting rows and tables is done strictly from the mysql command line so far.','','','done'),('2006-12-06 20:14:36','All data creation now in PDE','sawmill PDE mysql','All data types can now be created entirely within the PDE system, and have prepackaged activators on the hotlinks page. The entire system is now close to 100% PDE powered, the only exceptions are the archaic footer links on the .php datawriting pages. The next log entry should record that they have been replaced with a standard template using hotlinks.','','','done'),('2006-12-06 20:40:57','First test of new php footer','test php PDE','Created a general utility footer for all php pages. Has hotlinks for all editing features, on top of normal hotlink footer. This is first test post, may have to make a few tweaks.','','','ongoing'),('2006-12-06 21:11:34','','','','','',''),('2006-12-06 23:46:33','Turbo Hotlink engine','Shiva PDE interface','The Turbo Hotlink engine is a breakthrough in the site\\\'s ability to easily create dynamic content. Turbo Hotlink combines a generic page database with a set of wrapper tags that turn the page data into a PDE query embedded in a labeled button. In other words, it creates a new hotlink button based on user input of just the four PDE variables. It is itself hotlinked from the old hotlink page, and it or a slightly upgraded version will undoubtedly become a key feature and component of the site. This is the first feature that qualifies as a future element of Shiva. The next step is to create a custom wrapper for the generic page entry formdata.','','','done'),('2006-12-07 02:24:06','Titles, turbolinks, templates and more','shiva interface','Created a new page footer autotemplate with turbolinks features. There is finally enough infrastructure developed that the bootstrap power of sawmill+PDE is really paying off. Another nice feature that was very easy to implement is the new titleform viewer, available from the turbolinks page. One form is enough to spit out a well-formatted list of record titles or pagenames from EITHER the beta or the gpages databases. Whichever variable isn\\\'t used just generates an empty spacer table. With all these new capabilities coming on line, its time to create a new index.php page, and also work on designing whatever the shiva version of logroller will be. Logroller was more or less abandoned in alpha as the content generation power of the site started to increase exponentially, while the logroller design was fundamentally linear.','','','ongoing'),('2006-12-07 04:14:07','New index page','html interface','Created entirely new front index page using turbolinks footer as an action template and a new splash screen created in GIMP. Now the entire active beta site uses PDE to index, define, and generate all content. Every page that doesn\\\'t directly insert data into a table is not truly a static page, but is procedurally generated every time it is requested.','','index.php','done'),('2006-12-07 07:34:59','Beta reaches v2.0 is stable and complete','beta shiva interface','The beta version of this website has surpassed its initial design parameters and should now be viewed as a successful project. The final upgrades that promoted the version were completion of the template upgrades to turbolinks and the creation of the first admin tool, a simple dump of the pagename and tagindex columns of the testform database. At this point the capacities of the beta system are still largely unexplored.','','milestone beta completion','done'),('2006-12-07 11:05:39','Graphic file size reduction','test remote interface','Testing beta 2.0 via external proxy shows basic graphic overhead very excessive for what is supposed to be a fast and light website. File size investigation showed that jpegs were needlessly large and could be heavily reduced in size without much visual penalty. Database load still seems to be negligible.','','','done'),('2006-12-07 12:14:05','Added PDE location ','PDE interface','The PDE finally gets an update for the first time since rollout! Very simple, but useful: a global location indicator table now floats below the page footer at all times. This has no effect at all on the main display loop, so it\\\'s a pure bonus helpful navigation aid.','','','done'),('2006-12-08 15:10:31','Menu based PDE browser','PDE interface','A menu-based browser for various types of PDE-powered search has been added, based on the old alpha logroller page. It was designed for access to multi-record databases, so it doesn\\\'t connect to the \\\'canned\\\' data entry databases. It seems to work well, but its a bit cumbersome because the options for one database don\\\'t fit with another, so all the menus are full of pointless options, relative to what you are actually doing. An upgraded version should create a separate menu for each target search database. A nice design feature is that the menu is actually laid out properly relative to a target database, with bodya-bodye providing the text labels that identify the search fields.','','gpages-meta-pdebrowserform1-menusearchform',''),('2006-12-08 16:47:55','Upgraded PDE search template link with menu','interface','Upgraded the PDE search form that is hotlinked from the standard turbolinks template by pasting in new tags that generate the recently created search menu. The standard available from anywhere open search now includes the quick menu down at the bottom of the page. A goal for the next level of shiva services is to create a framework that offers click-based content expansion with no typing required. The key is how to pass all the data around automatically, and the solution is to have a user-action database that tracks what the user is attempting and makes the data available system-wide.','','','done'),('2006-12-08 17:05:27','Test of php format edit','php interface test','Attempting to modify page header template on php data editing work pages to better match overall current site style. This is a test post to see if the new version is suitable to be applied to the other php action pages.','','','ongoing'),('2006-12-08 21:18:46','Hotlink fruit bug','tubolink debug remote','Attempted to add new hotlink remotely - first worked, vahlen\\\'s favorites, but the second attempt to link to a picture page collection broke. It seems to be present in the slpages database, but does not appear via the turbolink button. Page reloading does not seem to fix the issue. Investigation ongoing.','','','bug'),('2006-12-08 22:22:05','Hotlinks bug identified','hotlinks template error','Identified cause of the fruit batch bug. The hotlink name was fruit batch, which does not contain the letter e. The templated search query is based off of pagename with e. This is a poor method and is replicated an unfortunate number of times on the level of the page templates. It can however be partly regarded as a feature, as non e hotlinks are autofiltered.','','','ongoing'),('2006-12-09 00:06:48','Remote functions full test','remote shiva test','Subjected the current (12-08) system to full remote testing. Pages were created, edited, hotlinks generated, etc. Everything functioned correctly, although a few undocumented features were discovered, so to speak. The site was fast and responsive through a normal residential internet connection. The question of potential variable corruption with multiple simultaneous users remains, however. I should research some of those technicalities.','zoellners fruits hotlink, etc.','','done'),('2006-12-09 02:06:36','Metasearch powered hotlinks added','meta turbolinks shiva bootstrap','The second and more powerful layer of turbolink functionality is coming online. Once a large collection of turbolinks has been generated, the turbolink database itself can be the target of a search with link generation. Once a search for all the links that use the beta database is done, that search can be saved as a new hotlink, which provides a quick link to an assortment of related functions. The most recent addition is the most efficient tool of all - it provides a link to all the hotlinks that are themselves metasearches! Despite the dizzying level of abstraction, the way it works out in practice is to provide one-click access to the most powerful collection of links available. This hotlink has been honored with large size formatting and red text. The plan is to abstract it into a stand alone entity and incorporate it into many pages.','slpages bodya slpages slform','','done'),('2006-12-09 04:31:15','plan update added','plan shiva','Updated the global plan with new focus. Successful completion of the beta version of the website provides a foundation for development of the Shiva software project. The next phase is creating a sophisticated set of design tools to test and debug functionality in a modular way. Those tools will themselves of course be the starting place for expanded functionality! True Shiva development begins with the design document for PDE 2.0. ','gpages pagename plan gpsimpleform','','done'),('2006-12-09 07:12:08','New format custom graphics PDE test','beta gpages interface PDE ','Continuing to test the power of the PDE, created a new page output template with a custom background graphic made in GIMP that is designed for table-tiling. To some extent this is reinventing the wheel, because HTML can tile background graphics on its own, but these are still simple tests. PDE could produce background graphic patterns of near-fractal complexity with some fairly simple but unusual database structures, but mysql might get fried if subjected to a few hundred thousand queries just to build a single page! One demonstration feature though that is way beyond standard HTML is the auto-picture fill in the completion status in betasmudgeform. There is a separate picture for done, ongoing, and bug which is automatically applied.','betasmudgeform gpsmudgeform','','done'),('2006-12-09 09:55:17','Test+expand current Shiva prototype two weeks','shiva design plan beta','In an effort to provide more information to optimize the design of Shiva, two weeks of testing and expansion of the current site architecture seems advisable. A few new features can be added, but the focus should be on testing the limits of the current stable framework. One priority that has been neglected is trying to protect the stability and security of the system. The current beta is well protected within the website, but once a user is inside the beta system, a malicious or careless user could wreak havoc with the current string handling processes. PHP is capable of handling the input and output in a secure and reliable manner, I just need to write custom routines to do so. For shiva, independent levels of privileges for different users is a must. Additionally, the capacity of the system to make use of very peculiar data sets should be explored. The PDE search system is capable of producing some extremely abnormal HTML output. Part of the long-term goals for Shiva is to leverage the power of recursion to do things with HTML that would ordinarily be completely impossible.','','','ongoing'),('2006-12-09 10:42:54','Assimilated archive of alpha quicklog and betalog','archive quicklog betalog alpha','Added fast and easy templates in neon style to view the old log databases from the alpha section of the site. The only information not completely assimilated into beta is the old HTML status pages that have been superseded anyway. At this point, alpha is really just an additional security layer for beta. There\\\'s no real reason to import the rest of the old data. Once beta receives a few security upgrades, it can become the \\\'front page\\\' of the site.','quicklog entry _ quickform\r\nbetalog entry _ quickform','','done'),('2006-12-09 10:47:36','Menu browser outdated and useless','pde interface menu browser','The current menu browser is hopelessly outdated. Half of its templates were broken tests to begin with, and it is missing the newer, better templates. A self-updating menu browser is probably possible with current technology and would be a good step towards a true shiva system, but its worth it to spend a few minutes creating a new paste-in solution for the menu that exists now.','','','bug'),('2006-12-09 11:49:14','Updated menu browser','pde interface menu browser shiva design','Edited the menu browser to include newer pageforms and the archive databases, and removed a broken gpages format. While clearing old data and inserting new, I remembered to make a design note about Shiva: the shivaport feature for transporting and attaching data structures. While using shiva, any element on any page you see should be able to be grabbed, labeled, and then attached in any manner to other resources. This is an important application of the Shiva global abstraction principle.','pdexform','','done'),('2006-12-09 14:44:24','Multitable tag package proof of concept','mysql shiva design','Created whiteform/whitetags, the first full scale demonstration of creating a tagset that will work on any existing database. Whitetags simply attaches a paragraph tag to almost every variable used by any database and prints it all on a solid white background. Because html doesn\\\'t parse multiple paragraph tags as line breaks, all the dead p tags do nothing and all tables output properly formatted.','','','done'),('2006-12-10 12:51:03','Content additions','gpages info instructions content','Most work for the past day or so has been on adding additional content, usually using gpages forms. Several new pages explaining various aspects of the Shiva system have been added, and a set of instructions for beginners. Most of these documents can be found from the system info metalink collection. This content creation is part of the two week use burn-in and initial shiva design period that has been initiated. A lot of experimentation has been done with embedding simple formatting tags inside the content databases. This works fine, but can cause poor results across multiple templates. In parcticular, the 4 panel gpages template tends to look awful with the text that looks best in neon format.','info pages hotlinks','','done'),('2006-12-10 13:22:18','Beta entries by date hotlinks','beta hotlinks meta search interface','Created links to all beta entries sorted by date, and a meta-search button to access the date entry links as a single entity. As all the databases grow larger, designing metasearches, and entering data with appropriate titles and metatags, becomes more important. Also, ALL DATABASES need a timestamp field and a consistent name/title field label. A single set of form tags should be able to print out title and timestamp across all databases without tricks.','info pages hotlinks','','done'),('2006-12-10 15:54:38','Independent remote system setup','shivaport test remote install bash','By emailing a gzipped tarball and a mysqldump, a completely independent remote version of the current shiva system and its associated databases has been setup. There may be a few issues with file permissions, but the basic architecture is clearly stable and portable. Next step is to create a bash script that performs the installation procedure automatically. It will be interesting to see how the codebase evolves in an independent installation.','','www.mulepower.com','done'),('2006-12-10 12:17:56','Shiva design center online','shiva design hotlinks','Shiva design is currently being done in a series of gpages records all with pagename beginning shiva design information. They are all hotlinked and a meta hotlink has been added. Initial design work seems strong, although there is a risk of overcomplication and features becoming too broad and ambitious to be practical. The strongest design elements are the idea of universal abstractability and making PDE fully recursive via a PDE metacontrol layer that can create pde processes freely. These two principles, combined with properly written database editing calls and control loops, should create a very strong foundation.','gpages pagename shiva_design_info gpsimpleform','','ongoing'),('2006-12-10 22:26:27','shiva prototype content updater design','shiva mysql php design','Content editing and updating will be a major part of shiva, and some of that functionality needs to be prototyped within the beta codebase. The fundamental concept is to use the PDE query engine but with additional variables and UPDATE statements rather than SELECT statements. This will require creating an independent functional backup because the havoc that buggy global updating with recursive routines could cause is infinite. Possibly transfinite. Creating the independent functional test system is also excellent bash and sysadmin training. If a global content updater can be smoothly and safely integrated in beta functionality, that would be a good time to do a global update and upgrade the header and footer engine to use the databases as well, which is relatively trivial.','','','ongoing'),('2006-12-10 17:20:20','Mysql Admin monitoring','mysql admin','Experimenting with monitoring MySQL status with the GUI mysql-admin tool. This will become important to determine if the shiva recursive query design is in fact a feasible way to generate and view content, or if it is simply too resource intensive to be anything more than interesting from a theoretical perspective. Currently logged into mysql-admin as web user, which limits what I can do and hopefully what I can mess up! Not making changes, just trying to study the available information.','','','ongoing'),('2006-12-11 08:47:58','prototype pde recursive mod design','pde shiva design','This is an outline of a test prototype mod for PDE to enable recursivity. Here\\\'s an outline: first, define the current PDE loop as a function, and test a code version that calls the function in place of the explicit loop. Next, perform an EXPLODE if the varname is meta and if the initial explode string array is s: , call the PDE function with arguments derived from the rest of the explode array cells. If this works properly, we will be able to drop in any PDE page as an element within another page. ','','','ongoing'),('2006-12-11 19:29:55','Recursive PDE design questions','shiva pde design','It occurs to me that the handling of headers and footers in a recursive pde context needs some special treatment. It would be very rare to actually want more than one header and footer per page, so the embedded PDE should probably not display the header and foot associated with its form. This means the primary PDE loop should be kept slightly distinct, code-wise, from the function-call recursive PDE. This actually makes programming quite a bit easier, I think.','','','ongoing'),('2006-12-11 22:27:19','Recursive PDE testing','PDE recursive shiva test','The new recursive PDE seems to be functioning correctly, following some simple debugging. A minor delay occured when I deleted my design files accidentally in the mysql command line and had to recreate them with copy+paste. Need to watch out for that! That reminds me...BACKUP!!!!! Anyway, the main point is that the recursive PDE is actually working like a charm. Need to test second level recursion and tons of other stuff though. Current recursion condition is tag xshivax in a variable field named meta','','','ongoing'),('2006-12-11 22:30:36','Recursive PDE online!!!!!','shiva PDE recursive','The first test of the new recursive PDE engine WORKED! Much testing and research needs to be done, but the first mission-critical upgrade to Shiva functionality has been successful. This log entry is being completed out of order. Got distracted by miscellaneous testing, debugging, and shooting myself in the foot in a separate fashion.','','','done'),('2006-12-11 23:50:01','Recursive PDE testing update','shiva pde recursive','The recursive PDE is working better than I would have dared hope, but I need to be careful. The pages as they are set up are now were not created with recursive search possibilities in mind and I\\\'ve already realized I made some mistakes with earlier kludges that will make it hard to leverage the power of recursion on the site as is. A few simple tests have showed me that the new PDE has truly frightening power. It can generate an absurd quantity of database queries almost instantly, and the question of just how much I can afford to thrash comes into play. ','','','ongoing'),('2006-12-12 05:05:48','PDE 2.0 recursive beta now live','pde 2.0 shiva','A seemingly stable and useful version of a recursion-enabled PDE is now active. In its current form, when a variable named meta appears, it checks to see if it begins with the xshivax tag and if so, calls a pde subprocess using the subsequent four tokens (delimited by @) to display the given dataset. The same meta-triggered subprocess can be triggered again from within the child PDE loop. I need to create some test pages and find out just how badly its thrashing mysql to do this!','','','ongoing'),('2006-12-12 08:20:47','Gpages with hotlinks via recursive pde','hotlinks pde shiva gpages interface','In an important test of the recursive PDE, gpages with working hotlink buttons have been created simply by using the correct shiva string in the meta field. This is the kind of advanced automation of meta-functionality that shiva is designed to facilitate. Now that the recursive engine is online, entirely new methods of page creation and formatting become possible.','gpages meta @slform gpsimpleform','','done'),('2006-12-12 10:27:29','Demo of recursive page build hotlinked','pde 2.0 demo hotlink','Pages can now be constructed on the level of pure shiva meta-abstraction. By creating a series of pages with nothing but a recursive metafield, any collection of resources in any format can be grouped together. Check out gpages@pagename@recursivemetabuild@gpsimpleform for a demonstration. A fully recursive PDE means that one of the central goals of shiva, that of Universal Abstraction, is mostly achieved in one of the core systems. It should be noted in general that the shiva prototype has very advanced data viewing capabilities, but the basic content creation engine, the INSERT programs, do not yet incorporate any recursive technology.','gpages@pagename@recursivemetabuild@gpsimpleform','','done'),('2006-12-12 21:19:55','Wrapping metatags problems','pde 2.0 bug','As was more or less expected, doubly recursive PDE functions may work slightly differently than expected due to variable over-write. During development of a multi-column view for hotlinks, attempted to wrap tags around recursively generated content by simply attaching the open and close tags to a recursive meta variable. However, the function call obliterates the values of the opentag and closetag variables before they are printed.','','','bug'),('2006-12-12 21:48:31','PDE recursion handling improved','pde 2.0 bug fix','Realized that another contributor to the recursion tagging problem was extraneous data echos caused by not trapping the echo statement following recursion. As I write this, I\\\'m also realizing that my solution was needlessly complicated and the solution was staring me in the face inside my IF statment. Be that as it may, and while writing this I implemented another bug fix, things are now working a bit better. The multicolumn link view is finally online.','','','done'),('2006-12-12 23:10:17','notes on recursivemetabuild9','pde recursive demo','This page represents the most sophisticated use of recursion yet, altho it is a bit of a hack. The prototype technologies and templates werent designed for use in a true shiva deployment. Recursivemetabuild9 uses multiple layers of recursion to build a two column turbolink list. The process begins with the meta reference gpages@pagename@recurlinkcolview@semiblankform. This search returns two datasets, recurlinkcolview1 and 2. Each of these pages contains a meta tag for gpages@pagename@linkcolumnview1/2@meta2colform/+z, respectively. Linkcolumnview1 contains the metatag slpages@bodya@beta@freelinkform, and 2 contains a reference to a different set of turbolinks. The form pages meta2colform/+z and their associated tag sets are nothing more than a tr td /td td /td /tr format. ','gpages@pagename@recursivemetabuild9@gpsimpleform','','done'),('2006-12-12 23:55:10','Standard hotlinks use bad criteria','pde recursive template bug','The standard hotlinks which are embedded into the prototype site for data entry use a very poor search criteria to generate their pages. All they are trying to do is find a gpage form which is completely blank, but they do it by searching the meta field for arbitrary text which is associated with a semi-blank record. This has already been a source of glitchiness and bugs which result only from this poor choice of default method. Shiva needs to have some sort of internal logic to help create logical and useful relationships between data fields and search criteria. ','','','bug'),('2006-12-13 02:58:45','remote recursion usage monitoring','remote test recursive pde','Using mysql-admin to watch traffic load as I browse the site remotely, focusing on recursive pages. Site seems fast and responsive even with recursive pages, with jpeg load time much more significant than data generation, it seems.','','','done'),('2006-12-13 12:23:08','need to make simpler forms','recursive pde interface','The current forms are mostly too complex to test more modular recursive pagedata structures. A flexible library of simple form/tags should be developed, and a gpages metabuilder data entry wrapper to enable faster creation of xshivax focused page series. ','','','ongoing'),('2006-12-13 17:01:11','Recursion test pages','recursive pde','Created a series of recursion test pages, recurtest1 through recurtest123456789. Each page uses a successively less inclusive search. The consequence is a cascade of pages, where the long string receives the most calls and the shorter pages less. This type of build could produce, in effect, a self-wrapping type of behavior if it were properly configured.','@gpages@pagename@recurtest1@semiblankform','','done'),('2006-12-14 03:42:14','Created formpages gpstyle database','mysql shiva recursive','The gpages database is becoming seriously overloaded with different types of pages. A new gp template database called formpages has been added to store data that is mostly directed towards recursive output styling. This is a good place to store all kinds of data and recursion links that are not intended to be directly viewed as content.','','','done'),('2006-12-13 22:34:52','Fedora LAMP setup bugs','linux portability testing ','Working towards creating the first non-debian implementation of the shiva system. This is a trivial task because shiva runs entirely off AMP services so even windows should be no problem. However, the version of the apache HTTPD server that was installed by my Fedora Core 5 dvd is improperly configured. The names of the modules in the conf file are slightly different than the modules that actually exist. Thank you, Debian/Synaptic/Ubuntu for such amazing package management and configuration! Getting LAMP working on a misconfigured system is perfect training, especially given Fedora\\\'s relationship to RHEL.','','External Fedora installation','bug'),('2006-12-14 14:59:03','Updated pde tech info and shiva design','info pde shiva','New information resources on the recursive PDE 2 and design for shiva implementation have been added. To implement the next stage of PDE evolution requires a more fundamantal set of changes to it and the supporting database structure, so this is delayed until the post-burn in testing period currently underway completes. Instead, code development and testing should move to upgrading the data and table editing and creation tools, which are in a far more primitive state than the PDE. A general purpose table format viewer and the ability to delete single broken entries is the first priority.','info pages','','ongoing'),('2006-12-15 00:53:15','Guided system internals exploration','bash linux','The current project focus is to broaden my knowledge of system fundamentals and standard application practice before diving into full scale shiva code development. A more thorough investigation of system fundamentals is being undertaken via the BASH shell and an external guide resource. This knowledge will be applied towards altering a fedora core 5 installation to a current LAMP install and implementing a working copy of this website there. Current status of that machine is: apache configuration file incorrectly targets modules. Also, it uses older versions of the applications so compatibility is not guaranteed.','','','ongoing'),('2006-12-15 07:56:10','Prototype renaming','rename prototype system','A quick google search revealed several tech companies are already competing for the Shiva name for various products and services. Time to find something I can really use. Rupam Aisvaram is tempting but probably not a good idea. (Sanskrit for Universal Form).','','','bug'),('2006-12-16 09:55:30','Development plan: Emacs for coding','coding environment emacs','As an effort to upgrade to a more sophisticated coding environment, Emacs will be the editor used to create the code for the next version. Emacs was successfully installed with apt-get from the commmand line, and now I just need to learn how to use it efficiently. I like it so far, for many reasons.','','gnuproject/emacs','ongoing'),('2006-12-16 13:29:12','Reported full prototype system to gNewSense','global system change','Decided to shift to gNewSense distribution, a FSF sponsored Ubuntu derivative, for ideological reasons. I believe I have successfully reconfigured my system to duplicate full functionality, including security, after a bit of flakiness. This goes along with the name change to FREESPECT. (Free Recursive Extensible Enhaced Sql Php Environment Creation Tools). My new IP is 66.22.24.166 on this machine.','','FSF.org\r\nnew IP: 66.22.24.166','done'),('2006-12-16 14:28:08','gNewSense FREESPECT install stable','system test','The transported installation has been tested for functionality via remote proxy, so all systems are go. We now have a completely free system as the base reference platform, which is a Good Thing. System security has been verified for Apache. The only questionable element is how much the GNOME desktop will drag performance compared with XFCE.','','','done'),('2006-12-16 18:33:32','Changed header art file','interface freespect','Used The GIMP to create a new header picture now that the name change seems solid. Still need to change the index page and some miscellaneous other stuff. Maybe a good first test of some emacs editing.','','','ongoing'),('2006-12-16 21:33:19','C hello world and a gnu gallery','c hello world gallery gnu','Executed a Hello World C program written with emacs and compiled with the gcc. I\\\'ve realized that C is the final piece of the puzzle required to master a LAMP system from top to bottom. C is the language of both the kernel and the majority of application packages, as well as being the focus of the GNU tools. (None of this is a coincidence, of course!) Increasing study has shown that the GNU core utilities and tools are the true heart of the system. The just-added picture gallery has a rather strong GNU focus.','gpages@pagename@Freespect + gnewsense screenshot@jpegform','','done'),('2006-12-16 22:12:11','GPL cut and paste job illegal','GPL license','I attempted to cut and paste a copy of the GPL into the site but ended up destroying it in numerous ways. It is currently a completely corrupt and unusable copy which makes it illegal to distribute. It must be destroyed and fixed before distribution of any kind. GPL 2 is a beautiful thing, I feel ashamed of what I accidentally did to it.','','','bug'),('2006-12-17 01:35:46','Added Xfce session option','system environment gnewsense','Used Synaptic to install Xfce so I don\\\'t give up the option to use the lighter desktop environment. More of the GNOME services are available in Xfce in this installation than were in my older Xubuntu install, it seems that most stuff got ported over. I had to rebuild the desktop panels but that was no problem. Actually, my new setup is ultra efficient. This gNewSense installation is definitely my favorite computer setup I\\\'ve ever used. It\\\'s free software only and works better than everything else!','','','done'),('2006-12-17 01:41:28','Kernel upgrade, Xfce mouse issues','gNewSense system','Xfce seems to have some of the mouse response issues I\\\'ve experienced occasionally as glitches, usually in the more intensive environments. Upgraded to 686 kernel which should fit my machine a bit better. Need to test that enviornment further, so changing session.','','','ongoing'),('2006-12-17 02:11:00','gNewSense Xfce on 686 kernel OK so far','system environment gnewsense','After the kernel update Xfce seems to have a more stable relationship with the mouse. RAM checks seem to indicate, interestingly, that this installation has lower overhead than the Xubuntu native, despite the additional GNOME services. Just started Open Office in another workspace and then the GIMP and started doing a bunch of filters. Everything still is totally awesome, the GIMP is tearing through scripts like they were nothing.','','','done'),('2006-12-17 02:22:54','Irony','Xfce mouse glitches','Lost mouse service after reversing complex GIMP transformation in Xfce. For whatever reason the newer version of Xfce seems a bit more unstable. The main GNOME desktop environment has stayed stable so hopefully that will continue. Probably I should be training in GNOME for pragmatic reasons anyway. Either that, or pure non-gui debian.','','','bug'),('2006-12-17 07:28:00','Debian incompatibilities','distribution compatibility','The old version of Debian I just installed seems to have compatibility issues due to old versions of LAMP software. In particular, my databases are illegal due to different variable size limits in mysql 4.0 and I also got a php error when trying to connect to mysql. Gonna take some work to get anything going! That server also has Postgre SQL and mod-perl so perhaps I could experiment with an alternate software build.','','','ongoing'),('2006-12-18 15:11:46','Freedom','gNewSense meta','Moving to the gNewSense platform and starting to investigate more of the history of GNU/Linux has led me to a new focus on the importance of the Free Software principles to this project. FREESPECT has a metagoal for its design: to make it easier to create and use LAMP powered web sites. The target audience is desktop users, small business, and hobbyists.','','','ongoing'),('2006-12-18 21:44:14','Verified system freedom','free software vrms verification','Installed the Virtual RMS to check for non-free software. It gave my gNewSense system a completely clean bill of health! There was one false positive on a font but I checked the font homepage and discovered it was released under an FSF approved free font license so its actually completely kosher. I have to say its a very exhilirating experience to be running a complete FREE computer under my own control for the very first time in my life!','','','done'),('2006-12-19 04:00:07','New router, external access down','Server global status','The server\\\'s local network and connection to the internet has been changed, and it no longer connects to the internet successfully. Debugging of network routing begins now. Localhost services are still fine, but both outgoing and incoming web access is flailing.','','','bug'),('2006-12-19 22:53:16','Network Debug Successful!','network debug','Found a simple fix to restore the new network to a compatible configuration with the old network. All I needed to do was completely lobotomize my router: turn it into a transparent bridge, so all it does is put an ethernet plug onto the DSL service. Internet services have been restored to the server. Last test is to log into the site via proxy but I\\\'m thinking I might skip it and actually firewall off port 80 for the time being. All my tests so far have established that local functionality is correctly mirrored for remote users, so there isn\\\'t much reason to run what is really the same test over and over again.','','','done'),('2006-12-20 02:36:20','recovered router access','network debug','After an insane google search quest, I managed to adapt the information gathered from several different sources to regain access to my router if needed. The steps are: change the IP address of the network server to 192.168.0.5 and the subnet mask to 255.255.255.0, then visit the routers home address. To return to normal network service, reset the values and use the network setup assistant program if necessary.','','','done'),('2006-12-20 20:50:44','Convert router to full computer?','system network router','In the course of researching my new network hardware setup, I made an absolutely fascinating discovery: my new router is in fact an entirely self-sufficient Linux box with some customizations to facilitate easy network administration. It should be possible to access the router as an entirely independent linux setup, and customize the built in FLASH roms. This would make a fascinating project, but experimenting on the active network interface might be a poor idea.','','','ongoing'),('2006-12-22 04:09:53','Freespect plan: Interactive GPL as first test app','freespect plan','Because the GPL is so important, the first implementation of the full Freespect system should be to create a version of the GPL that demonstrates the systems capacities. In particular, the relationship between particular license clauses and the four freedoms should be demonstrated via interactive hyperlinks. The goal is to provide a GPL study tool that can dynamically interweave the source code of the license with an explanation of it, and create customized links and connections between various elements of the data and context.','','','ongoing'),('2006-12-22 21:51:19','Hardware platform test','system hardware','Tested a different hardware configuration but was unhappy with the performance. Apparently the latest iteration of my standard hardware would induce instabilities, so I am currently using the older version. Sent customer feedback to production team.','','','done'),('2006-12-24 04:43:44','Debian Etch Installation','system OS distro test','This is a debian etch testing installation that seems to be fully functional. VRMS reports a totally free installation so this seems like it should be as free as gNewSense. On the other hand, I\\\'ll have to be careful with the repositories! Since my hardware setup is so simple, I don\\\'t think any of the Forbidden Binary Drivers will have been installed surreptitiously.','','debian.org','done'),('2006-12-24 05:54:56','Debian Etch Install notes','Debian OS','This installation of Debian-Etch RC 1 was bootstrapped up from the Network install cd image. The most minimal possible option was chosen for the initial install. Basic functionality was established in the BASH shell, and step 1 was to apt-get install lynx to have text browsing facility in case troubleshooting info from the net was needed. Unfortunately it was not fully compatible with the yahoo mail web program. apt-get install firefox seemed to work but firefox couldnt get a graphic window up. A bit more apt-ing installed X11 and xorg. No luck and I decided to bite the bullet and go for GNOME. Long-time downloads and then a reboot, and a failure. Investigation of the logs is very revealing. The issue is fonts. I use apt to fetch the font packages and set them up, getting some strange folder existence errors in the process. I also run the xorg configure utility. After another reboot, GNOME successfully launches and we have a functional GUI. Synaptic gets Apache, MySQL, PHP, and the necessary libraries and mods to communicate. Apache is up and running, but it requires another reboot to get the communication between all the services functional with a copy of the freespect archives from the gNewSense machine.','','','done'),('2006-12-24 06:01:23','firewall up and running blocking all services','debian security','Debian is a great test-case for maximal security. Installed a debian approved GUI firewall and activated it, and all incoming service requests seem to be being blocked. Naturally, this does take this particular machine off-line as a remote test subject but remote functionality has been verified numerous times. Opening port 80 should be easy however if needed.','','','done'),('2006-12-25 02:32:03','Debian Etch Customization','OS upgrade','With a bit of work, the Debian Etch installation has definitely shaped up as the best distro I\\\'ve worked with. The depth of packages in the repository is just spectacular, and there seem to be a ton of powerful sysadmin packages. I ran Tiger to assess my system vulnerabilities and learned a lot. I\\\'ve installed a ton of relevant documentation, and just going through it will probably take weeks!','','','ongoing'),('2006-12-26 02:52:04','To do list','plan to do 12-25','Create shell scripts to automate Freespect transportationLearn how to create Debian packagesCreate a .deb version of FreespectConfigure and test remote serverInstall and configure Freespect in debianized form on remote machineDesign,test, and implement Freespect internal security system','','','ongoing'),('2006-12-30 00:38:58','Updated firmware','hardware test','Updated the firmware on my hardware. This is basically a hardware test post. The two-week testing and burn-in period is drawing to a close and the active development phase is about to begin again. We are approaching lock-in for final design spec, and the platform elements are all stabiliized. ','','','done'),('2007-01-01 20:08:10','2007 arrives, reactivate development','freespect development','The testing and design period for the Freespect prototype installation is officially over. The codebase is now unfrozen and the first step is to fork the existing code into a new directory. The target delivery system for the 1.0 version is a ready to go .deb package. The delivery timetable is: as soon as possible after the release of Debian Etch and GPL v3.','','','done'),('2007-01-07 23:47:57','reverted hardware','hardware test','After experiencing some stability issues and no improvements to performance, downgraded the hardware to a previous stable setup. This is a test post.','','','done'),('2007-01-09 04:01:09','stuff n stuff','visitor test','I dunno....I was here. In this spot. Back then, a second ago...well, now two seconds...thr...four seconds ago. Come back later, it\\\'ll be a really long time ago ^^','Sit on my face, and tell me that you love me........','yo mama\\\'s so fat....she...she um, she...was so fat.... shut up!! I had it! *runs off crying*','done'),('2007-01-12 12:01:10','Desktop and filesystem updates','partitions desktop KDE','Since Debian has been selected as the final distribution choice for main development and testing, I decided to implement a few efficiency upgrades. I added an additional drive partition and included it in fstab for automount at boot. Also, I decided to give KDE a second try and I\\\'m really glad I did, the Debian version seems way better than how it worked in Kubuntu. ','','','done'),('2007-01-18 14:09:54','troubleshooting win 98','random hardware','An almost lifeless win 98 system was turned over to me randomly, and it was the subject of an extensive troubleshooting and reconfiguration process. To summarize: the machine was crippled by an almost phantasmagoric assortment of adware and spyware, compounded by a bloated and highly fragmented file system. The fundamental culprit was Microsoft\\\'s disastrous strategy of trying to leverage Windows market share into control of the internet by integrating Internet Explorer very tightly with Windows. A mixture of different methods was used, but the basic procedure was a progression from GUI driven configuration changes and operations towards lower-level edits. The fundamental symptoms of the patient were a constantly thrashing hard drive and absolutely abominable response time opening or changing between windows. Entry continued in KWriter.','','','done'),('2007-02-04 17:44:47','Freespect moves to raw metal','system hardware test','a major transformation in the underlying system architecture is the switch to running in a non-virtualized context. The past several days have been spent configuring a budget pc to run Debian Etch, and now that the underlying system has been fully stabilized, installing Freespect completes the transfer process.','','','done'),('2007-02-09 00:04:52','first kernel compile','sid partition kernel','decided to test my mettle as a true linux geek by compiling and installing the latest kernel into my debian sid partition. You can\\\'t really get much more uber-geek than debian-unstable with a first release of a new kernel version. Unfortunately I cant claim I really knew what I was doing, and accidentlly skipped past even looking at several pages of configuration questions! Not surprisingly, networking was dysfunctional, even though i seemed to be able to bring up eth1 and get a dhcp request processed, and the DNS servers responded to my ping. A puzzle for another day, and nothing pressing -- but its still a huge through to actually compile and install a new kernel.','','kernel source repository here at the uw, whatever it is','done'),('2007-02-14 20:50:24','nvidia reinstall, sid poot, cron test','system notes','After an aptitude upgrade on the Etch partition, the 3d capabilities of the graphics subsystem stopped working, so I had to uninstall and reinstall the drivers, which repaired functionality. This inspired me to try to get beryl running on my sid partition, but this failed before it even got started. I did get the nvidia drivers installed, but synaptic/apt started behaving strangely and culminated in a hard system lock including locking the keyboard so hard it wouldnt even turn caps lock on and off, or bring up a terminal. sid partition\\\'s current status is abandoned, assumed broken. I will try repairing it at some later point. On a brighter note, I successfully created a script in cron.hourly that downloads the front page of the CNN website and stores it with a timestamp in a desktop news folder. My first cron/bash script!','','check out /etc/cron.daily/newsfetch and ~/Desktop/news','done'),('2007-02-20 09:01:20','hp hardware comes to life','hardware repair install','The long-dead HP p4 machine has returned to life! It has been partitioned and installed to triple boot Windows XP, Ubuntu Edgy, and Debian Etch. The proprietary ATI graphics drivers have been installed also. Everything seems to be in order, amazingly enough!.','','','done'),('2007-03-06 10:25:00','new network topology and router','network router','A new router has been added, the setup is currently being tested in preparation for configuring a more advanced LAN and network interface. It is a Linksys (cisco) brand home router with stateful packet inspection firewalling.','','','ongoing'),('2007-03-06 10:33:59','LAN testing','network router debug','This is a test to verify that the established LAN connection via router is functioning properly. This post is being made from the HP machine connecting to the AMD machine, from HP at 192.168.1.117 (router dhcp) to 192.168.1.100 (router dhcp). Had to use Firestarter to allow the connection, as it should be.','','','ongoing'),('2007-03-22 22:36:28','nfs, ssh, gpg and more','networking setup tests','Recent focus has been on setting up and configuring important networking services, such as NFS file sharing, ssh using public-key validation, and gpg encryption and decryption. These systems have been most fully implemented between the two ubuntu partitions.','','','ongoing'),('2007-03-31 22:20:00','feisty fawn repartitioning','partitioning, feisty fawn, HP','The HP system was upgraded with a repartitioning inspired by a desire to test the Feisty Fawn beta. The procedure was a bit hacky and dangerous: use tar to create a backup of the entire partition on sda4, delete it, turn it into an extended partition, and untar sda4 into the new sda5. This broke grub a bit, but installing Feisty into sda6 allowed a new grub to install, at which point the old menu.lst was merged in. Everything works again, amazingly! ','','','done'),('2007-09-03 20:57:27','kernel compilations','kernel','The linux 2.6.23 kernel will be the first to include the completely fair scheduler so I\\\'ve been testing the release candidates as they are issued, as well as the mm1 branch. uname -r right now is 2.6.23-rc3-mm1.\r\n\r\nI have compiled kernels for both the AMD and the Intel box, and the Intel box compiles faster even though it is less responsive as a desktop. As I understand it, the p4 has quite a bit of horsepower computationally but has more bottlenecks when it comes to communicating via the system buses. ','','','done'),('2008-06-16 06:46:42','commercial server up and running','remote host','This will be the first test post from the external commercially hosted server site. Amazingly, my sed scripts actually worked to convert the old version of the pages to the new! ','','','ongoing'),('2008-06-16 18:51:07','website htaccess config glitch','security, hosting','Something about the htaccess protection on my website seems to be a bit flaky. It never asked for authentication after I set it up until I accessed the site using the link in my web panel. Perhaps it was dormant until that action was taken? Anyway, further investigation seems to be required.','','www.dreamhost.com','bug'),('2008-06-16 20:30:10','htaccess bug update','security hosting','I have continued to tinker with the security settings available in the Dreamhost webpanel, and have enabled password protection on the root directory of the site. The important thing is getting some kind of lock up, because I really really don\'t want to piss off my webhost by letting their SQL server get injected.','see previous','www.dreamhost.com','bug'),('2008-06-16 23:13:29','initial remote server setup complete','host setup','After a day or two of work, I have my website replicated remotely, and (even more important) I know how to administer it. My initial confusion regarding shell/ftp accounts has been cleared up, thankfully. Everything works well. The most important part of the workflow was creating Sed scripts to alter the database references. htaccess control on the root level of the website seems to be working fine and this is perfectly adequate given that no public access is currently desired.','see entries about htaccess bug','','done'),('2008-06-18 03:48:40','kernel tests and sound issues','imac sound','Continued kernel testing has revealed a consistent mild problem with sound on the limac. After a reboot, the soundcard and alsamixer seem to desynchronize on levels, and the sound becomes distorted as a result of incorrect input levels. It is possible to reset the sound by lowering the alsa mixer levels, then modprobe -r snd_hda_intel to remove the module, followed by modprobing it back in, at which the sound levels are correct and nondistorted. Im not sure if this is a kernel issue or pulseaudio/gnome issue.','','I have seen other links about sound issues on intel mac hardware under linux, google if needed.','bug'),('2008-06-18 05:38:30','internal monitoring capacity concept','mysql load monitor','I\'ve decided it would be useful to be able to track mysql usage from within the site. I\'m concerned about the potential for runaway recursive queries, so I\'d like to add a debugging routine to the PDE that increments a stored counter at each layer of recursion. Perhaps rather than a log, a recursion cutoff should be coded to halt the engine once the recursion gets to a certain level. Probably 100 exceeds any possible legitimate application of recursion per page.','pde design documents','','ongoing'),('2008-06-18 10:33:52','server development directory closed and root opened','hosting security','After bollocksing stuff up in shell, I used the web panel to reset my security settings to what I wanted in the first place, open access to the base directory but password protection on the copy of the Freespect directory. Current base page is minimal and content free, I should at least add some links to places.','','','done'),('2008-06-19 06:16:23','code security upgrades','host security code pde','The project to convert the development codebase to a publicly accessible project has begun. First priority is security. String handling in the development code was inconsistent haphazard and largely insecure. Upcoming work involves pruning away the old test pages and utilities and splitting the PDE powered area into user and admin/dev sections.','','','ongoing'),('2008-06-19 06:43:23','failed gpages post mysql bug','mysql gpages post bug','Evidently I have made a mistake of some sort in the coding of the gpages string escape functions, because an attempt to create a new gpage crashed badly. It gave numerous errors about unable to create a mysql connection in var/run/blahblah. I am currently at a remote site so debugging is currently impossible.','','','bug'),('2008-06-19 06:51:31','gpages mysql bug diagnosed','mysql query security','Well, I figured out how I fucked up -- as it turns out, the mysql real escape string command actually requires a connection to the mysql database, it seems. Im a bit confused by this, because the function of the function seems pretty simple to me, I dont understand why it requires an active mysql connection.','see previous bug entry','','bug'),('2008-06-19 12:13:15','gpages entry mysql bug fixed','mysql bug host gpages','After returning to a box that can ssh, I seem to have fixed the gpages bug, and also prevented it from replicating in the other data entry pages. By moving the location of the mysql connection statement to prior to the real escape string function, the problem seems to have been eliminated. Why the rules for escaping dangerous characters cant be stored locally is a bit of a mystery to me.','see previous bug reports','','done'),('2008-06-22 14:52:33','mysql git repo','mysql git host archive','I had the best idea ever! Make a git repo to track changes to the sql databases via an sql dump! Shit is SO cash. This is a test entry to make sure I have a diff to commit.','','git links','ongoing'),('2008-06-28 05:05:09','massive updates','php mysql everything sphericalharmony.com','Massive upgrades to the content, development infrastructure, and content tools have been made along with the public rollout. Freespect has been released under Gnu Affero GPL v3. An initial seed of content and templates has been created for sphericalharmony. An html front end to a general purpose update script has been added to the developers tools.','','','ongoing'),('2008-06-29 21:21:26','ongoing projects','site structure freespect engine','Progressive updates to content, structure, and engine capabilities are proceeding fairly rapidly. The major work in progress is currently twofold: branch the public area of the site into music-related and free-software related areas, and upgrade the capabilities of the Freespect content creation tools to facilitate working with divergent sites. More notes to follow.','','','ongoing'),('2008-07-01 02:47:01','latest upgrades','freespect site','Latest work has been on setting up the architecture of the Free software area correctly, and on cleaning up some of the code architecture. I have created an updated form altering mechanism that allows different formtables to be targeted, and security has been improved by using a generic INCLUDE for the mysql link. This will also make it easier to publish code securely without a lot of sed-ing around to clean out my passwords! ','','','ongoing'); /*!40000 ALTER TABLE `beta` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `betagptags` -- DROP TABLE IF EXISTS `betagptags`; CREATE TABLE `betagptags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `betagptags` -- LOCK TABLES `betagptags` WRITE; /*!40000 ALTER TABLE `betagptags` DISABLE KEYS */; INSERT INTO `betagptags` VALUES ('','bodya'),('','bodyb'),('','bodyc'),('','bodyd'),('','bodye'),('','bodyf'); /*!40000 ALTER TABLE `betagptags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `betalog` -- DROP TABLE IF EXISTS `betalog`; CREATE TABLE `betalog` ( `ts` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `entry` varchar(10000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `betalog` -- LOCK TABLES `betalog` WRITE; /*!40000 ALTER TABLE `betalog` DISABLE KEYS */; INSERT INTO `betalog` VALUES ('2006-11-28 09:56:52','The beta design center opens for business with its own dedicated database! It\\\'s another Quicklog clone that uses the new unified front-end interface with all forms on one page. I plan to add a few tweaks, like allowing some html tags through, and reformatting the output page from search and show.'),('2006-11-28 10:37:55','Beta design note: use hidden fields within conditionals to keep password data flowing to pages without repeated user re-entry. Figured this out in the course of trying to bug-fix this design mini-app, my links back to the main page were breaking because the index page is password conditional.'),('2006-11-28 10:50:00','Design rule: all php variables are initialized and cleared on the same page. All variables are retrieved from a database to retain maximum flexibility and to prevent bugs from corrupted variable structures.'),('2006-11-29 13:43:26','The core of the Beta design is the Dynamic Page Engine (DPE). The DPE\\\'s purpose is to create each page as a collection of elements retrieved from the central database. Furthermore, the content of the database is to be entirely user generated, and (eventually) the page formatting as well. We can break down the DPE into three component subsystems. 1) The page-query loader. The first step is to retrieve the information that will be displayed on the page. 2) Database > HTML tagger. The user data imported by the loader needs to be encased in appropriate html formatting tags. (note: this necessity influences database structure). 3) Page compositor. All the tagged data has to be placed in correct linear sequence to display properly as a full HTML page. My current concept for implementation is that component 3 will act on component 2 by writing the tagged entitities to a database file in correct sequence, which will then be displayed by a simple print loop.'),('2006-11-30 05:20:16','Beta should be built from the inside-out. The most important principle is to ensure modularity and expandibility through heavy use of variables and functions. In any situation where it is possible, code should be written as: \r\n$foo = defintion (eventually based on user variables) \r\nif $condition (do $foo) \r\nbecause this enables changes made in various subroutines to propagate accurately without recoding. This is standard good programming practice. The fundamental execution code should be drastically simple, and written first. Defining the variables and the functions will be where layers of complexity are added. Priority number one before any code is written is researching more about how functions are defined and used in php, and more about variable types and declarations.'),('2006-11-30 04:22:55','Beta development schedule: 1) Create main log database. 2) Write core page display engine 3) Build log entry form. 4) Create display engine subroutines to re-implement the basic functions from alpha on the beta foundation. 5) Expand search+navigation capacities to make LogRoller, the first application of the new flexible techniques of beta. LogRoller will act as a \\\'browser\\\' for database records, enabling user-customzied search and navigation, as well as configurable formatting and display options. As LogRoller extends show+search from alpha, the log entry form will be extended to become Sawmill. The purpose of Sawmill is to provide a general purpose front end to database record editing and creation. If the functions of Sawmill can be built entirely from code retrieved from a database, we will have achieved BOOTSTRAP functionality, and code development and editing can then proceed from WITHIN the html front end. If this can be achieved in a usable and functional manner, several important decision forks are reached in regards to the status of the ShivaWeb conceptual project and its status relative to the global metaplan.'),('2006-12-02 02:29:35','Here\\\'s an attempt at the beta main database definition: create table beta (ts TIMESTAMP, title varchar(100), systems varchar(100), description varchar(5000), followup varchar(1000), links varchar(500), done enum(\\\'done\\\', \\\'ongoing\\\', \\\'bug\\\')); sorry to myself for how that\\\'s gonna look once my dataprocessing subroutines get done with it'),('2006-12-02 10:05:01','Rough attempt to describe PDE in more detail prior to starting to write code: 1) get variables DATATARGET and PAGETYPE from referring form. 2) OBJECTS=query(PAGETYPE) 3) while item=fetch(OBJECTS) ($foo=select itemdata from DATATARGET, print $foo) NOTE: very tired and not sure if this actually makes any sense whatsoever'),('2006-12-02 21:11:03','The PDE database is possibly the trickiest part of beta design. Because of my imperfect knowledge of sql and php variable structures, my initial choices will probably be wrong and need to be redone from the ground up later. The current plan is to define a pagetype database in three columns as follows: 1) variable name 2) initial attached tag 3) closing attached tag. That way, I can loop SELECT FROM data WHERE variable=foo echo $opentag$varname$closetag -- or something like that.'),('2006-12-04 20:38:11','Beginning design of creation tools for new formatting systems and creating new datasets. An application to create new tagtables via an html form is the first step. All that is needed a single 4 blank form that takes a table name and a set of open, close, and varname values as input and crafts a single insert statement from them. The viewer application will also be simple, although the browsers view source command will be necessary to really see whats going on.'),('2006-12-05 05:31:26','****** ALL initial BETA design features are active ****** It is now possible to create, view, and search arbitrarily complex html structures entirely from within the beta html front end. Now that all features are implemented in rough form, this beta design log is now INACTIVE. Further design work is now directed towards Shiva and will not occur within this database. ****** Database is now ARCHIVAL ******'); /*!40000 ALTER TABLE `betalog` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `betasmudgetags` -- DROP TABLE IF EXISTS `betasmudgetags`; CREATE TABLE `betasmudgetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `betasmudgetags` -- LOCK TABLES `betasmudgetags` WRITE; /*!40000 ALTER TABLE `betasmudgetags` DISABLE KEYS */; INSERT INTO `betasmudgetags` VALUES ('

','

','

','

','

','
','
','title'),('','ts'),('','what'),('
','','
','
','done'); /*!40000 ALTER TABLE `betasmudgetags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `bluetags` -- DROP TABLE IF EXISTS `bluetags`; CREATE TABLE `bluetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `bluetags` -- LOCK TABLES `bluetags` WRITE; /*!40000 ALTER TABLE `bluetags` DISABLE KEYS */; INSERT INTO `bluetags` VALUES ('
\r\n\r\n\r\n
\"border\"\"border\"\"border\"
\r\n','pagename'),('
\r\n
\r\n\r\n','
\r\n
\r\n
\"spacer\"\r\n

\r\n','

','bodya'),('

','

','bodyb'),('

','

','bodyc'),('

','

','bodyd'),('

','

\r\n
','bodye'),('

','

','bodyf'),('','','meta'); /*!40000 ALTER TABLE `bluetags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `bluetagsbak` -- DROP TABLE IF EXISTS `bluetagsbak`; CREATE TABLE `bluetagsbak` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `bluetagsbak` -- LOCK TABLES `bluetagsbak` WRITE; /*!40000 ALTER TABLE `bluetagsbak` DISABLE KEYS */; INSERT INTO `bluetagsbak` VALUES ('
\r\n\r\n
\r\n\r\n
\"border\"\"border\"\"border\"
\r\n','pagename'),('
\r\n
\r\n\r\n','
\r\n
\r\n
\"spacer\"\r\n

\r\n','

','bodya'),('

','

','bodyb'),('

','

','bodyc'),('

','

','bodyd'),('

','

\r\n
\r\n
\r\n
','bodye'),('

','

','bodyf'),('','','meta'); /*!40000 ALTER TABLE `bluetagsbak` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `bstingertags` -- DROP TABLE IF EXISTS `bstingertags`; CREATE TABLE `bstingertags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `bstingertags` -- LOCK TABLES `bstingertags` WRITE; /*!40000 ALTER TABLE `bstingertags` DISABLE KEYS */; INSERT INTO `bstingertags` VALUES ('\r\n\r\n','ts'),('','done'),('\r\n','systems'),('
','\r\n','title'),('
\r\ndate:\r\n','
\r\n','
Relates to:\r\n','
\r\n
\r\n','
\r\n
\r\n','what'); /*!40000 ALTER TABLE `bstingertags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `demopagetags` -- DROP TABLE IF EXISTS `demopagetags`; CREATE TABLE `demopagetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `demopagetags` -- LOCK TABLES `demopagetags` WRITE; /*!40000 ALTER TABLE `demopagetags` DISABLE KEYS */; INSERT INTO `demopagetags` VALUES ('
','',''),('
','
','bodya'),('

','

','bodyb'),('
','
','bodyc'),('

','bodyd'),('
','bodye'),('

Vahlen rocks.','bodyf'); /*!40000 ALTER TABLE `demopagetags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `formpages` -- DROP TABLE IF EXISTS `formpages`; CREATE TABLE `formpages` ( `pagename` varchar(1000) default NULL, `bodya` varchar(1000) default NULL, `bodyb` varchar(1000) default NULL, `bodyc` varchar(1000) default NULL, `bodyd` varchar(1000) default NULL, `bodye` varchar(1000) default NULL, `bodyf` varchar(1000) default NULL, `meta` varchar(1000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `formpages` -- LOCK TABLES `formpages` WRITE; /*!40000 ALTER TABLE `formpages` DISABLE KEYS */; INSERT INTO `formpages` VALUES ('blankpage','','','','','','',''),('endeverything','
','','
','','','',''),('testtable1','And here we are on the outside of the table.','','','','','','xshivax@tabletags@varname@start@tagform'),('testtable2','And here we are in the first cell.','change font to red in bodyb','','','','','xshivax@tabletags@varname@midcell@tagform'); /*!40000 ALTER TABLE `formpages` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `freelinktags` -- DROP TABLE IF EXISTS `freelinktags`; CREATE TABLE `freelinktags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `freelinktags` -- LOCK TABLES `freelinktags` WRITE; /*!40000 ALTER TABLE `freelinktags` DISABLE KEYS */; INSERT INTO `freelinktags` VALUES ('
\r\n','bodya'),('','bodyb'),('','bodyc'),('','bodyd'),('
','pagename'); /*!40000 ALTER TABLE `freelinktags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `fslpages` -- DROP TABLE IF EXISTS `fslpages`; CREATE TABLE `fslpages` ( `pagename` varchar(1000) character set latin1 default NULL, `bodya` varchar(1000) character set latin1 default NULL, `bodyb` varchar(1000) character set latin1 default NULL, `bodyc` varchar(1000) character set latin1 default NULL, `bodyd` varchar(1000) character set latin1 default NULL, `bodye` varchar(1000) character set latin1 default NULL, `bodyf` varchar(1000) character set latin1 default NULL, `meta` varchar(1000) character set latin1 default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `fslpages` -- LOCK TABLES `fslpages` WRITE; /*!40000 ALTER TABLE `fslpages` DISABLE KEYS */; INSERT INTO `fslpages` VALUES ('Freedom in a digital age','fspages','pagename','Free thought','fspform','','','link hpages freedom in digital age '),('Full text of current pages (large)','fspages','bodyc','e','fspform','','','link all hpages'),('This website powered by Freespect','fspages','pagename','freespect','fspform','','','freespect hpages link'),('Freespect documentation 1','fspages','pagename','Freespect documentation 1','fsmoonform','','','link freespect documentation 1'); /*!40000 ALTER TABLE `fslpages` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `fspages` -- DROP TABLE IF EXISTS `fspages`; CREATE TABLE `fspages` ( `pagename` varchar(1000) default NULL, `bodya` varchar(1000) default NULL, `bodyb` varchar(1000) default NULL, `bodyc` varchar(1000) default NULL, `bodyd` varchar(1000) default NULL, `bodye` varchar(1000) default NULL, `bodyf` varchar(1000) default NULL, `meta` varchar(1000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `fspages` -- LOCK TABLES `fspages` WRITE; /*!40000 ALTER TABLE `fspages` DISABLE KEYS */; INSERT INTO `fspages` VALUES ('The Freespect page engine','About the Freespect page engine and this site','The Freespect page engine is free software for creating self-modifying websites. It is designed as a flexible platform for displaying and creating content and formatting independently.','The Freespect engine differs from a traditional templating engine in several ways. Page formats are not stored monolithically; a format is stored as a \'tag set\' to be applied to matching data variables. Both html tags and page content are stored in SQL databases and each page is constructed by interleaving data from the data pages and the format tag sets.','Freespect is also designed for nested recursion. Any given data set can link another data set, with a different format. What the user sees as a page may represent the results of numerous different SQL queries, nested to an arbitrary degree. Freespect also includes some premade content editing templates to allow the site to be constructed entirely from within the Freespect environment via a browser connection.','Freespect is Free Open Source Software and is released under the GNU Affero GPL v3. The software is under development and is not yet recommended for production deployment. The source, licensing terms, and documentation are linked from the front page. Note that as this software is under development the published source may lag the active codebase. As the site operator is original copyright holder, the AGPL terms are not applicable. A good faith effort will be made to keep the available sources updated.','Freespect info',''),('Free speech, Free thought, Free software','Free thought and speech need free standards and tools','Most people claim to support and believe in freedom of speech, but few people have fully considered the preconditions necessary for speech to be free, and how those preconditions apply to digital communications.','The first precondition to free speech is the ability for a message to be broadcast. In simplest human terms, our words must travel through the air to our listeners ears. In print media, materials have to be distributed on physical pages. In digital communications, our words travel not as vibrations of the air, as packets of electronic information. Prescreening and filtering/altering/censoring these packets is equivalent to taking away the atmosphere that carries the spoken word - even the most powerful dictators have never had the power to restrain the very air from carrying words shouted by an unfriendly voice - but the power of electronic filtering can accomplish this automatically. A technology such as the Great Firewall of China is akin to censoring words from even travelling through the atmosphere as sound when spoken.','The means of communication - the language itself - is something that is held in common by a society, and may be used freely by anyone. To speak a sentence in the English language, I do not need to pay a royalty to Great Britain on the use of the words. In digitally networked communication, the language is akin to the data types and software translation layers. Our experience of the language of a web page is mediated via HTML and the browser software that displays it. Our digital languages are often not freely available and held in common. Proprietary programs using proprietary standards impose restrictions on their use, legal in the form of licensing agreements, economic in their purchase costs, and enforced and monitored via DRM. A proprietary file format may become unsupported and unreadable, creating a situation analagous to an untranslated language with no living speakers or rosetta stone to decode. The right to read a book which you own should not be sold as a revocable privilege.','Do you want your creative work, your words or images or music to be locked up inside a proprietary file format, owned by an external company and accessible only through a software tool they also own? Your ownership and use of your ideas becomes contingent upon the permission of an external agent who has an incentive to make you pay for access to your own work.

Right now, one of the most important battlegrounds in the never ending fight for freedom is digital software tools and communication networks. The Electronic Frontier Foundation, The Free Software Foundation, and many other groups are working to protect everyone\'s right to communicate freely on electronic networks and create free open source software tools to do so.','Leaders in the fight for Freedom:
Image licensing info','xshivax@fspages@pagename@freedomfighters@jpegform'),('freedomfighters pictures','jefferson','goldman','gandhi','king','stallman','linus',''),('Beginning the tour','Free software, free speech, free beer, and Freespect.','This site supports open access to information, communication networks, and software tools. Towards that end, we endeavor as much as possible to make use of free and open resources, and contribute content back to the common pool.','The content and software architecture of this site are licensed under the GNU Free Documentation License and the GNU Affero GPL v3. These licenses allow for free reuse and modification, but also require that the openness and freedom of the materials be preserved. ','The original content on this site is created with free open source software and hosted on a free open source OS server. Infinite thanks and praise to the developers of the GNU operating system and utilities, the Linux kernel, Apache, PHP, MySQL, OpenSSH, Git, Firefox, the GIMP, Debian and Ubuntu, and the all-powerful Bourne Again SHell. Thanks also to the High Priests of the Network who keep the packets flowing.','The Freespect system is an attempt to build a wide-open framework for creating and displaying complex data structures. The architecture is based on incorporating recursion and self-modification into the low-level tools, so a user can create rich structures solely with the use of namespaces and content metatags. ','','xshivax@fslpages@bodyc@free@fslform'),('Freespect documentation 1','Freespect documentation 1: Design philosophy and goals','Freespect is designed as a lightweight, minimalistic, and completely open ended content management and display system. Semantic organization, unlimited recursion depth, and self-modification allow the creation of rich structures with simple tools.','All data and formatting information is stored as atomically as possible, to provide maximum flexibility in manipulating it. The output engine is as simple as possible, there are very few layers of abstraction between page display and database content. The creation and editing tools are simple wrappers for basic SQL functionality.','Every page displayed to the user is defined by its location in the dataspace, which is equivalent to the search query sent to the page display engine. The current implementation is a 4-dimensional dataspace, the implementation of which can be described semantically as: search within (DATA SET), retrieve associated information where (DATA FIELD) contains (DATA STRING), and display it according to this (FORMAT RULESET). Arbitrary recursion is implemented by allowing a data element to point to another location in the 4d dataspace, which will be displayed in the specified formatting as a sub-element within the display of all the retrieved data.','Freespect thus regards a \'document\' as an entirely open-ended and dynamic entity. Adding additional content to an existing document requires no modification of the original data, simply the addition of new data that matches the retrieval rule. New matching data will be incorporated into existing structures automatically and transparently. The \'name\' of a document is equivalent to the search string that generates it, and this name also defines the formatting. This creates semantic organization in a completely transparent manner. The abstraction model for the content is whatever naming and reference system the author chooses, the Freespect system imposes no additional Freespect-specific abstraction model.','Freespect documentation 1','xshivax@fslpages@bodyc@documentation@fslform'); /*!40000 ALTER TABLE `fspages` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `gp3x2tags` -- DROP TABLE IF EXISTS `gp3x2tags`; CREATE TABLE `gp3x2tags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `gp3x2tags` -- LOCK TABLES `gp3x2tags` WRITE; /*!40000 ALTER TABLE `gp3x2tags` DISABLE KEYS */; INSERT INTO `gp3x2tags` VALUES ('','','bodya'),('','','bodyb'),('','','bodyc'),('','','bodyd'),('','','bodye'),('','','bodyf'),('','','meta'); /*!40000 ALTER TABLE `gp3x2tags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `gpages` -- DROP TABLE IF EXISTS `gpages`; CREATE TABLE `gpages` ( `pagename` varchar(1000) default NULL, `bodya` varchar(1000) default NULL, `bodyb` varchar(1000) default NULL, `bodyc` varchar(1000) default NULL, `bodyd` varchar(1000) default NULL, `bodye` varchar(1000) default NULL, `bodyf` varchar(1000) default NULL, `meta` varchar(1000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `gpages` -- LOCK TABLES `gpages` WRITE; /*!40000 ALTER TABLE `gpages` DISABLE KEYS */; INSERT INTO `gpages` VALUES ('PDE easy browser','Table?','Search field?','Search for?','Display method?','Show Results','','PDE menu browser labelset pdemenubrowserform1'),('Shiva system summary 12-07','System Summary','A general account of the structure, function, and content of the site as of December 7th, 2006.','This site serves three general purposes.

  1. To provide ongoing documentation and reference for the administration of a LAMP web server.
  2. To explain the nature of the custom tools used to build this site to visitors.
  3. To provide a set of general purpose HTML tools for creating and editing both databases and HTML documents.
','All of the content on this site is stored in a set of databases that contain both the basic text, and the HTML formatting. A custom interface called PDE retrieves the information and builds the web pages you see. Consequently, pages on this site don\'t have a standard URL you can see - your URL is almost always pointed at the PDE engine page. However, at the bottom of your screen, you will see a series of words. Those are the values that were sent to the PDE engine to build the page you are looking at. As you navigate around these pages, what is actually happening is you are viewing the results of a series of database requests. ','Currently, content is stored in a few main databses. The beta database holds all the information about the specific changes made to the sites setup. It is basically a log kept by the sysadmin of all additions and alterations. The gpages database holds a large variety of different content types. The larger format text pages such as this one are stored in gpages. The gpages format is also used to store many other types of data. Viewing these databases is done by choosing a particular form to apply to the contents. Usually, a form is specific to a particular database, but forms can be specially created to work with multiple pagetypes.','The real magic of the site, however, is that it can be freely modified and extended via its own user interface. By creating new text and adding formatting tags to the databases via the data entry forms, new web pages in any format and any content can be added, and existing pages can be expanded and altered in any manner.','info summary 12-07 shiva nontechnical'),('beta 1.0','Beta v1.0 is live and active','The beta version of this LAMP project is now online and providing this content to you. All the content you are seeing was generated by the beta toolset, which is comprised of several subsystems. ','The core technology is the Page Display Engine. The PDE accepts a user request for information and creates a custom, real-time generated html page in response. It does this by fetching both page content and html formatting information from a set of databases, and interweaving them to create a single document.','LogRoller is the interface the user interacts with to request a page from PDE. All PDE pages are defined by a set of four variables. The job of LogRoller is to create those four variables and pass them on to PDE. This enables the open-ended nature of the engine to be structured however is most efficent for the user.','Sawmill is the data and format creation tools. Sawmill lets the user create new PDE format databases and add information and formatting tags to them. The modular multidatabase design allows tremendous flexibility for creating pages and groups of pages that share various features. Sawmill is implemented entirely in html so content is fully bootstrapped.','This page was created and displayed entirely within the beta page database system.',''),('searches','
Dynamic links to system tools and resources
','
For a much larger collection, go to the Turbo Hotlinks','To see how these pages are being referenced, use View Source on your browser.

This button can probably be trusted','','','','hotlinks header updated 12-08'),('Quick list of current databases','Databases 12-05','beta and gpages hold the content. testform holds the headers footers and tagtable reference.','**SHOW TABLES**\r\n| beta | \r\n| betagptags | \r\n| betalog | \r\n| gpages | \r\n| gpagetags | \r\n| luxebetatags | \r\n| newbetatags | \r\n| onetag | \r\n| pootlog | \r\n| quicklog | \r\n| sampletags | \r\n| searchtags | \r\n| song | \r\n| testbetatags | \r\n| testform | \r\n| textbetatags ','**PAGETYPE from TESTFORM**\r\n| betatest | \r\n| newbeta | \r\n| tablebeta | \r\n| newtablebeta | \r\n| textdump | \r\n| betaluxe | \r\n| bootstraptest | \r\n| oneform | \r\n| twoform | \r\n| gpageform | \r\n| betagpform | \r\n| betaform | \r\n| searchform |','**DESCRIBE TESTFORM**\r\n| pagetype | varchar(100) |\r\n| header | varchar(10000) |\r\n| footer | varchar(10000) |\r\n| tagindex | varchar(100) |\r\n','copied and pasted to the gpedit form',''),('Beta log entry breaks','
','
','

','
','

','',''),('Breaks','

','

','

','

','

','','breakup'),('introduction to shiva','What is this madness?','This is a LAMP server hosting a special purpose application.','The custom software on this machine can create and view HTML pages and databases in a completely open-ended yet highly structured way. Complex data sets can be searched and results displayed within any HTML format the user chooses. ','This LAMP server is designed to modify and extend its own capabilities and content using its own tools. For instance, the user can create a new permanent link to any resource automatically just by typing in the search values they want to record. Every link is also dynamic, with the user free to add new content attached to it at any time. All of the content that you see was created by the website\'s own tools while viewing it with a normal web browser. (FireFox, of course.)','The secret to this flexible and powerful system is that html and database information are both stored in the same manner, inside mysql tables. Consequently, a single php script can operate on both types of data and produce a unified html output resource. The user has access to the full flexibility and power of a relational database to in effect do the hard work of html coding automatically!','This custom software will eventually be released as an open-source software project.','description lamp shiva basic gpages pagename introduction turbogpageform'),('picturefruit1','apple','apple','banana','apple','strawberry','watermelon','test pictures fruit'),('picturefruitctv','peach','grapes','kiwi','orange','watermelon','','demo fruit images at ctv location'),('Demo shiva page maker','Wanna light?','Oh Lord!','What, more fruit?','peach','grapes','kiwi','demo full shiva page capacity'),('Random text fruit shiva page maker demo','This is another demonstration of the crazed flexibilty of this software system. Random text, random fruits. At your command.','But why, you may ask? Why? Why random fruits? Why random text? And what IS my command?','This space intentionally left almost blank, apart from this sentence and its attached punctuation.','banana','strawberry','banana','another pagemaker demo shiva thing whatever'),('zoe shiva page maker demo','Zoellner\'s Fruits','Needs to get goldsmithing to 56 because gold nuggets JUST WONT SELL.','cherries','orange','watermelon','kiwi','zoellner demopage'),('plan update info','An update to the medium range plan goals.','Further into the project, more specifics and focus can be added to the plan timeline.','

A review of current project status:

\r\n
  1. LAMP software installed
  2. Server configured and secured\r\n
  3. Trivial test web pages created.
  4. Basic database setup and user creation.\r\n
  5. Simple HTML formatting, linking, and data entry test pages.\r\n
  6. Web retrieval and storage of information from simple database with PHP.\r\n
  7. Small primitive web site with search of simple musician info database.\r\n
  8. Alpha website with a useful, interactive database for making notes and recording system information and changes.\r\n
  9. Design and development of a sophisticated Beta version of the web site capable of viewing and editing multiple databases.\r\n
  10. Use of linux shell to manage the web site, back it up, and recreate a functioning copy on an independent computer using a slightly different OS installation.\r\n
  11. Creation of tools to extend web site functionality, and integration of those tools into the website interface itself.\r\n
','
The initial plan timeline was clearly far too conservative in its expectations and light on specific project implementations. At this point, all of the goals of the April 1 milestone have been achieved. In fact, quite a bit has been achieved that is considerably beyond the paramaters of basic systems administration.\r\n
  • The Shiva web database software had its origins in an attempt to learn the basics of accessing MySQL databases via PHP, a basic LAMP systems function.\r\n
  • In addition to its role as a testing platform for systems administration, this software seems to have the potential for more general applications. The purpose of creating flexible and powerful tools for sysadmin training offers serendipitous benefits.\r\n
  • Making the development of this software the current focus of this project uses all the components of the LAMP stack in an advanced, integrative way.\r\n
','Consequently, the best path forward seems to be to set a new goal for April 1st 2007

The new milestone for that date is to have a complete, professional quality integrated software package for LAMP web development and administration in working and releasable form by that date. Detailed design and feature status information will be available through this site both as content, and as an ongoing test implementation. ','This page created with Shiva FULAMP
\r\n(Shiva web design and display with Firefox Ubuntu Linux Apache MySQL PHP)','shiva plan info update milestone goal 12-08 gpsimpleform'),('12-08 show tables mysql info','Table info dump 12-08 mysql','Show tables','Select pagetype from testform','
\r\n+----------------+\r\n| adminviewtags  | \r\n| bdataentrytags | \r\n| beta           | \r\n| betagptags     | \r\n| betalog        | \r\n| bstingertags   | \r\n| demopagetags   | \r\n| gpages         | \r\n| gpagetags      | \r\n| gpedittags     | \r\n| gpsimpletags   | \r\n| jpegtags       | \r\n| linkviewtags   | \r\n| luxebetatags   | \r\n| makeformtags   | \r\n| maketabletags  | \r\n| menusearchtags | \r\n| newbetatags    | \r\n| pdebrowsertags | \r\n| pootlog        | \r\n| quicklog       | \r\n| sampletags     | \r\n| searchtags     | \r\n| slpages        | \r\n| sltags         | \r\n| song           | \r\n| tagmakertags   | \r\n| testbetatags   | \r\n| testform       | \r\n| textbetatags   | \r\n| titletags      | \r\n| turbolinktags  | \r\n+----------------+\r\n32 rows in set (0.00 sec)
','
\r\n+----------------+\r\n| betatest       | \r\n| newbeta        | \r\n| tablebeta      | \r\n| newtablebeta   | \r\n| textdump       | \r\n| betaluxe       | \r\n| bootstraptest  | \r\n| gpageform      | \r\n| betagpform     | \r\n| betaform       | \r\n| searchform     | \r\n| bdataentryform | \r\n| pdebrowserform | \r\n| hotbeta        | \r\n| betablacklinks | \r\n| bstingerform   | \r\n| pdexform       | \r\n| bdataxform     | \r\n| searchxform    | \r\n| tagmakerform   | \r\n| makeformform   | \r\n| maketableform  | \r\n| gpeditform     | \r\n| slform         | \r\n| turbolinkform  | \r\n| turbogpageform | \r\n| titleform      | \r\n| linkviewform   | \r\n| adminviewform  | \r\n| jpegform       | \r\n| menusearchform | \r\n| gpsimpleform   | \r\n| demopageform   | \r\n+----------------+\r\n33 rows in set (0.00 sec)
','
Made with Shiva FU LAMP','admin tables info mysql dump'),('Instruction introduction information for the Shiva beta web project','
A beginner\'s guide to using this site
An introduction to the ShivaWeb system
','The most basic way to use this site is to navigate by means of the Turbo Hotlinks. Go to the main turbolink page and follow a few links. The more important ones are generally, though not always, emphasized in some way. While you are browsing by means of hotlinks, take note of the 4 words at the very bottom of your screen that change as you visit each page.','The next stage is understanding how to create and save custom PDE searches. Using the open PDE front end, you can find specific datasets and choose the formatting you view them in. If you find a search and style that is particularly useful to you, you can create a new hotlink that will recreate your search for you. To save any results, just record the four PDE variables and then enter them on the new hotlink pageform. You can even create meta-searches that search the hotlinks for you!','Next, you can begin creating new pages that fit within the existing page output templates. By choosing to create a new generic page or beta database entry, you can add content that can be viewed with any of the existing formatting tools. By viewing the other pages in the database you can see how your new page will look once it is meshed with a display type. Make sure to choose a good pagename and add a lot of useful meta information so your page can be retrieved in a number of different ways. After you have created a new gpages entry, make sure to create a hotlink that displays it in your preferred format.','The final level of control is creating new custom formats to view information in. Using the create tables and add tags options, you can create new HTML structures that allow both new and old pages to be given the appearance of your choice. This requires understanding HTML code and also the details of how the PDE search and formatting algorithms work, so it is outside the scope of this page. Ask your local ShivaWeb service representative for technical support.','This page made with Shiva web tools on a FU LAMP system.','intro info gpsimpleform instructions shiva beta'),('FU LAMP information introduction summary','FU LAMP
is
Free Open Source Software ','
\r\nFU LAMP
\r\n
  • Firefox
    \r\nhtml display
  • Ubuntu
    Linux
    \r\nOS distribution
  • Apache
    Web server
  • MySQL
    database language
  • PHP
    scripting language
','
These are the base components that the Shiva web software is built on top of. They are all free, open-source projects. Shiva is designed to extend their functionality by providing a unified html interface and toolset for all aspects of creating, using, modifying, and maintaining a web-based data application. Shiva is also designed to be freely modifiable itself in a profound way by embedding its own structure within the same databases that it controls.
','Free Open-Source Software
\r\nis a good approach because
\r\n
  1. No overhead\r\n
  2. Free distribution\r\n
  3. Builds reputation\r\n
  4. No risk\r\n
  5. Community support\r\n
  6. FOSS uptrend\r\n
  7. Moral good\r\n
  8. FU LAMP model\r\n
','
Because Shiva is conceived as an extension and interface for the functions of a LAMP server, it makes sense that it should follow the same software model. Users that choose the LAMP stack often do so because of the advantages of FOSS, and extend that to further software implementation decisions. Additonally, because Shiva makes use of individuated types of resource files, it benefits from wide adoption in that users can apply Shiva functions to incoming data from another shiva user.
','Additionally, because the FU LAMP support environment was free to ME and I appreciate that fact, by the Golden Rule I should try to extend that principle myself.','FU LAMP FOSS shiva plan info'),('PDE technical information','Technical reference for the Page Display Engine v1.2 12-09-06','
The PDE generates each page using information from three databases in a manner determined by four variables. The naming convention for the databases is a content database called FOO, a form database called FOOFORM and a tag database called FOOTAGS. Note that in practice these names will probably NOT match in this manner, due to the multiplicity of possible intercombinations between the various items. (FOOtom using FOOdickFORM with FOOharryTAGS.)
','
  • The core concept of the PDE is that records matching a given criteria are retrieved from a datatable, and a set of formatting tags is applied to each of the retrieved items, in format OPENTAG-datavariable-CLOSETAG. The formatting tags are not strictly bound to the content of the records. For each retrieved record, a set of formatting tags is printed, applied to a given variable IF IT EXISTS. The formatting tags can be applied without any content in the middle. The tagtable acts as an html program that processes given input but can also execute in a default, blank mode. The data target set provides the input and controls how many times the tagtable will execute itself. The same database can be used as either formatting control or content!
','
The four variables that are sent to PDE specify the target data set using three variables and the format with the fourth. The sequence is TARGETTABLE (the table to be searched), TARGETVAR (which field within the table to search), TARGETDEF (what string to look for within the table), and PAGETYPE (the form to apply globally). The form database stores a header and footer for the page, along with the name of the tagtable to use to parse the variables. PDE retrieves all data from the targettable that contains the specified string in the chosen field (blank fetches everything) and then loops the tagtable once for every matching record.
','
  • Thats the core execution loop. The fundamental printstring is
    HEADER_(repeat(tags_data_tags) for all matching data)_FOOTER
    After printing the page, PDE also writes a copy of the four query variables that generated the page to the bottom of the screen, which acts like a URL for the PDE. PDE also maintains the page header and opening html, body, and background tags. As a usability note for this implementation, it should be noted that the data entry page for forms intercepts the creation of headers and footers and provides a few premade templates. The current standard is black header, turbolinks footer.
','
PDE runs on a base system powered by
\r\nFU LAMP.
\r\nFirefox 2 Ubuntu Linux 6.10 Apache 2 MySQL 5 PHP 5
\r\nThis page created and displayed by
ShivaWeb.
','PDE technical information 12-09-06'),('jjs fruit page','apple','banana','cranberry','lemon','orange','pear','jpegform jjs fruits '),('Shiva design information 5: skills needed','Shiva coding Needed information and skills','Shiva implementation requires greater mastery of PHP and MySQL programming. Query syntax and execution flow control need more sophisticated structures to realize the design features.','
  • MySQL queries need to be extended to query multiple fields and use any type of logical matching criteria. The prototype implementation uses a very inclusive search criteria on a single field of a single database. Creating more complex queries is just simple SQL, no design work required, only learning.
','The flow control for the php loops is going to require more extensive learning. A function based approach will be necessary to keep the code clean and comprehensible.','
  • The central recursion principle isn\'t that tricky in theory. As an example of a simple implementation based on the prototype, imagine that PHP examined each header and footer tag prior to displaying them, and trapped all the content that matched . If it finds a match, it runs a subloop with the same parameters as the main execution loop. This can be prototyped on the current system.
','
This page produced by ShivaWeb prototype on
FU LAMP base architecture
','shiva design information 5 skills needed php mysql '),('shiva design information 3','Shiva design information PDE 2 concept','The next generation PDE needs to implement an additonal variable: the PDE mode request. This determines a configuration for PDE to run in. A PDE configuration is stored in a database file, and one of its fields will probably select one of a number of hardcoded PDE variants, as well as enabling further customization.','
  • PDE 2 will need to output to a database file, rather than directly to the screen. This will enable much more complex modular designs, because the database output file can be subject to multiple recursive operations before it is finally sent to the display. Applying these is the job of the PDE mode database.
  • For instance, a user might select to increase font sizes or globally set fonts to a particular color. In this case, a search and replace routine would be run on the display file prior to final output. Because of the freely modular design, final output might be the result of a number of these filters applied by the page elements generation subroutines in turn.
','The PDE display routines need to be designed hand in hand with the content creation techniques. They are basically two sides of the same coin. Both creation path and display path use the same abstraction layers. Variables and functions are global, specifying data sets and operations to be applied to them. Functions are themselves encoded as database structures. In fact, the output module for the PDE temporary display file should be the same output module used by the creation engine.','
  • The fundamental upgrade to the PDEs mechanism is to make the control structure an actiontable rather than a simple tagtable. An actiontable is simply a list of actions to take, and the objects to apply them to.
  • The 1st generation PDE just performs two operations. First, retrieve data. Second apply tags. Display happens automatically.
  • The 2nd generation PDE could perform an action series like this: First, get some data. Next, get some more data. Now, apply formatting tags. Now, change all the data in both sets according to this rule. Finally, remove all formatting tags of a certain type. Display happens only after all these processes are completed.
  • The power of recursion comes is achieved by making a full PDE request a permitted action type.
','
Created and displayed by ShivaWeb prototype on
FU LAMP
','shiva design information 3 PDE concept'),('Shiva design information 4 automated actions','Shiva Design Information: Automated action','A key shiva principle is that all types of action can be abstracted and automated. This includes navigation, content viewing, and content creation and editing.','
  • Shiva needs to have a base set of automated actions built-in, prior to user definition. A good model for what those actions should be can be found in the prototype implementation, and useful extensions to it. In particular, when a new database entry is created, it should be possible to automatically create a hotlink for it.
','Automatic content updating should happen automatically as a result of the freely recursive and scriptable PDE and correctly designed user databases.','
  • Consider a good test case: the PDE browser menu. In the current implementation, this menu has to be updated by hand. However, in the next generation PDE, the menu could be defined within the page as being constructed from a particular set of database queries with appropriate wrappers, completely independent of the main page. Whatever page referenced the menu item would automatically get the most current version. New menu items would appear automatically as new database entries were made.
','
This page created and displayed with
ShivaWeb prototype v0.4
supported by FU LAMP
','shiva design information 4 automated action any gpages'),('shiva design information 2','Shiva design information implementation concepts','To implement Shiva requires a much more open ended MySQL query system than implemented in the beta prototype. In particular, the update command will need to be heavily implemented, as well as the metadata probing queries. What is needed is a new general purpose query builder engine, based on the principles developed in the PDE.','
  • The principle of recursive loops using user-generated data sets must be applied to data INSERT, UPDATE, and table ALTER statements. Something like a changetable or actiontable could take on the role of the tagtable as a controlling structure, and a set of actions or changes could be applied to the specified data set using an identical control structure as PDE uses to display pages.
','The unlimited abstraction principle is that any page object or set of shiva actions can be abstracted and represented by a single variable or function call. The user interface needs to offer the ability to abstract chosen elements in an intuitive click based manner, and arrange their sequence and connections graphically. A given document/page in Shiva should be an arbitrarily complex set of independent elements of any type. It will be necessary to pass a set of data between several component subsystems before some types of resources can be generated.','
  • The principle of unlimited abstraction and free resource deployment means that, in theory, shiva pages can be recursive to an arbitrary degree. The next generation PDE will in essence create subprocesses of itself that will generate the page elements, and these subprocesses can in turn create subprocesses. The fundamental process of querying a database is completely scale and layer independent so this is not actually difficult to implement.','This page made with ShivaWeb prototype on
    FU LAMP base architecture','shiva design information 2 implementation concepts'),('Shiva design information 1: concepts and goals','Shiva design information 1: concepts and goals','Full access to altering, updating, viewing functions for all database types including all system files
    Ability to apply changes in batches using the same tools as search and retrieval
    Auto-content updating of arbitrary complexity
    Ability to pass input data through multiple pages
    Unlimited abstraction of all page components into portable variables
    Automatic recording of user actions and ability to abstract action sequences
    ','
    • This collection of abilities (along with many more not yet enumerated) are all building towards the goal of making web data structures as plastic and freely extensible as possible. The design philosophy is to leverage the power of recursion by creating an html environment that can modify itself in ever more complex ways as the user defines procedures and datasets.
    ','Implementation strategies
    Use databases for everything. EVERYTHING.
    Each user will have a unique individual database that changes with every action they take.
    Create an action identifier and recording system that parallels the PDE format.
    Implement PDE aware metatags that plug into predefined PDE variables.
    Have PDE render to a database file rather than directly to the screen.
    ','
    • A very speculative feature is currently vaguely labeled as DANCE. The inspiration for this feature is watching my old templates become steadily more outdated, and the collection of turbolinks grow more and more unmanageable. It seems like there ought to be a way to use the metadata about the configuration of all pages and links to OPTIMIZE the links between and organization of pages. For instance, shiva could trace the average number of clicks required to travel between a set of random page queries and if that number was too high, it could automatically create new links to buried pages at important hubs. If a particular template was outdated, Shiva could hunt down all copies of it and replace it with a different one based on what templates were commonly used for displaying that data type.
    ','
    Made with ShivaWeb prototype on
    FU LAMP base system','shiva design information 1'),('recursive pde hotlinks test','Let\'s see if we can get some hotlinks attached to a gpage','This is an attempt at creating a generic page with special features','It includes attached hotlinks via the magic of PDE recursion','Assuming everything has gone as planned, of course','What, are you doubting me?','','xshivax@slpages@bodyc@pde@slform'),('recursive pde menu test','This page should have a nice little menu attached to it','Which would rock.','Recursion power lets me edit pages so much more simply.','Can\'t even imagine what I\'ll be able to do once it\'s really set up.','','','xshivax@gpages@pagename@xyzzy@menuform'),('xyzzy','','','','','','','blank page for reference purposes'),('recursive pde test page 1','A test of the revised PDE recursion engine','This is a mild bug fix which uses a better string delimiter.','The original implementation used a space as a string delimiter, which made it impossible to search for data including spaces.','The new delimiter is the @ character which should cause no conflict in particular.','Until I try to integrate automatic emailing etc into Shiva I guess.','This is a Shiva Prototype recursion test page','xshivax@beta@what@recursive@betasmudgeform'),('Meta-information with hotlinks recursive','A guide and links to information pages','This site is currently (12-12) composed more or less completely of information about itself. Consequently you will find a vast array of different explanations and documentation, most of which is completely out of date!','This site is constantly changing and evolving, because it is a prototype installation of software designed to generate dynamic database linked html pages. For instance, this page will automatically be updated with additonal links whenever a new hotlink is created that uses the word info as part of its definition. ','These links appear on your screen in the chronological order they were created in, so they are not organized to be viewed that sequence. Some of the links may themselves be links to broad searches and cause large amounts of information to be dumped on your screen. The more specific sounding links are probably a better starting place.','If this seems like a peculiar kind of guide to the linked information, that\'s because it was created in complete ignorance of what links you will, in fact, be looking at! This site is designed to be in a state of constant flux so any particular piece of information may be inconsistent with what is going on in other sections.','This page created and displayed by ShivaWeb prototype software on FU LAMP.','xshivax@slpages@bodyc@info@slform'),('recursivemetabuild1','','','','','','','xshivax@slpages@bodya@slpages@slform'),('recursivemetabuild2','','','','','','','xshivax@gpages@bodya@what is this@turbogpageform'),('recursivemetabuild3','','','','','','','xshivax@gpages@pagename@xyzzy@menuform'),('recursivemetabuild4','','','','','','','xshivax@beta@what@recursive@betasmudgeform'),('recursivemetabuild5','Demonstration of the fully recursive PDE:','The display software for this website can now reference any data set and its format and insert it into the flow of page generation. This page (actually its a formatted dataset, not a page) is built almost entirely from simple metapointers to other resources. ','These can be nested to an arbitrary degree, or until the database server fries, whichever comes first. This page references a page which itself contains an embedded formatted search.','You can more or less trace the page construction by the table borders. Most pages on this site are constructed as self-contained tables, which fits well with a recursive approach to page generation. ','The ShivaWeb HTML database is a powerful yet simple system for content creation, navigation, and viewing. A user with no programming or software-specific knowledge can easily create web pages and databases that automatically update themselves, and navigate them with user-defined links. Shiva provides modular templates for databases and output formats, or a user can add their own simple html formatting tags and have them applied to whichever pages or variables they choose. The user interface is completely customizable.','
    The Shiva WebData system uses recursive algorithms to leverage the power of the FU LAMP Free Software environment.
    ','xshivax@gpages@pagename@meta-information with hotlinks@gpsimpleform'),('recursivemetabuild6','Titles of gpages including recur','','','','','','xshivax@gpages@pagename@recur@titleform'),('recursivemetabuild7','','','','','','','xshivax@slpages@pagename@instruction@freelinkform'),('recursivemetabuild8','','','','','','','xshivax@slpages@pagename@info@freelinkform'),('triplecolumn1','Let\'s try looking at some gpages in 3 column view.','','','','','','xshivax@gpages@bodyc@pde@gp3x2form'),('triplecolumn2','','','','','','
    ',''),('linkcolumnview1','','','','','','','xshivax@slpages@pagename@beta@freelinkform'),('linkcolumnview2','','','','','','','xshivax@slpages@pagename@sys@freelinkform'),('recurlinkcolview1','','','','','','','xshivax@gpages@pagename@linkcolumnview1@meta2colform'),('recurlinkcolview3','','','','','','','xshivax@gpages@pagename@linkcolumnview3meta2colform'),('recurlinkcolview2','','','','','','','xshivax@gpages@pagename@linkcolumnview2@meta2colformz'),('recursivemetabuild9','','','','','','','xshivax@gpages@pagename@linkcolview@semiblankform'),('linkcolumnview4','','','','','','','xshivax@slpages@pagename@va@freelinkform'),('linkcolumnview3','','','','','','','xshivax@slpages@pagename@de@freelinkform'),('recurlinkcolview3','','','','','','','xshivax@gpages@pagename@linkcolumnview3@meta2colform'),('recurlinkcolview4','','','','','','','xshivax@gpages@pagename@linkcolumnview4@meta2colformz'),('shiva design information 6: free wrap sourcing','Shiva design information 6: Wrap any object with any other object by any rule','The prototype uses a specially formatted database to wrap content. This special database does not currently make use of arbitrary recursion depth, so special kludgy techniques have to be used to use the xshivax recursion system to wrap content. The next generation of upgrades to the PDE will enable xshivax tags to be placed more freely, and for any variable from any table to be set as an opening or closing wrapper.','Before this occurs, the PDE must be made more error-proof. I\'ve seen user error produce an infinite loop, and it was pretty ugly. A recursion counter should be added with a trap to halt execution if the recursion exceeds, for example, 25 layers within a single process.','Another necessary component, to be added after the basic architecture is stabilized, is automation of the process of interlinking various layers into a unified resource. The user should have the sense that they are able to generate a set of general procedures just by working on a single example dataset.','It\'s important to remember that more open-ended is not necessarily more useful if the creation process and interfaces become more cumbersome. A strong set of default templates and good explanations of how various data structures are and can be related is important if shiva is to be comprehensible to anyone but its developer! ','This collection of hotlinks is a rather complex and delicate arrangement of recursive links. It ended up all right, but next generation interfaces need to make creating such structures much more efficient. ','xshivax@gpages@pagename@recursivemetabuild9@gpsimpleform'),('Designing Shiva files in 3 columns','All shiva design files in 3 beautiful columns','','','','','
    ','xshivax@gpages@pagename@shiva design@gp3x2form'),('GP specific forms','forms containing pagename gp','','','','','','xshivax@testform@pagetype@gp@whiteform'),('recurtest12345678','I\'m a crucial recursive foundation element!','Me and number 9, hand in hand, gettin it done.','','','','','xshivax@gpages@pagename@recurtest123456789@semiblankform'),('recurtest1234567','','I\'m a very common page element, but not so pervasive as to make myself unwelcome.','Unlike SOME pages I could name.','','','','xshivax@gpages@pagename@recurtest12345678@semiblankform'),('recurtest123456','I consider myself the arch.','','I span the center of the structure, connecting to both the macro and micro scale.','','','','xshivax@gpages@pagename@recurtest1234567@semiblankform'),('recurtest12345','Center city.','5 is a mystic number.','This is a mystic recursive form test.','
    ','
    ','','xshivax@gpages@pagename@recurtest123456@semiblankform'),('recurtest1234','Entering the Power Zone','These page sections are powerful.','Smaller in number, they are still hierarchically superior.','','','','xshivax@gpages@pagename@recurtest12345@semiblankform'),('recurtest123','

    You are climbing to the summit

    ','Spanning towards the Root of the Hierarchy','The Page that Generates us all...','','','','xshivax@gpages@pagename@recurtest1234@gpsimpleform'),('recurtest12','

    The dominating page

    ','KING PAGE','one page to rule them all','','','','xshivax@gpages@pagename@recurtest123@semiblankform'),('recurtest1','I try to be humble.','after all..','

    ','when you\'re in my position, what do you have to lose?','I didn\'t earn it, it was given to me.','','xshivax@gpages@pagename@recurtest12@semiblankform'),('recurtest123456789','I think you\'ll be seeing a lot of me.','','','','','',''),('Shiva design information 7: pde tagging upgrade','Shiva Design Information 7: PDE tagging options','After grappling conceptually with the core of the object wrapper issue, I realized there is a clear path forward: adding record-level tag wrapping.','The current PDE wrapper wraps the tags around targeted variables. The effect of a page level wrap is a semi-hack provided by nonlinked initial and concluding tag sections. It would be simple to provide a level of tagging that is applied to entire records, rather than to individual variables.','The current model actually already supports this to some extent, in theory, via the header and footer tags, but the implementation that exists currently actually disables headers and footers during recursion. Why? Because in the pages as they exist now, the headers and footers were created to be global page headers and footers, and were auto inserted via keyword detection. However, even if all the pages were redesigned, the current model is not quite as flexible as it needs to be, because the header and footer wrappers are not independent of the variable specific tag set, they are packaged together on the form specification page.','Consequently, the full shiva PDE needs an upgrade to its display loop. For each matching record, an opening and closing record tag needs to be displayed before the individual variables are tagged. These may frequently be blanked, but the possibility of using them is important. The global headers and footers need to be implemented with a separate database. The formpage should specify a default record level tag set, but this should be able to be overriden by the PDE request. At the same time, extra vigilance against adding too many variables and epicycles needs to be taken.','
    This page created and displayed on a Shiva DataWeb prototype on FU LAMP
    ','xshivax@slpages@pagename@recur@freelinkform'),('PDE 2 Technical Information','Technical information for Page Display Engine 2
    (recursively powered)','The core of PDE 2 is a new, function-based definition. PDE is now a freely callable function with built in recursive capacity. This transitional version implements a simple method: when it is presented with a variable labeled META, it parses the string using @ as a delimiter and if the initial token = xshivax, it sends the next four tokens as input to the PDE function.','The PDE as function is almost identical to the main PDE loop, except it does not print the header and footer of the page. Furthermore, it uses different variable names, although its child processes will use the same names as the parent. It should be noted that if the META field in the tagtable has an associated OPEN tag, the OPEN tag will be displayed, but any CLOSE tag will not. The value of the close tag is long since obliterated once the subprocess returns.','PDE 2 operates identically to the initial PDE for all circumstances apart from appropriately crafted data labeled as META. Once a subprocess has been completed, the main page display loop resumes without any disruption or alteration, although format tags left open by subprocesses will still apply, of course. This can cause either bugs or features, depending on whether or not the pages were carefully or carelessly crafted!','The current (12-14-06) version of PDE 2 is also totally vulnerable to infinite recursion via improperly crafted search criteria. If a page creates a metareference with search criteria that it itself qualifies for, it will create an infinite loop of self-recursion. More complex loops via chains of reference between pages are also possible. A recursion layer counter and safety trap will be implemented in an upcoming code update.','for reference purposes, here is a copy of the technical information from the first version of PDE, which still describes the fundamental display loop accurately.
    ','xshivax@gpages@pagename@pde technical information@semiblankform'),('pde 2 technical information beta entries','','','','','','','xshivax@beta@what@recursive@betasmudgeform'),('Shiva design information 8: PDE definition string','Now that the conceptual model for PDE 3 has been developed, the grammar of the input string needs to be constructed.','The additional flexibility of the PDE 3 design requires more information be passed to the function. In particular, we need a way to specify alternate search logic such as exact field matches or exclusion based critera. Also, we need to separate the record-level wrapper from the variable wrapper tags. This last change necessitates a change in support database structure as well. ','The search logic options can be implemented by parsing $vardef and looking at the initial symbol. No symbol is the default inclusive method. An = sign requires an exact match with the target variable data. The ~ character would find all data that does NOT contain the search string. Even though much more complex query structures could be built, artificially imposed simplicity imposes good design principles throughout this software and provides an intuitive and instantly learnable framework for users.','The current design intention for the new record level/tag level independent wrapper specification is to combine them within one datafield and parse to separate the two different table targets. (It should be noted that this design basically implies the current header and footer system is being discarded. Headers and footers should be user configurable on a separate metalevel. Every user can create their own personalized PDE toolbar header/footers and display them or not as they see fit.) The projected format for the tag/wrapper field is @footags.fizwrap which should be fairly intuitive. ','All of this should be very easy to code without imposing a lot of new computational overhead on php or mysql. Or rather, the new overhead is simply an increase in the constant of integration, not an exponential increase in the function. Let\'s break it down. 1) A new parse on $vardef which leads to a conditional branch into 3 different search formats, only one of which actually executes. 2) A parse on $pagetype followed by database queries which have the effect of freeing the tagtable from its dependency on testform indexing. This may actually be a gain in efficiency. 3) Two additional echo statements, to execute the record-level wrapping. These do not place much load on the system unless they are absurdly content-overloaded, which would not fit with the basic pageflow model and assumptions.','This page created with prototype Free Recurive Expandable Enhanced Sql Php Environment Creation Tool. Displayed with FREESPECTInternetViewingEngine. New name. That means the following pages need to be fixed based on title alone.','xshivax@gpages@pagename@shiva@titleform'),('FREESPECT and the gNew base platform','A gNew Freespective','The transition to the full system begins with an overhaul of the foundation platform and the project name.','A new, more descriptive name for the project is the Free Recursive Extensible Enhanced SQL PHP Environment Creation Toolset. The subset of the system that implements the core technolgy is the FREESPECTInternet Viewing Engine. This name describes the goals and techniques of the software while also emphasizing the commitment to Free Open Source Software principles. ','Another element of that commmitment is the change in base OS platform to a slightly different version of the distribution. gNewSense 1.0, which is a modified version of Ubuntu 6.10, is now the main installation. The old Xubuntu system is now considered a backup/test system. This distribution removes all the binary blobs from the kernel and cleans up other minor licensing issues to create a fully free distro that shows the depth of the GNU software components of the OS.','It is also the intention of this project to release the 1.0 version under the terms of GPL version 3, which should be finished and available for use by the time this project is reaching releasable form.','-FREESPECT prototype- on gNewSense(Ubuntu 6.10) GNU/Linux','xshivax@slpages@pagename@foss@freelinkform'),('Freespect + gnewsense screenshots+pictures','gnulinux','terms','freebrowse','emacs','gnudesk','smallwebs','jpegform screenschots pictures freespect gnewsense'),('GPL 2 preamble',' GNU GENERAL PUBLIC LICENSE\r\n Version 2, June 1991\r\n\r\n Copyright (C) 1989, 1991 Free Software Foundation, Inc.,\r\n 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\r\n Everyone is permitted to copy and distribute verbatim copies\r\n of this license document, but changing it is not allowed.\r\n\r\n Preamble\r\n',' The licenses for most software are designed to take away your\r\nfreedom to share and change it. By contrast, the GNU General Public\r\nLicense is intended to guarantee your freedom to share and change free\r\nsoftware--to make sure the software is free for all its users. This\r\nGeneral Public License applies to most of the Free Software\r\nFoundation\'s software and to any other program whose authors commit to\r\nusing it. (Some other Free Software Foundation software is covered by\r\nthe GNU Lesser General Public License instead.) You can apply it to\r\nyour programs, too.',' When we speak of free software, we are referring to freedom, not\r\nprice. Our General Public Licenses are designed to make sure that you\r\nhave the freedom to distribute copies of free software (and charge for\r\nthis service if you wish), that you receive source code or can get it\r\nif you want it, that you can change the software or use pieces of it\r\nin new free programs; and that you know you can do these things.\r\n\r\n To protect your rights, we need to make restrictions that forbid\r\nanyone to deny you these rights or to ask you to surrender the rights.\r\nThese restrictions translate to certain responsibilities for you if you\r\ndistribute copies of the software, or if you modify it.',' For example, if you distribute copies of such a program, whether\r\ngratis or for a fee, you must give the recipients all the rights that\r\nyou have. You must make sure that they, too, receive or can get the\r\nsource code. And you must show them these terms so they know their\r\nrights.\r\n\r\n We protect your rights with two steps: (1) copyright the software, and\r\n(2) offer you this license which gives you legal permission to copy,\r\ndistribute and/or modify the software.\r\n\r\n Also, for each author\'s protection and ours, we want to make certain\r\nthat everyone understands that there is no warranty for this free\r\nsoftware. If the software is modified by someone else and passed on, we\r\nwant its recipients to know that what they have is not the original, so\r\nthat any problems introduced by others will not reflect on the original\r\nauthors\' reputations.\r\n',' Finally, any free program is threatened constantly by software\r\npatents. We wish to avoid the danger that redistributors of a free\r\nprogram will individually obtain patent licenses, in effect making the\r\nprogram proprietary. To prevent this, we have made it clear that any\r\npatent must be licensed for everyone\'s free use or not licensed at all.\r\n\r\n The precise terms and conditions for copying, distribution and\r\nmodification follow.\r\n','[Preamble to Version 2 of the GPL]','xshivax@gpages@pagename@gpl2terms@gpsimpleform'),('gpl2terms1',' GNU GENERAL PUBLIC LICENSE\r\n TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\r\n',' 0. This License applies to any program or other work which contains\r\na notice placed by the copyright holder saying it may be distributed\r\nunder the terms of this General Public License. The \"Program\", below,\r\nrefers to any such program or work, and a \"work based on the Program\"\r\nmeans either the Program or any derivative work under copyright law:\r\nthat is to say, a work containing the Program or a portion of it,\r\neither verbatim or with modifications and/or translated into another\r\nlanguage. (Hereinafter, translation is included without limitation in\r\nthe term \"modification\".) Each licensee is addressed as \"you\".\r\n\r\nActivities other than copying, distribution and modification are not\r\ncovered by this License; they are outside its scope. The act of\r\nrunning the Program is not restricted, and the output from the Program\r\nis covered only if its contents constitute a work based on the\r\nProgram (independent of having been made by running the Program).\r\nWhether that is true depends on',' 1. You may copy and distribute verbatim copies of the Program\'s\r\nsource code as you receive it, in any medium, provided that you\r\nconspicuously and appropriately publish on each copy an appropriate\r\ncopyright notice and disclaimer of warranty; keep intact all the\r\nnotices that refer to this License and to the absence of any warranty;\r\nand give any other recipients of the Program a copy of this License\r\nalong with the Program.\r\n\r\nYou may charge a fee for the physical act of transferring a copy, and\r\nyou may at your option offer warranty protection in exchange for a fee.\r\n',' 2. You may modify your copy or copies of the Program or any portion\r\nof it, thus forming a work based on the Program, and copy and\r\ndistribute such modifications or work under the terms of Section 1\r\nabove, provided that you also meet all of these conditions:\r\n\r\n a) You must cause the modified files to carry prominent notices\r\n stating that you changed the files and the date of any change.\r\n\r\n b) You must cause any work that you distribute or publish, that in\r\n whole or in part contains or is derived from the Program or any\r\n part thereof, to be licensed as a whole at no charge to all third\r\n parties under the terms of this License.\r\n\r\n c) If the modified program normally reads commands interactively\r\n when run, you must cause it, when started running for such\r\n interactive use in the most ordinary way, to print or display an\r\n announcement including an appropriate copyright notice and a\r\n notice that there is no warranty (or else, saying that you pro','These requirements apply to the modified work as a whole. If\r\nidentifiable sections of that work are not derived from the Program,\r\nand can be reasonably considered independent and separate works in\r\nthemselves, then this License, and its terms, do not apply to those\r\nsections when you distribute them as separate works. But when you\r\ndistribute the same sections as part of a whole which is a work based\r\non the Program, the distribution of the whole must be on the terms of\r\nthis License, whose permissions for other licensees extend to the\r\nentire whole, and thus to each and every part regardless of who wrote it.\r\n\r\nThus, it is not the intent of this section to claim rights or contest\r\nyour rights to work written entirely by you; rather, the intent is to\r\nexercise the right to control the distribution of derivative or\r\ncollective works based on the Program.\r\n\r\nIn addition, mere aggregation of another work not based on the Program\r\nwith the Program (or with a work based on the Program) ','[sections 1 and 2 of the GPL 2 Terms and Conditions]',''),('gpl2terms2',' 3. You may copy and distribute the Program (or a work based on it,\r\nunder Section 2) in object code or executable form under the terms of\r\nSections 1 and 2 above provided that you also do one of the following:\r\n',' a) Accompany it with the complete corresponding machine-readable\r\n source code, which must be distributed under the terms of Sections\r\n 1 and 2 above on a medium customarily used for software interchange; or,\r\n\r\n b) Accompany it with a written offer, valid for at least three\r\n years, to give any third party, for a charge no more than your\r\n cost of physically performing source distribution, a complete\r\n machine-readable copy of the corresponding source code, to be\r\n distributed under the terms of Sections 1 and 2 above on a medium\r\n customarily used for software interchange; or,\r\n\r\n c) Accompany it with the information you received as to the offer\r\n to distribute corresponding source code. (This alternative is\r\n allowed only for noncommercial distribution and only if you\r\n received the program in object code or executable form with such\r\n an offer, in accord with Subsection b above.)\r\n','The source code for a work means the preferred form of the work for\r\nmaking modifications to it. For an executable work, complete source\r\ncode means all the source code for all modules it contains, plus any\r\nassociated interface definition files, plus the scripts used to\r\ncontrol compilation and installation of the executable. However, as a\r\nspecial exception, the source code distributed need not include\r\nanything that is normally distributed (in either source or binary\r\nform) with the major components (compiler, kernel, and so on) of the\r\noperating system on which the executable runs, unless that component\r\nitself accompanies the executable.\r\n\r\nIf distribution of executable or object code is made by offering\r\naccess to copy from a designated place, then offering equivalent\r\naccess to copy the source code from the same place counts as\r\ndistribution of the source code, even though third parties are not\r\ncompelled to copy the source along with the object code.\r\n',' 4. You may not copy, modify, sublicense, or distribute the Program\r\nexcept as expressly provided under this License. Any attempt\r\notherwise to copy, modify, sublicense or distribute the Program is\r\nvoid, and will automatically terminate your rights under this License.\r\nHowever, parties who have received copies, or rights, from you under\r\nthis License will not have their licenses terminated so long as such\r\nparties remain in full compliance.\r\n\r\n 5. You are not required to accept this License, since you have not\r\nsigned it. However, nothing else grants you permission to modify or\r\ndistribute the Program or its derivative works. These actions are\r\nprohibited by law if you do not accept this License. Therefore, by\r\nmodifying or distributing the Program (or any work based on the\r\nProgram), you indicate your acceptance of this License to do so, and\r\nall its terms and conditions for copying, distributing or modifying\r\nthe Program or works based on it.\r\n',' 6. Each time you redistribute the Program (or any work based on the\r\nProgram), the recipient automatically receives a license from the\r\noriginal licensor to copy, distribute or modify the Program subject to\r\nthese terms and conditions. You may not impose any further\r\nrestrictions on the recipients\' exercise of the rights granted herein.\r\nYou are not responsible for enforcing compliance by third parties to\r\nthis License.\r\n\r\n 7. If, as a consequence of a court judgment or allegation of patent\r\ninfringement or for any other reason (not limited to patent issues),\r\nconditions are imposed on you (whether by court order, agreement or\r\notherwise) that contradict the conditions of this License, they do not\r\nexcuse you from the conditions of this License. If you cannot\r\ndistribute so as to satisfy simultaneously your obligations under this\r\nLicense and any other pertinent obligations, then as a consequence you\r\nmay not distribute the Program at all. For example, if a patent\r\nlicense would ','[sections 3-7 of the GPL 2]',''),('gpl2terms3','It is not the purpose of this section to induce you to infringe any\r\npatents or other property right claims or to contest validity of any\r\nsuch claims; this section has the sole purpose of protecting the\r\nintegrity of the free software distribution system, which is\r\nimplemented by public license practices. Many people have made\r\ngenerous contributions to the wide range of software distributed\r\nthrough that system in reliance on consistent application of that\r\nsystem; it is up to the author/donor to decide if he or she is willing\r\nto distribute software through any other system and a licensee cannot\r\nimpose that choice.\r\n',' 8. If the distribution and/or use of the Program is restricted in\r\ncertain countries either by patents or by copyrighted interfaces, the\r\noriginal copyright holder who places the Program under this License\r\nmay add an explicit geographical distribution limitation excluding\r\nthose countries, so that distribution is permitted only in or among\r\ncountries not thus excluded. In such case, this License incorporates\r\nthe limitation as if written in the body of this License.\r\n\r\n 9. The Free Software Foundation may publish revised and/or new versions\r\nof the General Public License from time to time. Such new versions will\r\nbe similar in spirit to the present version, but may differ in detail to\r\naddress new problems or concerns.\r\n','Each version is given a distinguishing version number. If the Program\r\nspecifies a version number of this License which applies to it and \"any\r\nlater version\", you have the option of following the terms and conditions\r\neither of that version or of any later version published by the Free\r\nSoftware Foundation. If the Program does not specify a version number of\r\nthis License, you may choose any version ever published by the Free Software\r\nFoundation.\r\n\r\n 10. If you wish to incorporate parts of the Program into other free\r\nprograms whose distribution conditions are different, write to the author\r\nto ask for permission. For software which is copyrighted by the Free\r\nSoftware Foundation, write to the Free Software Foundation; we sometimes\r\nmake exceptions for this. Our decision will be guided by the two goals\r\nof preserving the free status of all derivatives of our free software and\r\nof promoting the sharing and reuse of software generally.\r\n',' NO WARRANTY\r\n\r\n 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\r\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN\r\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\r\nPROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\r\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS\r\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE\r\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\r\nREPAIR OR CORRECTION.\r\n\r\n 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\r\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\r\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\r\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\r\nOUT OF THE USE OR INABILITY TO USE THE PROGR','','[GPL 2 terms and conditions 8-11]',''),('gpl2terms4',' \r\n Copyright (C) \r\n',' This program is free software; you can redistribute it and/or modify\r\n it under the terms of the GNU General Public License as published by\r\n the Free Software Foundation; either version 2 of the License, or\r\n (at your option) any later version.\r\n\r\n This program is distributed in the hope that it will be useful,\r\n but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\n GNU General Public License for more details.\r\n\r\n You should have received a copy of the GNU General Public License along\r\n with this program; if not, write to the Free Software Foundation, Inc.,\r\n 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\r\n\r\nAlso add information on how to contact you by electronic and paper mail.\r\n','If the program is interactive, make it output a short notice like this\r\nwhen it starts in an interactive mode:\r\n\r\n Gnomovision version 69, Copyright (C) year name of author\r\n Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w\'.\r\n This is free software, and you are welcome to redistribute it\r\n under certain conditions; type `show c\' for details.\r\n\r\nThe hypothetical commands `show w\' and `show c\' should show the appropriate\r\nparts of the General Public License. Of course, the commands you use may\r\nbe called something other than `show w\' and `show c\'; they could even be\r\nmouse-clicks or menu items--whatever suits your program.\r\n\r\nYou should also get your employer (if you work as a programmer) or your\r\nschool, if any, to sign a \"copyright disclaimer\" for the program, if\r\nnecessary. Here is a sample; alter the names:\r\n\r\n Yoyodyne, Inc., hereby disclaims all copyright interest in the program\r\n `Gnomovision\' (which makes passes at compilers) written by Jam','This General Public License does not permit incorporating your program into\r\nproprietary programs. If your program is a subroutine library, you may\r\nconsider it more useful to permit linking proprietary applications with the\r\nlibrary. If this is what you want to do, use the GNU Lesser General\r\nPublic License instead of this License.\r\n','
    ','[End of GPL version 2]',''),('The Four Freedoms of Free Software','The principles of Free Software are realized in the Four Freedoms protected by the GPL. They can be summarized as the freedom to use, to study, to improve, and to copy and distribute.','The users must be free to run the program and use it as they choose. Note that this does not free the user from the general obligation to behave legally. That obligation is between the user and their society.','The users must be free to study how the program works. Access to the source code is a precondition for this. The binary files that are directly executed by the processor are not human-readable. The pre-compiled source code is required to actually understand the program\'s operation, so to distribute an application as Free Software requires you make the source code available to all recipients of the program. If you don\'t distribute source with the program, you must agree to provide it upon request.','The users must be free to change and improve the program. Access to the source code is a precondition for this, also. Changing the operation of a program requires access to the source code so it can be recompiled in the edited form. This freedom builds on and extends the freedom of use.','Finally, users must be free to share and distribute copies of the software, or modified versions of it, as they choose. This freedom multiplies the reach of the other freedoms to extend to all potential users, not just the single active user. In the most popular free software license, the GPL, these freedoms are protected by conditions in the license that state that when you distribute the software, you MUST extend the same license rights as you received, even if you altered the source code. This prevents software from becoming unfree by being released in proprietary customized versions. Such proprietary versions can be created, as long as they are not distributed.','To understand Free Software, remember that it means Free as in Free Speech, not as in Free Beer. The fact that Free Software is usually available free of monetary cost is less important than the other freedoms that are protected by the GPL and other Free licenses.','xshivax@gpages@pagename@freespect and the gnew@gpsimpleform'),('secretpicpage','trashcat','shrodcat','bookcat','lapcat','carecat','blackcat','jpegform'),('Amfruits','banana','orange','apple','pear','grapes','plum','aaron\'s fruits'),('hardware installation log notes','Notes on configuring new hardware','ok, long overdue for creating an installation log on this machine. Let\'s see if I can reconstruct what I\'ve done so far and some of my troubleshooting.\r\n\r\n1) Hardware setup basically straightforward, with the exception of the USB>ps/2 mouse adapter and possibly the mouse in general. For whatever reason, using a mouse with the usb>ps/2 adapter resulted in a TON of glitchy behavior of gradually increasing severity. The fixes so far:\r\n a) plug the mouse into the usb port\r\n b) replace incredibly crappy used mouse with new microsoft USB mouse\r\n c) changes \"USB mouse support\" option in BIOS to OFF!! (sic)\r\n * idea is to let the linux kernel handle it rather than mobo\r\n\r\n2) Initial system testing was done via the Knoppix Live CD. Knoppix demonstrated basically solid hardware support including networking, sound, and some control over screen resolution.\r\n\r\n3) GParted was used for initial HD partitioning. Subsequent note: my current partition scheme is horribly suboptimal but I dont really want','4) The initial hard-install attempt was debain etch netinstall, which took forever at a suspiciously slow FTP speed then locked at 84% during \"configuring taskel\". This installation proved to be partially functional at a later point.\r\n\r\n5) Because the installer never installed GRUB to the MBR, the system would hang after POST and initial bios autoconfig. I failed to realize the source of the seeming \"hang\" and immediately panicked and began to study the BIOS settings. I made the drastic mistake of loading the \"safe defaults\" without recording the BIOS settings currently in use. I still do not know if any relevant customizations by the initial assemblers of the hardware were lost. After realizing my mistake I got smart and booted Knoppix. This reassured me and I decided it was necessary to install a complete distro from CD without needing to download files. Enter Ubuntu, which installed and booted successfully. Highly satisfying. Ubuntu seemed to be \"all there\" apart from X configuratio',' a) I am using the open-source nv driver, not the nvidia proprietary. I am unlikely to change this DESPITE:\r\n b) The exceptionally annoying bug in the nv driver that causes the mouse pointer to disappear if a session is closed. The mouse actually works correctly but does not display a pointer. This can be fixed by adding line to disable the hwcursor in xorg, but this apparently has some issues as well.\r\n8) In parallel with installations and graphical configuration mouse issues became a problem and led me down several wrong paths. I did not succeed in identifying the final problem as being with the nv driver for quite a while, most likely because the hardware-based (usb>ps2 issue) problems became a red herring as a precedent. Furthermore, I at one point lost scroll wheel support in debian after some random changes and used the Ubuntu xorg.conf as a cut-and-paste source to change my setup. \r\n\r\n9) In short, xorg.conf was the real focus of most of the setup and configuration issues. Other ','12) System stability has been improving as the configuration has been improved and locked in. The main issues now seem to be basically software related. Iceweasel/Firefox is very unstable and frequently crashes as tabs are being opened and closed and links followed. Firefox instability is not exactly news, although it seems to be crashing with a segmentation fault, an error i also have seen repeatably with a random aptitude search command. \r\n\r\n13) Major upgrades have been made to the global setup and specific partitions. Given that I\'m already leaving a huge block of unused hardware space, my misconfigured sda1 (imaged partiion wasting 8/16gb) was not really acceptable. I fixed the problem by reimaging sda2, and reformatting sda1 with gparted as an 8gb blank partition to match the saved image file, which I copied in. Then, I used gparted to resize the partition now that the image was correctly seated. Next, I updated grub by copying the boot options for sda2 but altering the drive info','Consequently, I was basically in a \'reduced\' run level 2. I should probably prepare a custom \'minimal but still fully functional\' run level for debugging/testing/server only applicatios. After I was confident I had a fully working but non graphical run level worked out, I chose to ignore the runlevel 1 warning and proceeded through the installation. Apparently my system configuration didn\'t match anything standard, so the installer needed to custom-compile my kernel extensions, which it did successfully. Overall, I am VERY impressed with the nVidia installer package and think its a good choice. \r\n\r\n15) After restarting, there was a brief \"nVidia\" splash screen added to the X startup process, but graphical login came up as expected, as did KDE. After a few basic tests, I ended my session...and the mouse pointer came back on for the graphical login! Hallelulah!. In general, it seems that system performance has been MUCH improved by installing the official nvidia driver. Too bad its not s','xshivax@beta@ts@2-04@betasmudgeform'),('business model notes','notes on a business model for debian linux services','The basic model is clear: provide installation, service, and support for Free Software systems using debian or its derivatives.','pricing models: as a small startup business, extensive future commitments could be problematic, so the subscription model is NOT a good idea. Both fee-for-service and time-based billing are a better idea in this regard. It\'s tempting to offer a choice of service based or time based billing, but that represents additional complexity and might make marketing products and customer communication more difficult. ','A good baseline for ala carte fee-for-service pricing is to look at the cost of proprietary products that meet the same need. We should be able to provide installation, configuration, and a bit of initial support for a lower price than the retail cost of the proprietary package. ','hypothetical pricing example: 1) Debian kde install $50 2) Setup & config $25 3) Support call $25 -- so the pitch can be: Desktop installation, configuration, and a free support call for a hundred bucks, cheaper than the cheapest retail ms OS box.','additional pricing examples to follow','xshivax@gpages@pagename@exampleprices@gpsimpleform'),('exampleprices','Additional hypothetical prices','productivity base: openoffice, gnumeric, gnucash, note-taker, calendar+scheduler, etc. Install $50, configure $25, support $25','WEBSERVER, not available as alacarte, minimum $100 for install+configure+support initial Apache 2 package. Advanced webserver: MySQL + PHP minimum $100 for same. Net administrator package: configuration tools, custom scripts, onsite and remote service, $100 for base.','Standard internet tools: firefox, thunderbird, gaim, bittorrent, firewall+security package. $50, $25, $25 for install, config, and service. Advanced internet privacy and tools: SSH, GnuPG, Nessus, log monitoring, security guide and consultation - $100. Business network tools: file sharing, network printing, data encryption, remote desktop, LAN mail - $100. Data backup and recovery service $10 per drive per backup, steep discounts available, file backup for $1 per file maybe? Needs more analysis.','Multimedia and entertainment package: Music and movie players, browser plugins, desktop games, desk accessories and desktop customization, photo albums, and image manipulation with the GIMP and more. $75 package. Additional desktop environment install and configure: $50. Development/hacking tools package: $50 to install a ton of crap that customers are on their own with.','In person service for $25 an hour plus travel time at $10 an hour. Phone service $10 per call, $5 for email support -- give away lots of support as freebies. Remote maintenance via SSH also, but make it pricey. Obviously put together nice bundles at good price points, maybe $250, $500, and $750. ','business pricing notes referenced from business model notes'),('carriepictures','blackcat','carecat','lapcat','bookcat','shrodcat','trashcat',''),('ideas for public front page','Some ideas for the publicly accessible front page','As a background image, use an image of the solar system with a musical staff system behind it, with the planets in alignment with the lines of the staff, transforming them into musical notes.','Content links can be labeled as harmonics of the fundamental tone-idea. Music, mathematics, physics, and the grand spatiotemporal experiential synthesis. Other content areas such as free software, politics, and any other content should branch off from a secondary page with a somewhat obscure link. ','Obviously, the main content generation system is the current freespect implementation. Im currently engaged in review and evaluation of the existing code with the goal of crafting a more refined and secure implementation and matching it to the particular needs of the site. Better string handling is pretty much all that is needed. It would also be nice to have a simple workflow for exporting a set of pages to non-dynamic generation. Currently, all linking is PDE based so there are fairly challenging technical issues.','It would also be good to branch off a publicly-usable version of the full freespect system, with strictly limited content creation tools. The ability to post additional text to certain databases is good, but the tagtables and formtables should probably not be subject to user additions.','Ultimately, acquiring separate domains for distinct content areas might be optimal, but needless to say that depends on a self-sustaining revenue stream of some sort.',''),('anotherbugtest','lets hope this works','pleeeeeeeze!','','','','',''),('Freespect upgrades in progress and completed','Upgrades to Freespect code base in preparation for public deployment','Before allowing general public access, the stability and security of the code needs to be improved and tested. So far several major upgrades have been made, and most of what remains is simple clerical work -- and of course the not-so-simple task of producing content relevant to the public!','Input and output handling is one of the most important aspects of security and I believe my treatment is now correct. Mysql real escape string is the correct function to sanitize input, and I believe all database queries are now based on properly sanitized variables. As I have examined the matter, I have in some ways become surprised that my system has worked as well as it has, both initially and after porting. Given the inherent instability of a recursive system and my rather haphazard approach and inconsistent assumptions, I don\'t understand how my formatting was surviving intact.','In addition to input and output handling, recursion sanity checking has at long last been implemented. Potential infinite loops are now terminated via an incremented counter check in the pde recur function. I\'ve been carrying the concept for this fix in my head forever, it feels good to finally implement it.','The remaining work consists largely of pruning unnecessary files, creating a new front door that bypasses the old explanatory materials and demos, designing a table structure for the public content, updating templates to match, and then making some content!','Initially, public content should be statically published, with Freespect available only to me as a backend for creation. Subsequently, a fork into a partially user-enabled version will be undertaken.',''),('Harmony layout demo','This looks like this!','Here\'s a sample of what the current layout I\'m working with is like. I know its a bit harsh on the eyes, I\'m gonna have to make it all more low-key.','(Insert brilliant philosophical meditations on the interrelationship of cosmology and musical consonance and dissonance here.)','(Insert thought provoking polemic on how awesome Free Software is here.)','(Insert \r\nRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGE\r\nhere)','
    sphericalharmony.com
    ','sample'),('Harmony layout demo 2','And this!','So continuing on, I guess I\'ll add another page with a title that matches the search critera.','Any page I make which includes \"harmony layout\" in the pagename field will automatically be added onto the sample button link, because everything is generated by doing a search for matching records, then applying the html formatting tags that were specified.','The linking system is totally automated and semantically based; you just tell the Page Display Engine what database table to look in and what to look for, and what formatting method to use on the results. A button is just a saved query to the engine.','Anyway, no need to get bogged down in all that.','',''); /*!40000 ALTER TABLE `gpages` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `gpagetags` -- DROP TABLE IF EXISTS `gpagetags`; CREATE TABLE `gpagetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `gpagetags` -- LOCK TABLES `gpagetags` WRITE; /*!40000 ALTER TABLE `gpagetags` DISABLE KEYS */; INSERT INTO `gpagetags` VALUES ('
    ','pagename'),('','bodya'),('
    ','

    ','

    ','','bodyb'),('','','bodyc'),('
    • ','','bodyd'),('
    • ','
      ','bodye'),('
    • ','
    ','bodyf'),('

    ','

    ','meta'); /*!40000 ALTER TABLE `gpagetags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `gpedittags` -- DROP TABLE IF EXISTS `gpedittags`; CREATE TABLE `gpedittags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `gpedittags` -- LOCK TABLES `gpedittags` WRITE; /*!40000 ALTER TABLE `gpedittags` DISABLE KEYS */; INSERT INTO `gpedittags` VALUES ('\r\n
    \r\n

    \r\nAdd a new Generic Page\r\n

    \r\n
    \r\n','
    \r\nName of page?
    \r\n\r\n
    \r\nbodya?
    \r\n\r\n
    \r\nbodyb?
    \r\n\r\n
    \r\nbodyc?
    \r\n\r\n
    \r\nbodyd?
    \r\n\r\n
    \r\nbodye?
    \r\n\r\n
    \r\nbodyf?
    \r\n\r\n
    Meta information?
    \r\n\r\n
    \r\n
    \r\nWhat general page database does this page belong in?\r\n\r\n

    \r\n\r\n
    \r\n
    \r\n',''); /*!40000 ALTER TABLE `gpedittags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `gpopentags` -- DROP TABLE IF EXISTS `gpopentags`; CREATE TABLE `gpopentags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `gpopentags` -- LOCK TABLES `gpopentags` WRITE; /*!40000 ALTER TABLE `gpopentags` DISABLE KEYS */; INSERT INTO `gpopentags` VALUES ('','',''),('','pagename'),('

    ','

    ','','bodya'),('','','bodyb'),('','','bodyc'),('','','bodyd'),('','','bodye'),('','
    ','bodyf'),('
    ','','meta'),('
    ','',''); /*!40000 ALTER TABLE `gpopentags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `gpsimpletags` -- DROP TABLE IF EXISTS `gpsimpletags`; CREATE TABLE `gpsimpletags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `gpsimpletags` -- LOCK TABLES `gpsimpletags` WRITE; /*!40000 ALTER TABLE `gpsimpletags` DISABLE KEYS */; INSERT INTO `gpsimpletags` VALUES ('
    ','',''),('

    ','

    ','pagename'),('

    ','

    ','bodya'),('

    ','

    ','bodyb'),('

    ','

    ','bodyc'),('

    ','

    ','bodyd'),('

    ','

    ','bodye'),('

    ','

    ','bodyf'),('
    META information
    ','
    ','meta'),('','
    ','endtable'); /*!40000 ALTER TABLE `gpsimpletags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `gpsmudgetags` -- DROP TABLE IF EXISTS `gpsmudgetags`; CREATE TABLE `gpsmudgetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `gpsmudgetags` -- LOCK TABLES `gpsmudgetags` WRITE; /*!40000 ALTER TABLE `gpsmudgetags` DISABLE KEYS */; INSERT INTO `gpsmudgetags` VALUES ('','bodya'),('','bodyb'),('','bodyc'),('','bodyd'),('','bodye'),('','bodyf'),('
    ','
    ','pagename'),('

    ','

    ','','
    ','','

    ','

    ','',''); /*!40000 ALTER TABLE `gpsmudgetags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `hlpages` -- DROP TABLE IF EXISTS `hlpages`; CREATE TABLE `hlpages` ( `pagename` varchar(1000) character set latin1 default NULL, `bodya` varchar(1000) character set latin1 default NULL, `bodyb` varchar(1000) character set latin1 default NULL, `bodyc` varchar(1000) character set latin1 default NULL, `bodyd` varchar(1000) character set latin1 default NULL, `bodye` varchar(1000) character set latin1 default NULL, `bodyf` varchar(1000) character set latin1 default NULL, `meta` varchar(1000) character set latin1 default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `hlpages` -- LOCK TABLES `hlpages` WRITE; /*!40000 ALTER TABLE `hlpages` DISABLE KEYS */; INSERT INTO `hlpages` VALUES ('Full text of current pages (large)','hpages','bodyc','e','noteform1','','','link all hpages'),('Cyclical time and rhythm','hpages','bodyf','beginninglinks3','noteform1','','','link cyclical rhythm beginninglinks3'),('An overview of the mapping','hpages','bodyf','beginninglinks4','noteform1','','','link overview of mapping beginninglinks4'),('Initial motivations','hpages','pagename','signpost','blueform2','','',''),('This website powered by Freespect','hpages','pagename','freespect','spform','','','freespect hpages link'),('A metric for musical space','hpages','pagename','metric','blueform2','','','hpages metric link'),('Introductory materials','hpages','bodyf','beginninglinks1','spform','','','beginninglinks link'),('Quantum elements in music','hpages','pagename','quant','spform','','','quantum elements link'),('Schrodinger\'s Chord: Uncertainty','hpages','pagename','uncertain','spform','','','uncertainty link'),('Musical levels and phase transitions','hpages','bodyf','beginninglinks2','spform','','','phase transition beginninglinks link'); /*!40000 ALTER TABLE `hlpages` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `hpages` -- DROP TABLE IF EXISTS `hpages`; CREATE TABLE `hpages` ( `pagename` varchar(1000) default NULL, `bodya` varchar(1000) default NULL, `bodyb` varchar(1000) default NULL, `bodyc` varchar(1000) default NULL, `bodyd` varchar(1000) default NULL, `bodye` varchar(1000) default NULL, `bodyf` varchar(1000) default NULL, `meta` varchar(1000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `hpages` -- LOCK TABLES `hpages` WRITE; /*!40000 ALTER TABLE `hpages` DISABLE KEYS */; INSERT INTO `hpages` VALUES ('Signposts and pointers','Metaphors and models to initiate investigation','1) The relationship between dance and music is an anchor point for the mapping of music and motion through spacetime. A dancer\'s body traces out a complex set of arcs, controlled by the levers of the skeletal system and synchronized with a musical piece. The motions of the dancer\'s body map the music.','2) The sounds of the natural world create associations with musical characteristics. The birds of the sky make \"high-pitched\" sounds, the earth produces \"low\" rumbles. Our language for varying frequency is mapped onto physical space, and in a way that corresponds with experience.','3) We associate rhythm with motion; the cadence of walking and running are instantly recognizable by ear. When rhythmic values become shorter, we say the music has \'speeded up\', like a runner quickening her pace. ','These are connections that are allusory and suggestive; the purpose of this site is to investigate the possibility of a formal mathematical connection linking musical structure and fundamental physics.','',''),('A metric for musical space','Measuring musical spacetime','What is the structure of the musical manifold? This is not an esoteric question; in fact, answering it is usually the first step in formal musical education.','The base material of the musical manifold is the frequency/pitch space. The musical scale and the graphical staves that represent it establish a metric upon the surface. The most interesting feature to note is that the tonal metric is logarithmic in relation to the measurement in Hz.','In other words, the musical staff maps the powers-of-two progression of the octaves as a linear progresion; as measured in Hz, an octave in the bass is a smaller interval than an octave in the treble, but they each have the same 2:1 ratio. ','In the same way that the Minkowski metric captures many of the properties of Einsteinian space-time, the musical staves express the dynamics of the auditory manifold. The musical scale is a kind of conformal mapping of pitch space.','A conformal metric for pitch-space.',''),('The Quantum Nature of Musical Materials','Quantization of musical elements in scales and rhythms','The basic nature of sound is smooth and continuous, and not inherently differentiated by anything other than our audible range. As a siren sweeps up and down, it travels through each point of the frequency spectrum. By contrast, a musical scale is composed of distinct steps.','The transition between scale steps is similar to the behavior of a particle such as an electron. The available energy states of an atomically bound electron are quantized as multiples of the fundamental charge. The frequency values available to a musical note are quantized as set ratios of the fundamental tuning pitch. ','Musical rhythm is also quantized. The possible durations of a sound are an undifferentiated continuum of length-values, but our musical systems quantize this space into set ratios: the familiar whole note, half note, quarter note system where the rhythmic values are again simple ratios of the given base tempo unit.','This is a foundational element of the mapping between music and physics: the quantum nature of the fundamental, \"microscopic\" components. A single note is analogous to a small scale element of the universe such as a particle, atom, or molecule, and is characterized by a set of quantized relationships with the given tuning pitch (A=440) and rhythmic value (60 quarter notes/minutes). Of course, the \'quantum\' in QED is connected to more than simple quantization. There are additional connections in the form of an \'uncertainty principle\' for the significance of a given note.','Quantized elements in music','xshivax@slpages@bodyc@uncertain@hlform'),('The Uncertainty principle of note interpretation','Schrodinger\'s chord: the Uncertainty principle','The physical pitch and duration of a given note may be well-defined, but an uncertainty principle comes into play in the interpretation of a note\'s musical function. In the musical equivalent of an \'isolated quantum system\' we find an analogous role for unpredictability.','The aspects of music we focus on, harmony, melody, form, and rhythm, are all emergent, \'classical\' entities -- they exist only as a result of the aggregation of multiple musical events. A note in isolation has only pitch and duration, we cannot identify its location within a scale or value within a rhythmic system. ','Once we are dealing with a system of several notes, we enter the realm of multivalenced possibilities, and \'collapsing wavefunctions\'. A music piece can open with a two-note interval, a \'bare fifth\', for instance between C and G. This suggests the key of C, but we do not know the mode. The next note to enter is E natural, and now the harmonic wavefunction collapses to the state of C major.','After a few permutations of these notes, the state evolves further; the pitch Bb is introduced, and suddenly the C Major becomes a dominant-seventh harmony. All the pitches change simultaneously to F, A, and C, and now the system has evolved a \'classical history\', and we can place all of these notes within a system of relations: the key of F major, beginning from the dominant and moving to the tonic. However, just as in quantum mechanics, we can see an alternate, less probable possible evolution. Suppose the second set of pitches was not F, A, C, but rather D, F, A? This is also a plausible \'classical history\', but it describes a deceptive cadence onto a minor chord.','Quantized elements in music','xshivax@slpages@bodyc@quant@hlform'),('The Freespect page engine','About the Freespect page engine and this site','The Freespect page engine is free software for creating self-modifying websites. It is designed as a flexible platform for displaying and creating content and formatting independently.','The Freespect engine differs from a traditional templating engine in several ways. Page formats are not stored monolithically; a format is stored as a \'tag set\' to be applied to matching data variables. Both html tags and page content are stored in SQL databases and each page is constructed by interleaving data from the data pages and the format tag sets.','Freespect is also designed for nested recursion. Any given data set can link another data set, with a different format. What the user sees as a page may represent the results of numerous different SQL queries, nested to an arbitrary degree. Freespect also includes some premade content editing templates to allow the site to be constructed entirely from within the Freespect environment via a browser connection.','Freespect is Free Open Source Software and is released under the GNU Affero GPL v3. The software is under development and is not yet recommended for production deployment. The source, licensing terms, and documentation are linked from the front page. Note that as this software is under development the published source may lag the active codebase. As the site operator is original copyright holder, the AGPL terms are not applicable. A good faith effort will be made to keep the available sources updated.','Freespect info',''),('The Beginning','Unfolding the map','It is a cliche to observe that music is very mathematical, and millenia of observation and experiment have demonstrated the close connection between mathematics and the behavior of the physical world. This site investigates the idea of a \'physics of music\' and constructs a metaphor between musical and physical processes and structures.','Immanuel Kant believed that we have an a priori concept of time and space, and that all our perceptions are prestructured into those categories. Kant believed, on the evidence of Newtonian theory and an absence of any existing alternative models, that time and space were uniform and noncontingent.','Einstein showed that time and space are not static and unchanging; they are dynamically intertwined with each other and the world-lines of observers. Extreme objects and conditions, like those near black holes or at the moment of the Big Bang, distort time and space in unimaginable ways that our mathematical tools have yet to decipher. The ultimate nature of time seems tied to a full theory of quantum gravity and a deeper understanding of cosmological entropy.','We know that music is a highly temporal art - does it have a spatial aspect? I assert that the principles and rules of musical scales, harmony, and form create musical analogs to physical structure and motion. Musical time, like physical time, is not a flat Euclidean expanse, it is affected by the content of the musical manifold just as physical time is affected by the matter energy structure of the gravitational manifold.','Beginning to unfold the map','xshivax@slpages@bodyc@beginninglinks@hlform'),('Pitch space','Pitch, the fundamental dimension of musical space','Pitch refers to the frequency of a note - how \"high\" or \"low\" it is. Let\'s take a minute to study this omnipresent metaphor, which is so common in musical discourse that we forget that it is a metaphor at all. ','High and low refer primarily to altitude, but they are analogized to magnitude also -- a high number is one of larger magnitude, a high note has a greater frequency. Additionally, the experience of a practicing musician will often add another spatial element, in the form of an instruments keys or frets. The hands of a violinist move across the fretboard, mapping pitch space onto the neck of the instrument.','There is also a connection with the natural world. Birdsongs are high-pitched, as well as sung from high perches! Western music is full of both literal imitations of birdcalls, as well as a wealth of material that echos birdsong stylistically without direct quotation. It is a commonplace of musical description to describe certain types of melody as \'floating\' or \'flying\'.','The relation of pitch-space to time is crucial for the metaphor we are pursuing. At the base, physical level, pitch corresponds to time -- more rapid frequency of vibration = higher pitch. When we hear a melody as moving \'up and down\' we are translating a temporal characteristic (frequency of vibration) into a spatial one. Here, time becomes space.','beginninglinks1','xshivax@slpages@bodyc@beginninglinks@hlform'),('Time scales and phase transitions','Phase transitions between different musical time scales','All musical materials are ways of structuring time. The smallest temporal divisions are the high frequency overtones that provide timbre and \'color\' to sounds. At a larger scale, about 40-5000 Hz, are the majority of the commonly used base pitches in western music - the standard notes of the bass and treble clefs.','Rhythm represents levels of temporal division below the audible range. Common rhythmic values range from about 16 Hz (32nd notes at 120 quarters/min) to 0.5 Hz (whole notes at 120 quarters/min). Rhythmic values are grouped together in metric systems such as 4/4, which are in turn organize in terms of phrases. In a standard classical-era work such as a Mozart sonata outer movement, the progression of balanced 8 measure periods creates a \'structural rhythm\' of about 4 structural units per minute (assuming 4/4 time, 120 qbpm).','Each structural level is constructed via regular rhythmic division in simple ratios. Musical scales are composed of simple frequency ratios, musical rhythms are again expressed in simple 2:1 and 3:1 units (quarters, eighths, triplets, etc), and common meters and phrase structures are again composed of symmetrical groupings of units, usually by 2:1 ratios -- 4 beats per measure, 4 measures per phrase, 2 units of 4 measures a balanced dominant-tonic period.','As arithmetic temporal division is the structural mechanism at each level, the differences between pitch, rhythm, and form are an example of a phase transition in the underlying medium. Rhythm is \'frozen\' pitch, possessed of a characteristic scale of a different order of magnitude. These different structural levels can be mapped onto different spatial dimensions. The \'one-dimensional\' temporal manifold acquires a fractal dimension as it is subjected to recursive \'folding\' on different scales. ','beginninglinks2','xshivax@slpages@bodyc@beginninglinks@hlform'),('Human time perception and rhythmic cycles','Days, Years, and Heartbeats: Cyclical rhythmic time','Our experience of time is based on the regularly recurring cyclical events that we use to measure and define it. Start out by forgetting about \'clock time\' completely - pretend you have never seen a clock or a watch or heard anyone talk about time. Where does the concept of time begin?','The cycle of day and night is the predominating temporal rhythm in human and animal life. The cycle of the seasons over the course of a year is the other fundamental external time unit that defines our lives.In musical terms, a year is a single measure with 365 beats, one day per beat! On the smaller, personal scale, the pace of breathing and heartbeat create a steady rhythm of life processes.','The defining element of natural time units is that they are based on repetition, on cycles. We measure the time of day by a series of hours which repeate every single day. \"Oh, its 7 AM AGAIN\" -- we say that the \'same\' time has returned. This is a circular model of time, or perhaps I should say elliptical, because it has its origin in the elliptical orbits of the bodies of the solar system. This model of time has experiential reality, and it has a more complex structure than the naive idea of time as a uniform straight line. ','Musical time is also cyclical. Music is usually constructed from repeating rhythmic units, often in the form of nearly symmetrical \'loops\'. A series of 4 bar phrases exploring a theme can create a sense of \'rotational motion\', as if the music was orbiting around a central idea. Large scale musical form makes use of substantial exact or parallel repetition.','beginninglinks3','xshivax@hlpages@bodyc@beginninglinks@hlform'),('An overview of the mapping','Overview of modern physics and its mapping to musical processes','Modern physics uses several distinct sets of mathematical tools to analyze the behavior of the universe at various scales. On the microscale, quantum field theory (the standard model of particle physics) describes the fundamental structure and interactions of the building blocks of the universe. In music, this corresponds to our fundamental systems of scales, tunings, rhythms, and meters. Both are built of quantized elements organized by symmetry groups.','The macroscale of cosmological structure is described by General Relativity, which governs systems of size ranging from the universe as a whole to gravitationally bound structures like the solar system. In musical terms, this corresponds to the large scale tonality and form of musical pieces. The harmonic relationships between sections in a piece of music are structured by the musical content in the same way the shape of the spacetime manifold is determined by its matter/energy content. There are musical analogs of the tensorial structures of the GR field equations.','Physics also uses a wide variety of tools to analyze \'intermediate\' structures - in other words, the physics of the human scale. These include the traditional tools of Newtonian mechanics, the vast field of condensed matter physics, and, of particular interest to us, the laws of thermodynamics and entropy. This the physics that we have the most direct physical experience of, and it corresponds to the dynamics of music as we hear it - the principles of melodic construction, rhythmic continuity, and local harmonic progression. The relation we will be focused on the most is that between consonance, dissonance, entropy, and the arrow of time.','The structure of the mappng:

    \r\nThe building blocks of music, a note as existing within a given scale and meter, are governed by principles akin to those of quantum field theory.

    \r\nThe large scale structure of music, the principles of tonal harmony and form, are governed by principles akin to those of general relativity.

    \r\n\r\nThe content of music as we hear it, a progression of melodies with particular rhythms and harmonies, is governed by principles akin to those of newtonian mechanics and the laws of thermodynamics.
    ','beginninglinks4','xshivax@hlpages@bodyc@beginninglinks@hlform'); /*!40000 ALTER TABLE `hpages` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `jjsfruittags` -- DROP TABLE IF EXISTS `jjsfruittags`; CREATE TABLE `jjsfruittags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `jjsfruittags` -- LOCK TABLES `jjsfruittags` WRITE; /*!40000 ALTER TABLE `jjsfruittags` DISABLE KEYS */; INSERT INTO `jjsfruittags` VALUES ('','',''),('','bodya'),('','bodyb'),('','bodyc'),('','bodyd'),('','bodye'),('
    ','bodye'); /*!40000 ALTER TABLE `jjsfruittags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `jpegtags` -- DROP TABLE IF EXISTS `jpegtags`; CREATE TABLE `jpegtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `jpegtags` -- LOCK TABLES `jpegtags` WRITE; /*!40000 ALTER TABLE `jpegtags` DISABLE KEYS */; INSERT INTO `jpegtags` VALUES ('
    ','bodya'),('
    ','bodyb'),('
    ','bodyc'),('
    ','bodyd'),('
    ','bodye'),('
    ','bodyf'),('','','meta'); /*!40000 ALTER TABLE `jpegtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `linkviewtags` -- DROP TABLE IF EXISTS `linkviewtags`; CREATE TABLE `linkviewtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `linkviewtags` -- LOCK TABLES `linkviewtags` WRITE; /*!40000 ALTER TABLE `linkviewtags` DISABLE KEYS */; INSERT INTO `linkviewtags` VALUES ('','pagename'),('','bodya'),('','bodyb'),('','bodyc'),('
    ','
    \r\n','
    ','
    ','
    ','
    ','bodyd'); /*!40000 ALTER TABLE `linkviewtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `luxebetatags` -- DROP TABLE IF EXISTS `luxebetatags`; CREATE TABLE `luxebetatags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `luxebetatags` -- LOCK TABLES `luxebetatags` WRITE; /*!40000 ALTER TABLE `luxebetatags` DISABLE KEYS */; INSERT INTO `luxebetatags` VALUES ('\n','title'),('','ts'),('','systems'),('','done'),('','what'),('
    ','
    ','
    ','
    ','
    ','
    ','
    ','links'),('
    __','
    ','fakeblank'); /*!40000 ALTER TABLE `luxebetatags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `makeformtags` -- DROP TABLE IF EXISTS `makeformtags`; CREATE TABLE `makeformtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `makeformtags` -- LOCK TABLES `makeformtags` WRITE; /*!40000 ALTER TABLE `makeformtags` DISABLE KEYS */; INSERT INTO `makeformtags` VALUES ('\r\n\r\n','',''); /*!40000 ALTER TABLE `makeformtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `maketabletags` -- DROP TABLE IF EXISTS `maketabletags`; CREATE TABLE `maketabletags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `maketabletags` -- LOCK TABLES `maketabletags` WRITE; /*!40000 ALTER TABLE `maketabletags` DISABLE KEYS */; INSERT INTO `maketabletags` VALUES ('
    \r\n

    \r\nAdd a new form definition\r\n


    \r\n
    \r\nName of form?
    \r\n\r\n

    Header?
    \r\n\r\n

    Footer?
    \r\n
    \r\n
    What Tagtable should be used to build the page?
    \r\n\r\n

    \r\n\r\n
    \r\n
    \r\n

    Create a new table\r\n


    \r\n
    \r\nName of new database?
    \r\n\r\n

    Database type?
    \r\n\r\n

    \r\n\r\n
    \r\n
    \r\n','',''); /*!40000 ALTER TABLE `maketabletags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `menusearchtags` -- DROP TABLE IF EXISTS `menusearchtags`; CREATE TABLE `menusearchtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `menusearchtags` -- LOCK TABLES `menusearchtags` WRITE; /*!40000 ALTER TABLE `menusearchtags` DISABLE KEYS */; INSERT INTO `menusearchtags` VALUES ('
    \r\n\r\n
    ','pagename'),('
    ','bodya'),('
    \r\n','bodyb'),('
    ','bodyc'),('
    ','bodyd'),('
    \r\n
    ','
    ','\r\n','\r\n\r\n\r\n','\r\n\r\n\r\n','\r\n
    \r\n
    ','bodye'); /*!40000 ALTER TABLE `menusearchtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `menutags` -- DROP TABLE IF EXISTS `menutags`; CREATE TABLE `menutags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `menutags` -- LOCK TABLES `menutags` WRITE; /*!40000 ALTER TABLE `menutags` DISABLE KEYS */; INSERT INTO `menutags` VALUES ('\r\n\r\n\r\n\r\n
    \r\nData browser
    Table?\r\nData field?Search for?\r\n\r\n',''),('Display method?
    ','
    ',''); /*!40000 ALTER TABLE `menutags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `meta2coltags` -- DROP TABLE IF EXISTS `meta2coltags`; CREATE TABLE `meta2coltags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `meta2coltags` -- LOCK TABLES `meta2coltags` WRITE; /*!40000 ALTER TABLE `meta2coltags` DISABLE KEYS */; INSERT INTO `meta2coltags` VALUES ('','','meta'),('','',''); /*!40000 ALTER TABLE `meta2coltags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `meta2coltagsz` -- DROP TABLE IF EXISTS `meta2coltagsz`; CREATE TABLE `meta2coltagsz` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `meta2coltagsz` -- LOCK TABLES `meta2coltagsz` WRITE; /*!40000 ALTER TABLE `meta2coltagsz` DISABLE KEYS */; INSERT INTO `meta2coltagsz` VALUES ('','','meta'),('','',''); /*!40000 ALTER TABLE `meta2coltagsz` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `newbetatags` -- DROP TABLE IF EXISTS `newbetatags`; CREATE TABLE `newbetatags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `newbetatags` -- LOCK TABLES `newbetatags` WRITE; /*!40000 ALTER TABLE `newbetatags` DISABLE KEYS */; INSERT INTO `newbetatags` VALUES ('
    ','
    ','title'),('','','what'),('','','ts'),('','','links'); /*!40000 ALTER TABLE `newbetatags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `notetags` -- DROP TABLE IF EXISTS `notetags`; CREATE TABLE `notetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `notetags` -- LOCK TABLES `notetags` WRITE; /*!40000 ALTER TABLE `notetags` DISABLE KEYS */; INSERT INTO `notetags` VALUES ('

    ','

    ','pagename'),('','
    ','bodya'),('

    ','

    ','bodyb'),('

    ','

    ','bodyc'),('

    ','

    ','bodyd'),('

    ','

    \r\n
    \r\n
    ','bodye'),('
    \r\n','\r\n','bodyf'),('','','meta'); /*!40000 ALTER TABLE `notetags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `pdebrowsertags` -- DROP TABLE IF EXISTS `pdebrowsertags`; CREATE TABLE `pdebrowsertags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `pdebrowsertags` -- LOCK TABLES `pdebrowsertags` WRITE; /*!40000 ALTER TABLE `pdebrowsertags` DISABLE KEYS */; INSERT INTO `pdebrowsertags` VALUES ('','',''),('\r\n','bodya'),('\r\n','bodyb'),('\r\n','bodyc'),('\r\n','bodyd'),('
    \r\n','
    \r\ntargettable?\r\n
    \r\n','targetvar?\r\n
    \r\n','targetdef?\r\n
    \r\n','pagetype?\r\n
    \r\n','\r\n
    \r\n','bodye'); /*!40000 ALTER TABLE `pdebrowsertags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `pootlog` -- DROP TABLE IF EXISTS `pootlog`; CREATE TABLE `pootlog` ( `ts` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `entry` varchar(1000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `pootlog` -- LOCK TABLES `pootlog` WRITE; /*!40000 ALTER TABLE `pootlog` DISABLE KEYS */; INSERT INTO `pootlog` VALUES ('2006-11-28 02:52:12','Pootlog created! The pootlog is a fast and easy way to make notes and retrieve them. The pootlog is a database which saves user-entered text and automatically adds a timestamp. All functions initially activated by command \\\"pootn\\\" and password \\\"poot\\\".'),('2006-11-28 03:20:22','Refined and tweaked pootlog interface in the command module. Pootlog is currently danker than Quicklog, so next project will be backporting the pootlog Command Module. I should really take this chance to unify the codebase and just grab environmental variables to determine which table to query. -admin'),('2006-12-02 04:18:43','This is an initial demonstration of pootlog functionality being given live to the Original Pootmeister.'),('2006-12-02 04:52:29','Instructions to start making test web pages: 1) Open terminal window. 2) Navigate to your desktop. (cd ~/Desktop) 3) start a text editor (nano filename.htm) 4) write the page 5) Save with ctrl-o 6) use firefox to Open File and browse til you find /home/Desktop/filename.htm *** for more help on step 4 try doing a web search for beginning html etc. A sample simple web page is next in the pootlog.'),('2006-12-02 04:54:57','TheTitleHeres the body *** note that this will display ALL FUCKED UP if at all in the pootlog so PLEASE use an external html reference also. ***'); /*!40000 ALTER TABLE `pootlog` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `quicklog` -- DROP TABLE IF EXISTS `quicklog`; CREATE TABLE `quicklog` ( `ts` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `entry` varchar(1000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `quicklog` -- LOCK TABLES `quicklog` WRITE; /*!40000 ALTER TABLE `quicklog` DISABLE KEYS */; INSERT INTO `quicklog` VALUES ('2006-11-27 10:46:44','Table created from the command line'),('2006-11-27 12:12:57','Attempting first test of web-based log entry.'),('2006-11-27 12:44:19','Templating completed, debugging now.'),('2006-11-27 15:43:55','Created a gzipped tarball of my entire web directory and emailed it to myself to create a portable backup archive. Used MySQL command line to remove a few repetitive early glitch test entries from this log. Next major goal is to implement a multi-modal search engine for Quicklog.'),('2006-11-27 13:15:56','Enhanced log entry template, squashed various bugs. Happy to announce that the Quicklog feature for adding and viewing brief log entries is now a functional v1.0! Still need to exhaustively test security and error-proof. Summary of features:\r\n* Quicklog is a simple implementation of a two column MySQL database. Column one is a timestamp added automatically and column two is a free text space.\r\n* Quicklog can add new entries or retrieve the entire list to date.\r\n* Quicklog is password protected and implements safe string handling.'),('2006-11-27 13:36:51','Discovered security loophole due to sloppy/inexperienced PHP coding experience, working on eliminating. Problem is with a user without database privileges linking to a database page directly WITHOUT using a POST link and being served information because postdata variables still have information from a privileged user. Testing attempted solution via adding in \\\'null\\\' overwrite at end of PHP code that uses the variable.'),('2006-11-27 13:53:40',''),('2006-11-27 14:00:28','Amusingly enough, last log entry was serendipitously highly informative. It revealed two things: 1) I am successfully clearing the postdata and 2) I need to get my text variable out of the post array BEFORE I erase it. Heh. The testing continues.'),('2006-11-27 14:40:56','Testing proxified web access to log feature. I think I have my php database security code all squared away, but a thorough re-examination of all website code dealing with posted data is in order. Good lesson in proper programming hygeine. Both HTML and PHP are designed to be very forgiving which can create bad habits and let bugs and security flaws slide by unnoticed.'),('2006-11-27 14:59:55','Added standard character masking on password entry blanks. Note that this is not encrypted/secure, just a visual mask at the user terminal. Encryption of passwords not necessary for Quicklog access.'),('2006-11-27 15:47:42','Created a gzipped tarball of my web directory and emailed it to myself to create portable backup archive. Used MySQL command line to remove a few early glitch test log entries. Next project is creating a search engine with date & phrase finding capability.'),('2006-11-27 16:40:52','Updated status pages\\\' HTML with manual text entry. Quicklog is a nice tool but the database and query structure is basically as primitive as the song table. Design specs for the full beta coming up!'),('2006-11-27 17:47:35','Beta design specs: Database has fields for time, involved components, change title, description, reference to other changes, links to external web documents, and whether the involved issue is still open.'),('2006-11-27 17:28:52','Discovered security flaw in Quicklog of allowing HTML and PHP tags. Implemented strip_tags to fix, testing now.'),('2006-11-27 18:01:33','Beta design specs: Project status pages will be generated dynamically from the database via user-modifiable but pre-templated search queries. Detailed editing and querying available from keyboard input. Well-formatted user input and data display pages.'),('2006-11-27 18:10:26','Beta design specs: Implement multiple user system with variable privilege levels. There are several ways to do this, research and implement this in last phase of beta, possibly delay til v1.0. Develop shell scripts to monitor access and usage logs for all services.'),('2006-11-27 19:47:07','Noted log anomaly. 4th entry from top, ts 2006-11-27 09:43:55 is out of chronological sequence. Was this caused by the database \\\'filling in\\\' records left blank by deletion? A chronological sort might be useful in the query field if so.'),('2006-11-27 20:18:24','While debugging and standardizing, noted a bug. Fix was to rename a page from htm extension to php. All php code in pages with htm extension simply ignored? Research.'),('2006-11-27 20:44:56','Added search feature to Quicklog! A global search for all entries containing specified text has been added to the command module. If this were a pay website, I would now be creating annoying popup ads for \\\"Upgrade to Quicklog Gold! Enjoy search power for just 4.99 a month!\\\"'),('2006-11-27 20:58:00','CONCEPT ALPHA: ShivaWeb development toolkit. Use the self-modifying and documenting features to be implemented in this website as a template for creating a kit designed to make it easy to \\\'bootstrap\\\' a web server setup from extremely basic to very advanced functionality in a manner completely determined by the end user.'),('2006-11-27 21:24:49','Added command entry line to multiple interactive pages. Should probably add to templates page, but holding off. Beta will probably need multiple templates created, which I\\\'m already doing on an ad-hoc basis via copy+paste.'),('2006-11-27 21:32:21','Tested new distributed control via command module form additions, website use efficiency is now high. Experienced user can quickly navigate Quicklog use and search via keyboard commands.'),('2006-11-27 22:22:17','Updated the general navigation footer for better appearance and space efficiency. Page now uses nested tables, so display compatibility with various browsers should be tested. Consider using scripts for global update, somehow?'),('2006-11-28 03:05:03','Created a second database that mirrors the functionality of Quicklog, to enable a different site user to keep a separate log file. Implemented a single unified command module interface for that user. Security note: this database is a different table within the same overall web accessible database.'),('2006-11-28 04:41:09','Successfully downloaded and unzipped tarballed web directory to separate machine. Experimented with viewing pages on a non-php or mysql equipped machine. After a few more refinements, the basic functionality of this version will probably be locked down, and code development will move to a separate beta-test directory. This stable, functional alpha may also provide a basic outline for a future minimal portable install of the site, once the dynamic page generation facility is backported.'),('2006-11-28 07:14:16','Did a global backup of all databases and one of web-specific using the mysqldump command. Combination of database dump and web directory tar.gz and use of external storage (mail attachment via free web mail) should mean that entire website is archived in an independent location.'),('2006-11-28 12:55:15','Added beta design database, spent a long time debugging copypasta\\\'d link dependencies. Getting BASH batch editing scripts written is definitely a priority. Any work tomorrow though should be on beta design documents'),('2006-11-28 23:30:29','We visited. We wrote. We hope not to damage anything. We leave now.\r\nM & D'),('2006-11-28 23:33:00','We visited. We aren\\\'t sure what we are doing.'),('2006-11-28 23:42:36','Verified that external visitors can access full site functionality. See above entries. HI MOM! :)'),('2006-12-01 22:43:14','Most work being done currently is focused on beta design. Alpha is being subjected to a variety of tests (remote users, more extended uptime, multiple simultaenous users). Alpha has funtioned perfectly so far, but I can\\\'t take credit. Those tests are basically dependent on the fundamental LAMP programming, not anything I\\\'ve done.'),('2006-12-02 04:16:26','This is a demonstration log entry to show the awesome power of a fully functional Quicklog.'),('2006-12-02 09:34:33','The beta database is now online and linked from the beta design center. Consequently, this log will no longer serve as the primary center for information about changes to this site. Quicklog is now retired to archival/test/demo status. It might be useful to test various search subroutines before they are added to beta. Quicklog also may be used as a backup log system if beta becomes temporarily unusable due to misconceived changes!'),('2007-01-05 21:51:13','testing, testing, is this thing on?'); /*!40000 ALTER TABLE `quicklog` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `quicktags` -- DROP TABLE IF EXISTS `quicktags`; CREATE TABLE `quicktags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `quicktags` -- LOCK TABLES `quicktags` WRITE; /*!40000 ALTER TABLE `quicktags` DISABLE KEYS */; INSERT INTO `quicktags` VALUES ('','entry'),('
    ','','
    ','ts'); /*!40000 ALTER TABLE `quicktags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `sampletags` -- DROP TABLE IF EXISTS `sampletags`; CREATE TABLE `sampletags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `sampletags` -- LOCK TABLES `sampletags` WRITE; /*!40000 ALTER TABLE `sampletags` DISABLE KEYS */; INSERT INTO `sampletags` VALUES ('
    ','
    ','title'),('
    ','
    ','what'),('
    Escape to home','
    ','systems'),('','',''); /*!40000 ALTER TABLE `sampletags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `searchtags` -- DROP TABLE IF EXISTS `searchtags`; CREATE TABLE `searchtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `searchtags` -- LOCK TABLES `searchtags` WRITE; /*!40000 ALTER TABLE `searchtags` DISABLE KEYS */; INSERT INTO `searchtags` VALUES ('','pagename'),('','bodya'),('','bodyb'),('','bodyc'),('','',''),('','',''),('','',''),('','',''),('','',''),('','',''),('','',''),('','',''),('','',''); /*!40000 ALTER TABLE `searchtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `semiblanktags` -- DROP TABLE IF EXISTS `semiblanktags`; CREATE TABLE `semiblanktags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `semiblanktags` -- LOCK TABLES `semiblanktags` WRITE; /*!40000 ALTER TABLE `semiblanktags` DISABLE KEYS */; INSERT INTO `semiblanktags` VALUES ('','','pagename'),('','','bodya'),('','','bodyb'),('','','bodyc'),('','','bodyd'),('','','bodye'),('','','bodyf'),('','','meta'),('','','pagetype'),('','','tagindex'),('','','open'),('','','close'),('','','varname'); /*!40000 ALTER TABLE `semiblanktags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `slpages` -- DROP TABLE IF EXISTS `slpages`; CREATE TABLE `slpages` ( `pagename` varchar(1000) default NULL, `bodya` varchar(1000) default NULL, `bodyb` varchar(1000) default NULL, `bodyc` varchar(1000) default NULL, `bodyd` varchar(1000) default NULL, `bodye` varchar(1000) default NULL, `bodyf` varchar(1000) default NULL, `meta` varchar(1000) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `slpages` -- LOCK TABLES `slpages` WRITE; /*!40000 ALTER TABLE `slpages` DISABLE KEYS */; INSERT INTO `slpages` VALUES ('PDE Search form','gpages','meta','break','pdebrowserform','','',''),('Beta log in stinger format','beta','what','.','bstingerform','','',''),('Turbo Hotlink Creator','gpages','meta','break','turbolinkform','','','gpage wrapper hotlinks'),('Beta and PDE info','gpages','pagename','beta 1.0','turbogpageform','','',''),('Titles of all beta data entries','beta','title','','titleform','','','turbolink all beta titles'),('Pagenames of all gpages','gpages','pagename','','titleform','','','turbolink all pagenames gpages'),('Introduction to this system','gpages','pagename','introduction','turbogpageform','','','introduction shiva turbolink'),('Evolution of the interface','beta','systems','interface','bstingerform','','','beta interface turbolink'),('development of the Page Display Engine','beta','systems','pde','bstingerform','','','beta pde history turbolink'),('Turbo link source viewer','slpages','bodya','','linkviewform','','','slpages viewer turbolink'),('Admin tool: view form types','testform','pagetype','','adminviewform','','','admin turbolink testform '),('Quick look at the first 4 body fields in gpages entries','gpages','bodyc','e','linkviewform','','','turbolink brief gpages'),('Test beta posts','beta','systems','test','bstingerform','','','turbolink test beta archive'),('Menu powered browser','gpages','meta','pdemenubrowserform1','menusearchform','','','turbolink pde menu browser search'),('Purpose and content summary 12-07','gpages','pagename','12-07','turbogpageform','','','turbolink 12-07 shiva summary'),('System summary in simple format','gpages','pagename','system summary 12-07','gpsimpleform','','','turbolink simple 12-07 system summary'),('General Info Pages','slpages','bodyb','pagename','slform','','','turbolink turbolinks using pagename to search by'),('Vahlens favorites','gpages','pagename','e','gpsimpleform','','','demo turbolink from chad\'s house'),('

    This is probably the best button to push

    ','slpages','bodya','slpages','slform','','','turbolink metameta search turbolinks meta'),('

    Generic Page Hot Links

    ','slpages','bodya','gpages','slform','','','turbolink metasearch gpages turbolinks'),('

    Generic Page Maker

    ','gpages','meta','break','gpeditform','','','turbolink gpeditform'),('

    Table Creator

    ','gpages','meta','break','maketableform','','','turbolink maketableform'),('Random format demonstration link','gpages','pagename','random','demopageform','','','random link demo turbolinks'),('Zoellners Fruits','gpages','pagename','zoe','demopageform','','','gpages\r\n \r\npagename\r\n \r\nzoe\r\n \r\ndemopageform'),('Link to all beta search hotlinks','slpages','bodya','beta','slform','','','turbolink metasearch beta turbolinks'),('PHP system related beta entries','beta','systems','php','bstingerform','','','turbolink beta php'),('MySQL system beta entries','beta','systems','mysql','bstingerform','','','turbolink beta mysql'),('Combined system intro pages in simple format','gpages','bodyc','the','gpsimpleform','','','turbolink intro system pages'),('

    Create page form

    ','gpages','meta','break','makeformform','','','turbolink makeformform'),('

    Add tag to table

    ','gpages','meta','break','tagmakerform','','','turbolink tagmakerform'),('

    Content editing and creation tools

    ','slpages','bodyc','break','slform','','','turbolink meta admin tools'),('12-08 Plan Update','gpages','pagename','plan update info','gpsimpleform','','','turbolink 12-08 shiva plan update gpsimpleform'),('mysql tables admin info','gpages','pagename','tables','turbogpageform','','','turbolink admin mysql tables info'),('Shiva web software development','beta','what','shiva','bstingerform','','','turbolink search beta shiva info'),('Shiva systems related log entries','beta','systems','shiva','bstingerform','','','turbolink search beta shiva systems info'),('Beta news in neon','beta','title','beta','betasmudgeform','','','turbolink new beta tags neon'),('

    Neon System Info

    ','gpages','bodyc','the','gpsmudgeform','','','turbolink neon system info gpsmudgeform bodyc the'),('

    Instructions for Beginners

    ','gpages','pagename','instruction','turbogpageform','','','turbolink instructions intro info shiva beta'),('View archive of pre-beta quicklog','quicklog','entry','','quickform','','','turbolink quicklog archive'),('Archive of pre-beta design file','betalog','entry','','quickform','','','turbolink betalog archive quickform'),('The FU LAMP, FOSS, and Shiva link','gpages','pagename','fu lamp','gpsmudgeform','','','turbolink fu lamp shiva gpsmudgeform'),('PDE technical information','gpages','pagename','technical','gpsmudgeform','','','turbolink technical information neon'),('New Fruit Page','gpages','pagename','jjs fruit','jjsfruitform','','','gpages\r\npagename\r\njjs fruit\r\njjsfruitform'),('Shiva design information 1','gpages','pagename','shiva design information 1','gpsmudgeform','','','turbolink shiva design information 1 gpsmudgetags'),('Beta entries dated 12-02','beta','ts','12-02','betasmudgeform','','','turbolink beta date neon'),('Beta entries dated 12-03','beta','ts','12-03','betasmudgeform','','','turbolink beta date neon 12-03'),('Beta entries dated 12-04','beta','ts','12-04','betasmudgeform','','','turbolink beta date neon 12-04'),('Beta entries dated 12-05','beta','ts','12-05','betasmudgeform','','','turbolink beta date neon 12-05'),('Beta entries dated 12-06','beta','ts','12-06','betasmudgeform','','','turbolink beta date neon 12-06'),('Beta entries dated 12-07','beta','ts','12-07','betasmudgeform','','','turbolink beta date neon 12-07'),('Beta entries dated 12-08','beta','ts','12-08','betasmudgeform','','','turbolink beta date neon 12-08'),('Beta entries dated 12-09','beta','ts','12-09','betasmudgeform','','','turbolink beta date neon 12-09'),('

    Log entries by date

    ','slpages','pagename','entries dated','slform','','','turbolink meta dated beta entries'),('Beta entries dated 12-10','beta','ts','12-10','betasmudgeform','','','turbolink beta search entries dated 12-10'),('Shiva design info 2','gpages','pagename','shiva design information 2','gpsmudgeform','','','turbolink shiva design info 2'),('Shiva design info 3 - PDE 2 concept','gpages','pagename','shiva design information 3','gpsimpleform','','','turbolink shiva design info 3 pde 2 concepts'),('Shiva design files','slpages','bodyc','shiva design','slform','','','turbolink meta shiva design files'),('Shiva design information 4: Automation','gpages','pagename','shiva design information 4','gpsmudgeform','','','turbolink shiva design information 4'),('

    All Shiva design info in simple format

    ','gpages','pagename','shiva design','gpsimpleform','','','turbolink shiva design info'),('Shiva design info 5: needed tools','gpages','pagename','shiva design information 5','gpsmudgeform','','','turbolink shiva design info 5 needed tools'),('Beta entries dated 12-11','beta','ts','12-11','betasmudgeform','','','turbolink beta entries dated 12-11'),('New Nav menu using PDE recursion','gpages','pagename','menu test','gpsimpleform','','','turbolink recursive menu test'),('Hotlink powered gpages','gpages','meta','@slform','gpsimpleform','','','turbolink meta hotlink powered gpages'),('

    Giant meta-page demo

    ','gpages','pagename','recursivemetabuild','gpsimpleform','','','turbolink recursive megapage'),('Info demo of PDE 2.0 recursive','gpages','pagename','recursivemetabuild5','gpsimpleform','','','turbolink pde 2.0 info demo recursive'),('

    Some recursive pages

    ','slpages','bodyc','recur','slform','','','turbolink meta recursive '),('Beta entries dated 12-12','beta','ts','12-12','betasmudgeform','','','turbolink beta 12-12'),('Shiva design info 6: free recursive PDE','gpages','pagename','shiva design information 6','gpsimpleform','','','turbolink shiva design info 6'),('

    Danger! Massive gpages formless dump!!

    ','gpages','pagename','','semiblankform','','','turbolink megadump gpages formless'),('Beta entries dated 12-13','beta','ts','12-13','betasmudgeform','','','turbolink beta 12-13'),('Shiva design info 7: refining PDE','gpages','pagename','shiva design information 7','gpsimpleform','','','turbolink shiva design info 7'),('PDE 2 technical information (recursive edition)','gpages','pagename','pde 2 technical information','gpsimpleform','','','turbolink pde 2 technical info recursive'),('Beta entries dated 12-14','beta','ts','12-14','betasmudgeform','','','turbolink beta 12-14'),('Shiva design info 8: PDE 3 coding','gpages','pagename','shiva design information 8','gpsimpleform','','','turbolink shiva design info 8 pde 3'),('Beta entries dated 12-15','beta','ts','12-15','betasmudgeform','','','turbolinks beta 12-15'),('Beta entries dated 12-16','beta','ts','12-16','betasmudgeform','','','turbolink beta 12-16'),('

    FREESPECT on gNewSense Announcement

    ','gpages','pagename','FREESPECT and the gNew','gpsimpleform','','','turbolink freespect gnewsense announcement'),('

    Freespect + gNewSense picture gallery

    ','gpages','pagename','Freespect + gnewsense screenshot','jpegform','','','turbolink gallery freespect gnewsense'),('

    The GPL Version 2

    ','gpages','pagename','GPL 2 Preamble','gpsimpleform','','','turbolink GPL version 2'),('The Four Freedoms of Free Software','gpages','pagename','The Four Freedoms','gpsimpleform','','','turbolink four freedoms of free software'),('Beta entries dated 12-17','beta','ts','12-17','betasmudgeform','','','turbolink beta 12-17'),('Beta entries dated 12-18','beta','ts','12-18','betasmudgeform','','','turbolink beta 12-18'),('Beta entries dated 12-19','beta','ts','12-19','betasmudgeform','','','turbolink beta 12-19'),('Beta entries dated 12-20','beta','ts','12-20','betasmudgeform','','','turbolink beta 12-20'),('Beta entries dated 12-2x','beta','ts','12-2','bstingerform','','','turbolinks beta 12-2x bstinger'),('Beta entries dated 12-1x','beta','ts','12-1','bstingerform','','','turbolink beta 12-1x'),('hardware instalation notes','gpages','pagename','hardware','gpsimpleform','','','hardware installation notes archive'),('business idea notes','gpages','pagename','business model notes','gpsimpleform','','','business idea and prices'),('january 07 beta entries','beta','ts','2007-01','betasmudgeform','','','january beta entries in betasmudgeform'),('February beta entries','beta','ts','2007-02','betasmudgeform','','','february 97 beta entries in betasmudgeform'),('March beta entries','beta','ts','2007-03','betasmudgeform','','','march 07 beta log hotlink'),('Server notes','beta','title','server','bstingerform','','',''),('Lady and Kitty','gpages','pagename','carrie','jpegform','','','six pictures'),('Lady and the Cat','gpages','pagename','carrie','jpegform','','','six pictures'),('Ideas for public page','gpages','pagename','public','gpsimpleform','','',''),('Upgrade info','gpages','pagename','upgrade','gpsimpleform','','','turbo hotlink upgrade info gpages'),('Initial motivations','hpages','pagename','signpost','blueform2','','',''),('This website powered by Freespect','hpages','pagename','freespect','spform','','','freespect hpages link'),('A metric for musical space','hpages','pagename','metric','blueform2','','','hpages metric link'),('Introductory materials','hpages','bodyf','beginninglinks1','spform','','','beginninglinks link'),('Quantum elements in music','hpages','pagename','quant','spform','','','quantum elements link'),('Schrodinger\'s Chord: Uncertainty','hpages','pagename','uncertain','spform','','','uncertainty link'),('Musical levels and phase transitions','hpages','bodyf','beginninglinks2','spform','','','phase transition beginninglinks link'),('Freedom in the electronic age','hpages','pagename','Free thought','spform','','',''),('Cyclical time and rhythm','hpages','bodyf','beginninglinks3','noteform1','','','link cyclical rhythm beginninglinks3'),('Update tables carefully!','gpages','meta','break','updateform','','','link update table'),('beta entries from 2008','beta','ts','2008','betasmudgeform','','','hotlink 2008 beta entries'),('An overview of the mapping','hpages','bodyf','beginninglinks4','noteform1','','','link overview of mapping beginninglinks4'),('Add form to any form table','gpages','meta','break','makeanyform','','','add forms to any table link'); /*!40000 ALTER TABLE `slpages` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `sltags` -- DROP TABLE IF EXISTS `sltags`; CREATE TABLE `sltags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `sltags` -- LOCK TABLES `sltags` WRITE; /*!40000 ALTER TABLE `sltags` DISABLE KEYS */; INSERT INTO `sltags` VALUES ('

    ','

    ','

    ','

    ','
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \n
    \n
    \n','bodya'),('','bodyb'),('','bodyc'),('','bodyd'),('
    ','pagename'); /*!40000 ALTER TABLE `sltags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `song` -- DROP TABLE IF EXISTS `song`; CREATE TABLE `song` ( `name` varchar(20) default NULL, `composer` varchar(20) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `song` -- LOCK TABLES `song` WRITE; /*!40000 ALTER TABLE `song` DISABLE KEYS */; INSERT INTO `song` VALUES ('Dark Star','Garcia/Hunter'),('Playin in the Band','Weir'),('Phantasie','Schumann'),('A Day in the Life','Lennon/McCartney'),('Eroica Symphony','Beethoven'),('Das Rheingold','Wagner'),('Tool','The Pot'),('The Pot','Tool'),('Ghetto Life','Rick James'),('Summer Madness','Kool and the Gang'),('Crazy Train','Ozzy'),('Who needs the Peace ','Frank Zappa'),('Several species of s','Pink Floyd'),('Dichterliebe','Schumann'),('Waldscenen','Schumann'),('Die Walkure','Wagner'),('Siegfried','Wagner'),('Gotterdamerung','Wagner'),('\\\"Appasionata\\\" Sona','Beethoven'),('Missa Solemnis','Beethoven'),('This old man','Nursery Rhyme'),('Military polonaise','Chopin'),('Heaven','Bryan Adams'),('Everything I do','Bryan Adams'),('Summer of \\\'69','Bryan Adams'),('Wozzeck','Berg'),('Iolanthe','Gilbert & Sullivan'),('The Mikado','Gilbert & Sullivan'),('H.M.S. Pinafore','Gilbert & Sullivan'),('Ruddygore','Gilbert & Sullivan'),('The Pirates of Penza','Gilbert & Sullivan'),('Trial by Jury','Gilbert & Sullivan'),('The Gondoliers','Gilbert & Sullivan'),('Patience','Gilbert & Sullivan'),('Pelleas et Melisande','Debussy'),('The Grudge','Tool'),('Purple Bananas','Art Paul Schlosser'),('Titan Symphony','Mahler'),('Resurrection Symphon','Mahler'),('Das lied von der Erd','Mahler'),('Pour le Piano','Debussy'),('Unfinished Symphony','Schubert'),('Quintet in C','Schubert'),('Goldberg Variations','Bach'),('Eine Kleine Nachtmus','Mozart'),('Heroic Polonaise','Chopin'),('Transcendental Etude','Liszt'),('Water Music','Handel'),('Le Sacre du Printemp','Stravinsky'),('24 preludes and fugu','Shostakovich'),('Winterreise','Schubert'),('Choral Symphony','Beethoven'),('Don Giovanni','Mozart'),('Well tempered Clavie','Bach'),('Brandenburg Concerti','Bach'),('46+2','Tool'),('La Traviata','Verdi'),('Wachet Auf Cantata','Bach'),('Piano Concerto #1','Tchaikovsky'),('Violin Concerto','Brahms'),('6 Haydn Quartets','Mozart'),('Surprise Symphony','Haydn'),('Shropshire Lad','Grainger'),('Paganini Variations','Rachmaninov'),('Emperor Concerto','Beethoven'),('Revolutionary Etude','Chopin'),('Diabelli Variations','Beethoven'),('Requiem','Mozart'),('The Four Seasons','Vivaldi'),('Picture at an Exhibi','Mussorgsky'),('I Got Rhythm','Gershwin'),('Appalachian Spring','Copland, Aaron'),('st. matthew\'s passio','bach'); /*!40000 ALTER TABLE `song` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `sphereform` -- DROP TABLE IF EXISTS `sphereform`; CREATE TABLE `sphereform` ( `pagetype` varchar(100) character set latin1 default NULL, `header` varchar(10000) character set latin1 default NULL, `footer` varchar(10000) character set latin1 default NULL, `tagindex` varchar(100) character set latin1 default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `sphereform` -- LOCK TABLES `sphereform` WRITE; /*!40000 ALTER TABLE `sphereform` DISABLE KEYS */; INSERT INTO `sphereform` VALUES ('betatest','','
    ','testbetatags'),('newbeta','
    \n\n
    \nEnter a command code: \n
    \n\n\n
    \n
    \n Or go: \n
    \n\n
    \n','footer sucks','testbetatags'),('tablebeta','
    \n\n','
    \n\n

    PDE alpha template

    \nEnter a command code:
    \n\n
    Or go: \n
    \n\n

    work in progress
    \n','testbetatags'),('newtablebeta','
    \n\n\n','\n

    PDE alpha template

    \n\n

    \n
    \n

    \n
    \n
    Enter a command code: \n
    \n\n\n
    Or go: \n
    \n\n
    \n','newbetatags'),('textdump','
    \n\n\n\n

    PDE alpha template

    \n','
    \n
    \n
    Enter a command code: \n
    \n\n\n
    Or go: \n
    \n\n
    ','textbetatags'),('betaluxe','
    \n\n

    \n

    Page Display Engine

    ','\n
    \n

    Another Search

    New beta entry\n

    Projects Central

    \n
    ','luxebetatags'),('bootstraptest','
    \n\n

    \n

    Page Display Engine

    \n','\n
    \n

    Another Search

    New beta entry\n

    Projects Central

    \n
    \n','sampletags'),('betasmudgeform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','betasmudgetags'),('gpageform','
    \n\n

    \n

    Page Display Engine

    ','\n
    \n

    Another Search

    New beta entry\n

    Projects Central

    \n
    ','gpagetags'),('betagpform','
    \r\n\r\n\r\n','\r\n\r\n
    \r\n
    Page Display Engine
    \r\n
    Find pages
    Make page
    \r\n\r\n

    Enter a command code:
    \r\n
    Or go:
    ','betagptags'),('betaform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','luxebetatags'),('searchform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','searchtags'),('bdataentryform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bdataentrytags'),('pdebrowserform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','pdebrowsertags'),('hotbeta','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','luxebetatags'),('betablacklinks','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','luxebetatags'),('bstingerform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bstingertags'),('bdataxform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bdataentrytags'),('tagmakerform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','tagmakertags'),('makeformform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','makeformtags'),('maketableform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','maketabletags'),('gpeditform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpedittags'),('slform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','sltags'),('turbolinkform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','turbolinktags'),('turbogpageform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','betagptags'),('titleform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','titletags'),('pdexform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\r\n\r\n\r\n
    \r\nData browser
    Table?\r\nData field?Search for?\r\n\r\n\r\nDisplay method?
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n

    \r\nEnter a command code: \r\n
    \r\n\r\n\r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\ngpages
    \r\nmeta
    \r\nbreak
    \r\nbdataxform
    ','pdebrowsertags'),('linkviewform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','linkviewtags'),('searchxform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\r\n\r\n\r\n
    \r\nData browser
    Table?\r\nData field?Search for?\r\n\r\n\r\nDisplay method?
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n

    \r\nEnter a command code: \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\ngpages
    \r\nmeta
    \r\nbreak
    \r\nbdataxform
    ','searchtags'),('adminviewform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','adminviewtags'),('jpegform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','jpegtags'),('menusearchform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','menusearchtags'),('gpsimpleform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpsimpletags'),('demopageform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','demopagetags'),('gpsmudgeform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpsmudgetags'),('quickform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','quicktags'),('whiteform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','whitetags'),('jjsfruitform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','jjsfruittags'),('menuform','','','menutags'),('freelinkform','','','freelinktags'),('gp3x2form','','','gp3x2tags'),('meta2colform','','','meta2coltags'),('meta2colformz','','','meta2coltagsz'),('semiblankform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','semiblanktags'),('tagform','','','tagtags'),('gpopenform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpopentags'),('blueform','
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bluetags'),('hlform','
    \"logo\"\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    ','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nOptions:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    ','sltags'),('noteform1','\r\n
    \"logo\"\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    ','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nYour options:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    \r\n','notetags'),('blueform2','
    \"sphericalharmony\"
    ','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nOptions:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    ','bluetags'),('blueform3','
    ','\r\n\r\n\r\n\r\n\r\n
    \r\n

    \r\nOptions:

    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n

    \r\n
    sphericalharmony.com
    \r\n
    \r\n
    \r\n','bluetags'),('spform','\r\n
    \"logo\"\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    ','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nOptions:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    ','sptags'),('updateform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','updatetags'),('fsmoonform','\r\n
    \"logo\"\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    ','
    \n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    sphericalharmony.com
    \n
    \n
    \nYour current location in Freespect data space:
    \n
    )','notetags'),('fslform','\"logo\"\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n
    \n
    \n
    \n\n\n\n\n
    \n
    ','','','
    \n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    sphericalharmony.com
    \n
    \n
    \nYour current location in Freespect data space:
    \n
    )','sltags'),('fspform','\"logo\"\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n
    \n
    \n
    \n\n\n\n\n
    \n
    ','','ts'),('','what'),('','title'); /*!40000 ALTER TABLE `testbetatags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `testform` -- DROP TABLE IF EXISTS `testform`; CREATE TABLE `testform` ( `pagetype` varchar(100) default NULL, `header` varchar(10000) default NULL, `footer` varchar(10000) default NULL, `tagindex` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `testform` -- LOCK TABLES `testform` WRITE; /*!40000 ALTER TABLE `testform` DISABLE KEYS */; INSERT INTO `testform` VALUES ('betatest','
    \n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    sphericalharmony.com
    \n
    \n
    \nYour current location in Freespect data space:
    \n
    )','sptags'); /*!40000 ALTER TABLE `sphereform` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `sptags` -- DROP TABLE IF EXISTS `sptags`; CREATE TABLE `sptags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `sptags` -- LOCK TABLES `sptags` WRITE; /*!40000 ALTER TABLE `sptags` DISABLE KEYS */; INSERT INTO `sptags` VALUES ('

    ','

    ','pagename'),('\r\n
    \r\n\r\n
    ','
    \r\n
    ','bodya'),('

    ','

    ','bodyb'),('

    ','

    ','bodyc'),('

    ','

    ','bodyd'),('

    ','

    \r\n
    \r\n
    ','bodye'),('
    \r\n','\r\n','bodyf'),('','','meta'); /*!40000 ALTER TABLE `sptags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `tabletags` -- DROP TABLE IF EXISTS `tabletags`; CREATE TABLE `tabletags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `tabletags` -- LOCK TABLES `tabletags` WRITE; /*!40000 ALTER TABLE `tabletags` DISABLE KEYS */; INSERT INTO `tabletags` VALUES ('','','endrow'),('
    ','','start'),('','','midcell'),('
    ','','beginrow'),('
    ','','finish'); /*!40000 ALTER TABLE `tabletags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `tagmakertags` -- DROP TABLE IF EXISTS `tagmakertags`; CREATE TABLE `tagmakertags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `tagmakertags` -- LOCK TABLES `tagmakertags` WRITE; /*!40000 ALTER TABLE `tagmakertags` DISABLE KEYS */; INSERT INTO `tagmakertags` VALUES ('\r\n
    \r\n

    Add a tag to existing table\r\n


    \r\n
    \r\nName of tagtable?
    \r\n\r\n
    Opening tag?
    \r\n\r\n
    Closing tag?
    \r\n\r\n
    Apply this to what field?
    \r\n

    \r\n\r\n
    ','',''); /*!40000 ALTER TABLE `tagmakertags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `tagtags` -- DROP TABLE IF EXISTS `tagtags`; CREATE TABLE `tagtags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `tagtags` -- LOCK TABLES `tagtags` WRITE; /*!40000 ALTER TABLE `tagtags` DISABLE KEYS */; INSERT INTO `tagtags` VALUES ('','','open'),('','','close'); /*!40000 ALTER TABLE `tagtags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `testbetatags` -- DROP TABLE IF EXISTS `testbetatags`; CREATE TABLE `testbetatags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `testbetatags` -- LOCK TABLES `testbetatags` WRITE; /*!40000 ALTER TABLE `testbetatags` DISABLE KEYS */; INSERT INTO `testbetatags` VALUES ('
    ','
    ','

    ','

    ','
    ','testbetatags'),('newbeta','
    \n\n
    \nEnter a command code: \n
    \n\n\n
    \n
    \n Or go: \n
    \n\n
    \n','footer sucks','testbetatags'),('tablebeta','
    \n\n','
    \n\n

    PDE alpha template

    \nEnter a command code:
    \n\n
    Or go: \n
    \n\n

    work in progress
    \n','testbetatags'),('newtablebeta','
    \n\n\n','\n

    PDE alpha template

    \n\n

    \n
    \n

    \n
    \n
    Enter a command code: \n
    \n\n\n
    Or go: \n
    \n\n
    \n','newbetatags'),('textdump','
    \n\n\n\n

    PDE alpha template

    \n','
    \n
    \n
    Enter a command code: \n
    \n\n\n
    Or go: \n
    \n\n
    ','textbetatags'),('betaluxe','
    \n\n

    \n

    Page Display Engine

    ','\n
    \n

    Another Search

    New beta entry\n

    Projects Central

    \n
    ','luxebetatags'),('bootstraptest','
    \n\n

    \n

    Page Display Engine

    \n','\n
    \n

    Another Search

    New beta entry\n

    Projects Central

    \n
    \n','sampletags'),('betasmudgeform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','betasmudgetags'),('gpageform','
    \n\n

    \n

    Page Display Engine

    ','\n
    \n

    Another Search

    New beta entry\n

    Projects Central

    \n
    ','gpagetags'),('betagpform','
    \r\n\r\n\r\n','\r\n\r\n
    \r\n
    Page Display Engine
    \r\n
    Find pages
    Make page
    \r\n\r\n

    Enter a command code:
    \r\n
    Or go:
    ','betagptags'),('betaform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','luxebetatags'),('searchform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','searchtags'),('bdataentryform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bdataentrytags'),('pdebrowserform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n
    \nFind pages
    Make page\n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','pdebrowsertags'),('hotbeta','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','luxebetatags'),('betablacklinks','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','luxebetatags'),('bstingerform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bstingertags'),('bdataxform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bdataentrytags'),('tagmakerform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','tagmakertags'),('makeformform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','makeformtags'),('maketableform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','maketabletags'),('gpeditform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpedittags'),('slform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','sltags'),('turbolinkform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','turbolinktags'),('turbogpageform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','betagptags'),('titleform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','titletags'),('pdexform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\r\n\r\n\r\n
    \r\nData browser
    Table?\r\nData field?Search for?\r\n\r\n\r\nDisplay method?
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n

    \r\nEnter a command code: \r\n
    \r\n\r\n\r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\ngpages
    \r\nmeta
    \r\nbreak
    \r\nbdataxform
    ','pdebrowsertags'),('linkviewform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','linkviewtags'),('searchxform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\r\n\r\n\r\n
    \r\nData browser
    Table?\r\nData field?Search for?\r\n\r\n\r\nDisplay method?
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n

    \r\nEnter a command code: \r\n
    \r\n\r\n\r\n
    \r\n\r\n\r\n\r\n
    \r\ngpages
    \r\nmeta
    \r\nbreak
    \r\nbdataxform
    ','searchtags'),('adminviewform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','adminviewtags'),('jpegform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','jpegtags'),('menusearchform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','menusearchtags'),('gpsimpleform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpsimpletags'),('demopageform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','demopagetags'),('gpsmudgeform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpsmudgetags'),('quickform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','quicktags'),('whiteform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','whitetags'),('jjsfruitform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','jjsfruittags'),('menuform','','','menutags'),('freelinkform','','','freelinktags'),('gp3x2form','','','gp3x2tags'),('meta2colform','','','meta2coltags'),('meta2colformz','','','meta2coltagsz'),('semiblankform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','semiblanktags'),('tagform','','','tagtags'),('gpopenform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','gpopentags'),('blueform','
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','bluetags'),('hlform','
    \"sphericalharmony\"','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nOptions:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    ','sltags'),('noteform1','
    \"sphericalharmony.com\"','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nYour options:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    \r\n','notetags'),('blueform2','
    \"sphericalharmony\"
    ','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nOptions:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    ','bluetags'),('blueform3','
    ','\r\n\r\n\r\n\r\n\r\n
    \r\n

    \r\nOptions:

    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n

    \r\n
    sphericalharmony.com
    \r\n
    \r\n
    \r\n','bluetags'),('spform','\r\n
    \r\n','\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\nOptions:
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    sphericalharmony.com
    \r\n
    ','sptags'),('updateform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','updatetags'),('makeanyform','
    \n\n
    \n
    Page Display Engine
    \n
    ','\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n\n\n\n
    \n
    \n
    \n\n

    \nEnter a command code: \n
    \n\n\n
    ','anyformtags'),('fsmoonform','\r\n
    \"logo\"\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    ','fsfooter','notetags'); /*!40000 ALTER TABLE `testform` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `textbetatags` -- DROP TABLE IF EXISTS `textbetatags`; CREATE TABLE `textbetatags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `textbetatags` -- LOCK TABLES `textbetatags` WRITE; /*!40000 ALTER TABLE `textbetatags` DISABLE KEYS */; INSERT INTO `textbetatags` VALUES ('

    ','

    ','title'),('

    ','

    ','systems'),('

    ','

    ','what'),('

    ','

    ','followup'),('

    ','

    ','links'),('

    ','

    ','done'),('

    ','

    ','ts'),('
    ','fakebreak'),('
    ','fakecolor'); /*!40000 ALTER TABLE `textbetatags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `titletags` -- DROP TABLE IF EXISTS `titletags`; CREATE TABLE `titletags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `titletags` -- LOCK TABLES `titletags` WRITE; /*!40000 ALTER TABLE `titletags` DISABLE KEYS */; INSERT INTO `titletags` VALUES ('

    ','

    ','title'),('

    ','

    ','pagename'); /*!40000 ALTER TABLE `titletags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `turbolinktags` -- DROP TABLE IF EXISTS `turbolinktags`; CREATE TABLE `turbolinktags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `turbolinktags` -- LOCK TABLES `turbolinktags` WRITE; /*!40000 ALTER TABLE `turbolinktags` DISABLE KEYS */; INSERT INTO `turbolinktags` VALUES ('\r\n
    \r\n

    \r\nAdd a new PDE hotlink button\r\n

    \r\n
    \r\n
    \r\nHow should this PDE page link be labeled?
    \r\n\r\n

    \r\nName of target data table?
    \r\n\r\n

    \r\nName of field to use for search?
    \r\n\r\n

    \r\nRetrieve all data that contains this string:
    \r\n\r\n

    \r\nUse this page type form to display the results:
    \r\n\r\n

    \r\nMeta information?
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n
    \r\n
    \r\n','',''); /*!40000 ALTER TABLE `turbolinktags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `updatetags` -- DROP TABLE IF EXISTS `updatetags`; CREATE TABLE `updatetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `updatetags` -- LOCK TABLES `updatetags` WRITE; /*!40000 ALTER TABLE `updatetags` DISABLE KEYS */; INSERT INTO `updatetags` VALUES ('\r\n

    ','','bodye'); /*!40000 ALTER TABLE `updatetags` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `whitetags` -- DROP TABLE IF EXISTS `whitetags`; CREATE TABLE `whitetags` ( `open` varchar(1000) default NULL, `close` varchar(1000) default NULL, `varname` varchar(100) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Dumping data for table `whitetags` -- LOCK TABLES `whitetags` WRITE; /*!40000 ALTER TABLE `whitetags` DISABLE KEYS */; INSERT INTO `whitetags` VALUES ('

    \r\nUpdate/change table contents\r\n


    \r\n
    \r\nTable to update?
    \r\n\r\n
    Field to update?
    \r\n\r\n
    New content?
    \r\n\r\n
    Column to search within?
    \r\n\r\n
    search for a string containing what?
    \r\n\r\n


    \r\n\r\n
    ','',''); /*!40000 ALTER TABLE `whitetags` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD
    ','',''),('

    ','','pagename'),('

    ','','bodya'),('

    ','','bodyb'),('

    ','','bodyc'),('

    ','','bodyd'),('

    ','','bodye'),('

    ','','bodyf'),('

    ','','meta'),('

    ','','title'),('

    ','','ts'),('

    ','','systems'),('

    ','','what'),('

    ','','done'),('

    ','','pagetype'),('

    ','','tagindex'),('

    ','','open'),('

    ','','close'),('

    ','','varname'),('

    ','','entry'),('