Skip to content

wadoon/MINICMS

Repository files navigation

h1. Dokumentation MINICMS

This system is a very small and simple content managment system. For
small homepages with  focus on the content area.

Software is under Creative Commons 3.0 - sa-by:
	 http://creativecommons.org/licenses/by-sa/3.0/

Author: Alexander Weigl <alexweigl@gmail.com>

Download from "!http://github.com/favicon.png!":http://github.com/areku/MINICMS

h2. Introduction

The system has two areas: the script dirs and data dir.

The script dir (the root directory) contains:

* index.php  - the central script file
* config.php - configuration for the user
* head.php   - the header for the entire site
* foot.php   - the footer for entire site 
* static/*   - static files like style.css, ASCIIMathMl.js

The data dir is defined as data/ in the standard installation. Within
this directory is site tree. Each file represents an web page and can
be called via the index.php/<path-to-file>. The path can have any site
and andy depth.

In MINICMS we try to find index files if the path points to an
directory. An index page is called index.*. So the suffix is not
fixed. If the no path is given the script tries to find an index page
within the data dir. If no index page can be retrieve for a directory,
a index page like autoindex_mod is generated for this directory. 

h2. Pages and suffixes

The web pages lies within the data dir. The file name is
<wort>.<suffix>. The suffix determines which parser is called for this
site:

|=. Suffix |=. Parser      |
| text     | Textile       |
| mrk      | markdown	   |
| html     | direct output |
| txt      | txt output as fixed text, wrapped at 72 chars |
| java, sh, ... | parsed via geshi |

You can use one of this parser above or impelement an own on.

Within web pages following occurance will be replaced:

| occurance       | replacement |
| _w/o_,   §w/o/§ | direct url for going around the index.php to the @DATA_DIR@ |	     		     
| _site_,  §site§ | url to the index.php page usage like
| _site_/index.text for main page |
| _root_,  §root§ | root url for this site basename from _site_ |


h3. autoindex function

If no index page is find for an looked up folder an index page with
all files within this folder is created. You can a descriptions to
files via an ini file.

Easily safe an @.description@ named ini file within this
directory. The key is the file name. The special key @dir@ is reserved
for an description of this folder.

Example:

{{{
dir = Anthology of some shell scripts
ansi_color.sh 	= Shell function for an easy use of Ansi Sequences
bak 			= Little backup scripts. It makes a backup from the file name.no where no is the next number from files
bootstrap.sh 	= some cool shell functions for including within other scripts 
}}}


h2. Extend System

h3. Constants 

define('ROOT_URL','/~weigla/');                  //url from the server root
define('SITE_INDEX',ROOT_URL.'index.php');       // url to the cms index.php
define('INDEX_PAGE','index');                    // name of the index
page suffix will be append
define('DATA_DIR','data');                      // data directory 
define('CACHE_DIR',dirname(__FILE__)."/cache/"); // path to the cache folder
define('ERROR_404',DATA_DIR.'/error404.text'); //path to the error404 file

For output helping:

define("NO_FORMULA",true); // disables the execution of ASCIIMathMl.js
define("NO_INDENT",true);  // Set the margin-left of the content box
to zero


h3. New cotnent handler

Write an function with the name:

@parse_<suffix>@ it will be automatically call on requesting an web
page for an file.<suffix>