Hello everybody,

Yesterday I finished testing a new CMS I developed for a while, and now I'd like to ask for your help. Could you please help test this system under different PHP version/settings?

The system works on a flat file database class I wrote, so no database setup or anything is needed, just set the right chmod to files and it's ready.

The web site was opened yesterday as well, so there is no much content yet, I'll write more with time.

About the CMS, it's actually very basic, but what's important (at least for me) it is the speed, the CMS is very fast. It doesn't have any modules yet, right now it's just the basic page/content management.

I'm not sure if I can post a link here (advertisement?), but I'll do it, and if it is wrong please let me know or remove it.

You can download the first released beta from:
http://skysimple.com/cms-download.html

If you have any questions/comments I will be glad to answer them here or by PM/email.

Thank you!

digital-ether commented: Awesome CMS! +4

Congratulations. You have a very nice CMS. It works fine for me, tested on PHP 5.1.6 (cli). No problems at all.

PHP info:

PHP Version => 5.1.6

System => Linux server.fijiwebdesign.com 2.6.18-sept26el5 #7 SMP Thu Jan 10 16:02:00 EST 2002 i686
Build Date => Oct 26 2007 13:46:09
Configure Command => './configure' '--build=i686-redhat-linux-gnu' '--host=i686-redhat-linux-gnu' '--target=i386-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--with-libdir=lib' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--disable-debug' '--with-pic' '--disable-rpath' '--without-pear' '--with-bz2' '--with-curl' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-png' '--with-pspell' '--with-expat-dir=/usr' '--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-track-vars' '--enable-trans-sid' '--enable-yp' '--enable-wddx' '--with-kerberos' '--enable-ucd-snmp-hack' '--with-unixODBC=shared,/usr' '--enable-memory-limit' '--enable-shmop' '--enable-calendar' '--enable-dbx' '--enable-dio' '--with-mime-magic=/etc/httpd/conf/magic' '--without-sqlite' '--with-libxml-dir=/usr' '--with-xml' '--enable-force-cgi-redirect' '--enable-pcntl' '--with-imap=shared' '--with-imap-ssl' '--enable-mbstring=shared' '--enable-mbstr-enc-trans' '--enable-mbregex' '--with-ncurses=shared' '--with-gd=shared' '--enable-bcmath=shared' '--enable-dba=shared' '--with-db4=/usr' '--with-xmlrpc=shared' '--with-ldap=shared' '--with-mysql=shared,/usr' '--with-mysqli=shared,/usr/bin/mysql_config' '--enable-dom=shared' '--with-dom-xslt=/usr' '--with-dom-exslt=/usr' '--with-pgsql=shared' '--with-snmp=shared,/usr' '--enable-soap=shared' '--with-xsl=shared,/usr' '--enable-xmlreader=shared' '--enable-xmlwriter=shared' '--enable-fastcgi' '--enable-pdo=shared' '--with-pdo-odbc=shared,unixODBC,/usr' '--with-pdo-mysql=shared,/usr' '--with-pdo-pgsql=shared,/usr' '--with-pdo-sqlite=shared'
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /etc
Scan this dir for additional .ini files => /etc/php.d
PHP API => 20041225
PHP Extension => 20050922
Zend Extension => 220051025
Debug Build => no
Thread Safety => disabled
Zend Memory Manager => enabled
IPv6 Support => enabled
Registered PHP Streams => php, file, http, ftp, compress.bzip2, compress.zlib, https, ftps
Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters => string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, bzip2.*, zlib.*


This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies


_______________________________________________________________________


Configuration

PHP Core

Directive => Local Value => Master Value
allow_call_time_pass_reference => On => On
allow_url_fopen => On => On
always_populate_raw_post_data => Off => Off
arg_separator.input => & => &
arg_separator.output => & => &
asp_tags => Off => Off
auto_append_file => no value => no value
auto_globals_jit => On => On
auto_prepend_file => no value => no value
browscap => no value => no value
default_charset => no value => no value
default_mimetype => text/html => text/html
define_syslog_variables => Off => Off
disable_classes => no value => no value
disable_functions => no value => no value
display_errors => On => On
display_startup_errors => Off => Off
doc_root => no value => no value
docref_ext => no value => no value
docref_root => no value => no value
enable_dl => On => On
error_append_string => no value => no value
error_log => no value => no value
error_prepend_string => no value => no value
error_reporting => no value => no value
expose_php => On => On
extension_dir => /usr/lib/php/modules => /usr/lib/php/modules
file_uploads => On => On
highlight.bg => #FFFFFF => #FFFFFF
highlight.comment => #FF8000 => #FF8000
highlight.default => #0000BB => #0000BB
highlight.html => #000000 => #000000
highlight.keyword => #007700 => #007700
highlight.string => #DD0000 => #DD0000
html_errors => Off => On
ignore_repeated_errors => Off => Off
ignore_repeated_source => Off => Off
ignore_user_abort => Off => Off
implicit_flush => On => Off
include_path => .:/usr/share/pear => .:/usr/share/pear
log_errors => Off => Off
log_errors_max_len => 1024 => 1024
magic_quotes_gpc => On => On
magic_quotes_runtime => Off => Off
magic_quotes_sybase => Off => Off
mail.force_extra_parameters => no value => no value
max_execution_time => 0 => 30
max_input_nesting_level => 64 => 64
max_input_time => -1 => -1
memory_limit => 8M => 8M
open_basedir => no value => no value
output_buffering => 0 => 0
output_handler => no value => no value
post_max_size => 8M => 8M
precision => 14 => 14
realpath_cache_size => 16K => 16K
realpath_cache_ttl => 120 => 120
register_argc_argv => On => On
register_globals => Off => Off
register_long_arrays => On => On
report_memleaks => On => On
report_zend_debug => Off => Off
safe_mode => Off => Off
safe_mode_exec_dir => /usr/bin => /usr/bin
safe_mode_gid => Off => Off
safe_mode_include_dir => no value => no value
sendmail_from => no value => no value
sendmail_path => /usr/sbin/sendmail -t -i => /usr/sbin/sendmail -t -i
serialize_precision => 100 => 100
short_open_tag => On => On
SMTP => localhost => localhost
smtp_port => 25 => 25
sql.safe_mode => Off => Off
track_errors => Off => Off
unserialize_callback_func => no value => no value
upload_max_filesize => 2M => 2M
upload_tmp_dir => no value => no value
user_dir => no value => no value
variables_order => EGPCS => EGPCS
xmlrpc_error_number => 0 => 0
xmlrpc_errors => Off => Off
y2k_compliance => On => On
zend.ze1_compatibility_mode => Off => Off

bz2

BZip2 Support => Enabled
Stream Wrapper support => compress.bz2://
Stream Filter support => bzip2.decompress, bzip2.compress
BZip2 Version => 1.0.2, 30-Dec-2001

calendar

Calendar support => enabled

ctype

ctype functions => enabled

curl

CURL support => enabled
CURL Information => libcurl/7.12.1 OpenSSL/0.9.7a zlib/1.2.1.2 libidn/0.5.6

date

date/time support => enabled
Timezone Database Version => 2006.1
Timezone Database => internal
Default timezone => America/New_York

Directive => Local Value => Master Value
date.default_latitude => 31.7667 => 31.7667
date.default_longitude => 35.2333 => 35.2333
date.sunrise_zenith => 90.583333 => 90.583333
date.sunset_zenith => 90.583333 => 90.583333
date.timezone => no value => no value

exif

EXIF Support => enabled
EXIF Version => 1.4 $Id: exif.c,v 1.173.2.5 2006/04/10 18:23:24 helly Exp $
Supported EXIF Version => 0220
Supported filetypes => JPEG,TIFF

ftp

FTP support => enabled

gettext

GetText Support => enabled

gmp

gmp support => enabled

hash

hash support => enabled
Hashing Engines => md4 md5 sha1 sha256 sha384 sha512 ripemd128 ripemd160 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru gost adler32 crc32 crc32b haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5

iconv

iconv support => enabled
iconv implementation => glibc
iconv library version => 2.3.4

Directive => Local Value => Master Value
iconv.input_encoding => ISO-8859-1 => ISO-8859-1
iconv.internal_encoding => ISO-8859-1 => ISO-8859-1
iconv.output_encoding => ISO-8859-1 => ISO-8859-1

libxml

libXML support => active
libXML Version => 2.6.16
libXML streams => enabled

mime_magic

mime_magic support => enabled

Directive => Local Value => Master Value
mime_magic.debug => Off => Off
mime_magic.magicfile => /etc/httpd/conf/magic => /etc/httpd/conf/magic

openssl

OpenSSL support => enabled
OpenSSL Version => OpenSSL 0.9.7a Feb 19 2003

pcntl

pcntl support => enabled

pcre

PCRE (Perl Compatible Regular Expressions) Support => enabled
PCRE Library Version => 4.5 01-December-2003

posix

Revision => $Revision: 1.70.2.3 $

pspell

PSpell Support => enabled

Reflection

Reflection => enabled
Version => $Id: php_reflection.c,v 1.164.2.33 2006/03/29 14:28:42 tony2001 Exp $

session

Session Support => enabled
Registered save handlers => files user
Registered serializer handlers => php php_binary wddx

Directive => Local Value => Master Value
session.auto_start => Off => Off
session.bug_compat_42 => On => On
session.bug_compat_warn => On => On
session.cache_expire => 180 => 180
session.cache_limiter => nocache => nocache
session.cookie_domain => no value => no value
session.cookie_lifetime => 0 => 0
session.cookie_path => / => /
session.cookie_secure => Off => Off
session.entropy_file => no value => no value
session.entropy_length => 0 => 0
session.gc_divisor => 100 => 100
session.gc_maxlifetime => 1440 => 1440
session.gc_probability => 1 => 1
session.hash_bits_per_character => 4 => 4
session.hash_function => 0 => 0
session.name => PHPSESSID => PHPSESSID
session.referer_check => no value => no value
session.save_handler => files => files
session.save_path => no value => no value
session.serialize_handler => php => php
session.use_cookies => On => On
session.use_only_cookies => Off => Off
session.use_trans_sid => 0 => 0

shmop

shmop support => enabled

SimpleXML

Simplexml support => enabled
Revision => $Revision: 1.151.2.22 $
Schema support => enabled

sockets

Sockets Support => enabled

SPL

SPL support => enabled
Interfaces => Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject
Classes => AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, DirectoryIterator, DomainException, EmptyIterator, FilterIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RuntimeException, SimpleXMLIterator, SplFileInfo, SplFileObject, SplObjectStorage, SplTempFileObject, UnderflowException, UnexpectedValueException

standard

Regex Library => Bundled library enabled
Dynamic Library Support => enabled
Path to sendmail => /usr/sbin/sendmail -t -i

Directive => Local Value => Master Value
assert.active => 1 => 1
assert.bail => 0 => 0
assert.callback => no value => no value
assert.quiet_eval => 0 => 0
assert.warning => 1 => 1
auto_detect_line_endings => 0 => 0
default_socket_timeout => 60 => 60
safe_mode_allowed_env_vars => PHP_ => PHP_
safe_mode_protected_env_vars => LD_LIBRARY_PATH => LD_LIBRARY_PATH
url_rewriter.tags => a=href,area=href,frame=src,form=,fieldset= => a=href,area=href,frame=src,form=,fieldset=
user_agent => no value => no value

sysvmsg

sysvmsg support => enabled
Revision => $Revision: 1.20.2.3 $

tokenizer

Tokenizer Support => enabled

wddx

WDDX Support => enabled
WDDX Session Serializer => enabled

xml

XML Support => active
XML Namespace Support => active
libxml2 Version => 2.6.16

zlib

ZLib Support => enabled
Stream Wrapper support => compress.zlib://
Stream Filter support => zlib.inflate, zlib.deflate
Compiled Version => 1.2.1.2
Linked Version => 1.2.1.2

Directive => Local Value => Master Value
zlib.output_compression => Off => Off
zlib.output_compression_level => -1 => -1
zlib.output_handler => no value => no value

Additional Modules

Module Name
sysvsem
sysvshm

Environment

Variable => Value
HOSTNAME => server.fijiwebdesign.com
SHELL => /bin/bash
TERM => xterm
HISTSIZE => 1000
SSH_CLIENT => ::ffff:202.170.45.12 1382 22
SSH_TTY => /dev/pts/1
USER => root
LS_COLORS => no=00:fi=00:di=00;34:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe=00;32:*.com=00;32:*.btm=00;32:*.bat=00;32:*.sh=00;32:*.csh=00;32:*.tar=00;31:*.tgz=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.zip=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.bz=00;31:*.tz=00;31:*.rpm=00;31:*.cpio=00;31:*.jpg=00;35:*.gif=00;35:*.bmp=00;35:*.xbm=00;35:*.xpm=00;35:*.png=00;35:*.tif=00;35:
MAIL => /var/spool/mail/root
PATH => /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
INPUTRC => /etc/inputrc
PWD => /var/www/html/dev/simplesky/SimpleControl_php5
SHLVL => 1
HOME => /root
LOGNAME => root
SSH_CONNECTION => ::ffff:202.170.45.12 1382 ::ffff:208.77.101.15 22
LESSOPEN => |/usr/bin/lesspipe.sh %s
G_BROKEN_FILENAMES => 1
_ => /usr/bin/php
OLDPWD => /var/www/html/dev/simplesky

PHP Variables

Variable => Value
_SERVER["HOSTNAME"] => server.fijiwebdesign.com
_SERVER["SHELL"] => /bin/bash
_SERVER["TERM"] => xterm
_SERVER["HISTSIZE"] => 1000
_SERVER["SSH_CLIENT"] => ::ffff:202.170.45.12 1382 22
_SERVER["SSH_TTY"] => /dev/pts/1
_SERVER["USER"] => root
_SERVER["LS_COLORS"] => no=00:fi=00:di=00;34:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe=00;32:*.com=00;32:*.btm=00;32:*.bat=00;32:*.sh=00;32:*.csh=00;32:*.tar=00;31:*.tgz=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.zip=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.bz=00;31:*.tz=00;31:*.rpm=00;31:*.cpio=00;31:*.jpg=00;35:*.gif=00;35:*.bmp=00;35:*.xbm=00;35:*.xpm=00;35:*.png=00;35:*.tif=00;35:
_SERVER["MAIL"] => /var/spool/mail/root
_SERVER["PATH"] => /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
_SERVER["INPUTRC"] => /etc/inputrc
_SERVER["PWD"] => /var/www/html/dev/simplesky/SimpleControl_php5
_SERVER["SHLVL"] => 1
_SERVER["HOME"] => /root
_SERVER["LOGNAME"] => root
_SERVER["SSH_CONNECTION"] => ::ffff:202.170.45.12 1382 ::ffff:208.77.101.15 22
_SERVER["LESSOPEN"] => |/usr/bin/lesspipe.sh %s
_SERVER["G_BROKEN_FILENAMES"] => 1
_SERVER["_"] => /usr/bin/php
_SERVER["OLDPWD"] => /var/www/html/dev/simplesky
_SERVER["PHP_SELF"] =>
_SERVER["SCRIPT_NAME"] =>
_SERVER["SCRIPT_FILENAME"] =>
_SERVER["PATH_TRANSLATED"] =>
_SERVER["DOCUMENT_ROOT"] =>
_SERVER["REQUEST_TIME"] => 1196550725
_SERVER["argv"] => Array
(
)

_SERVER["argc"] => 0
_ENV["HOSTNAME"] => server.fijiwebdesign.com
_ENV["SHELL"] => /bin/bash
_ENV["TERM"] => xterm
_ENV["HISTSIZE"] => 1000
_ENV["SSH_CLIENT"] => ::ffff:202.170.45.12 1382 22
_ENV["SSH_TTY"] => /dev/pts/1
_ENV["USER"] => root
_ENV["LS_COLORS"] => no=00:fi=00:di=00;34:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe=00;32:*.com=00;32:*.btm=00;32:*.bat=00;32:*.sh=00;32:*.csh=00;32:*.tar=00;31:*.tgz=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.zip=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.bz=00;31:*.tz=00;31:*.rpm=00;31:*.cpio=00;31:*.jpg=00;35:*.gif=00;35:*.bmp=00;35:*.xbm=00;35:*.xpm=00;35:*.png=00;35:*.tif=00;35:
_ENV["MAIL"] => /var/spool/mail/root
_ENV["PATH"] => /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
_ENV["INPUTRC"] => /etc/inputrc
_ENV["PWD"] => /var/www/html/dev/simplesky/SimpleControl_php5
_ENV["SHLVL"] => 1
_ENV["HOME"] => /root
_ENV["LOGNAME"] => root
_ENV["SSH_CONNECTION"] => ::ffff:202.170.45.12 1382 ::ffff:208.77.101.15 22
_ENV["LESSOPEN"] => |/usr/bin/lesspipe.sh %s
_ENV["G_BROKEN_FILENAMES"] => 1
_ENV["_"] => /usr/bin/php
_ENV["OLDPWD"] => /var/www/html/dev/simplesky

You have an interesting flat file db. could you explain how it works.

Wow! Thanks a lot for your reply!

About the flat db (SkyDB class), actually it's very limited, but the main idea is fixed size data, so we can access any entry by id without actually looking for it. Like the function selectone(), updateone() or deleteone(), same goes with insert() - if id provided it will rewrite the whole entry.

selectwhereone() will find n entries where x=y or x!=y, or you can use it as simple search function within the table, selectonewhere() is the same only it returns first found entry that match (good for user database, passwords etc)

Soon I am going to write about the class at skysimple.com/skydb.html, with explanations on everything. Right now I can honestly tell you that it is the fastest ffdb written in PHP, although it's not function rich as others, but it was developed for speed.

Again, thank you so much for testing it! As lonely developer, it's hard to find help :)

Wow! Thanks a lot for your reply!

About the flat db (SkyDB class), actually it's very limited, but the main idea is fixed size data, so we can access any entry by id without actually looking for it. Like the function selectone(), updateone() or deleteone(), same goes with insert() - if id provided it will rewrite the whole entry.

selectwhereone() will find n entries where x=y or x!=y, or you can use it as simple search function within the table, selectonewhere() is the same only it returns first found entry that match (good for user database, passwords etc)

Soon I am going to write about the class at skysimple.com/skydb.html, with explanations on everything. Right now I can honestly tell you that it is the fastest ffdb written in PHP, although it's not function rich as others, but it was developed for speed.

Again, thank you so much for testing it! As lonely developer, it's hard to find help :)

You have about the simplest CMS administration I've seen. Setting it up is very easy also. I'm a bit hesitant about CHMOD 0777 on everything.
You can get the core.php to retrieve the root path via dirname(__FILE__).

What I would do is have a config.php file that needs to be chmod 777. Have the script check if $install = true; in config.php and redirect the user to install.php to do an installation. It makes installation even easier. your install.php can then write settings from the form based install to config.php and then chmod config.php to a more secure perm.
Maybe that goes against your design pattern and is making it less simple?

I really like the ease of setting up the CMS though. Especially when you don't have to deal with a DB, but CMS is still fast.
I'll do some benchmarking on it and let you know. I'll test it on Linux, Win, PHP4 and 5 and a few different settings.

Is this Open Source by the way? I can't find the license.

I'll answer from the end:

There's no license as I'm totally confused with those and not sure with one to use/choose, but yes, it open source.

You are absolutely right about installation script, it's not hard to do and I’ll try to make it in the next release.

Thanks, I am very glad that you like it. I hope with the next updates to make it at least a bit better. When CMS is simple it means less problems with clients, more time for other things :)

By the way, I've wrote how the menu works
http://skysimple.com/cms-the-menu.html

I'll answer from the end:

There's no license as I'm totally confused with those and not sure with one to use/choose, but yes, it open source.

You are absolutely right about installation script, it's not hard to do and I’ll try to make it in the next release.

Thanks, I am very glad that you like it. I hope with the next updates to make it at least a bit better. When CMS is simple it means less problems with clients, more time for other things :)

By the way, I've wrote how the menu works
http://skysimple.com/cms-the-menu.html

A CMS with CSS friendly HTML, nice.
Do you plan to implement a JS library?

I notice the encoding is UTF-8. Does the CMS handle encoding conversions? I know PHP has a lot of functions that are not multi-byte encoding aware.
Joomla is one that hasn't supported multibyte chars till the new 1.5. I've had a world of trouble when it came to developing mixed content on sites with multibyte encoded charsets.

Very simple so for but fast. Keep coding ...

Have you thought using SQLite as serveless DB ?

Tested on Windwos Vista Home Premium
Apache 2.2.6
PHP 5.2.5

digital-ether I'm not really sure about multibyte charsets, but I know for sure that the CMS don't have any problems with at least 4 languages I checked (english, russian, hebrew(right to left!) and chinese). But if it's not what you mean, could you give me some links I can read about this problem?

About JS library... no I don't have any plans for JavaScripts yet, and I don't think I will. But every template can have JS code that will do whatever someone might need :)


MitkOK I thought about SQLite, but at the end it's almost the same thing as my db class, the only difference is that SQLite is not supported on most machines yet.

Thanks for testing! :)

digital-ether I'm not really sure about multibyte charsets, but I know for sure that the CMS don't have any problems with at least 4 languages I checked (english, russian, hebrew(right to left!) and chinese). But if it's not what you mean, could you give me some links I can read about this problem?
...

http://www.phpwact.org/php/i18n/charsets/
http://www.sitepoint.com/blogs/2006/02/26/php-utf-8-01/
http://phputf8.sourceforge.net/

Example CMS implementation:
http://dev.joomla.org/component/option,com_jd-wiki/Itemid,/id,guidelines:utf-8/#utf-8-implementation-strategy-in-joomla

See: 1.3.3 Multibyte string handling and compatibility

In Joomla 1.5 they've introduced a String class that is UTF-8 aware. So for example, if they want to do strlen() on a string, they use the equivalent in the Joomla string class, JString::strlen().
http://api.joomla.org/Joomla-Framework/Utilities/JString.html

So if you decided to have an API for editing the article contents on the fly in SimpleControl, it would get mangled by an extension developers simple string functions.

Simple Example:

// say you could register an event handler to manipulate content before it was displayed
$Content->registerObserver('onrender', 'myContentCallback');

// say a developer implmented this function to run for every content being displayed
function myContentCallback(&$content) {
$content = htmlentities($content);
}

Effectively, $content will be mangled if it was UTF-8 encoded.

I think I got it. I will read more and test the system more on this matter, thanks for explaining!

A new version (0.2) is coming soon, what's interesting is that I added lots of new features, and so far the system got (about) 20% faster, though I did rewrite the database class and design and some other stuff. I hope to finish the new version in 3 to 5 days. From the big changes it will have template system, where each page can have its own design and a option to create multilingual site... :)

Hello again :) and Happy New Year everybody!

After quite nice holiday I released a new beta (version 0.1.1), you can get it here http://skysimple.com/cms-download.html

Would be great if you could test it, help me find bugs and make it better! :)


People Help the People (c) Cherry Ghost :)

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.