-
Meeting 2008 - Announcement and invitation
(News)
-
discussions for users and developers to take place at the same time. A workshop is in consideration as well, to diversify the agenda.
At this time we are still at the beginning of planning, but will delve into it during the next weeks and give an account of it in regular intervals. We have several ideas, especially due to the large feedback from last year. For instance, we are up to start a shuttle service as designated by multiple people. There will certainly be a supporting programme again - how this will look like and if proportionate costs, in form of a fixed amount, which has to be carried by the participants themselves, will incur thereby is still open though. But we will make an effort to keep this amount as low as possible (less than 25 Euro). It is also not certain yet where and in which form the traditional prelude event on Friday will be.
Since there were already three companions last year, we want to organize a secondary agenda which is going to happen parallel with the primary conference and is being overseen by my girlfriend. However, during the complete supporting programme, for example the dinner on Saturday, both groups will be together.
Many other details like possibilities for arrival as well as accommodations and the program itinerary will be recorded in the Wiki [5] (German only). Also preliminary suggestions for lectures, workshops and discussions can be handled there. In coincidence of The Rhineland Palatinate's State Garden Show [6] happening simultaneously, a shortage at close hotels may arise. We will put several addresses and alternatives into the Wiki this very day. Please take care as soon as possible for corresponding reservations. If there should occur any problems, I am within reach and of help at axel@zikula.org.
We are looking forward to a large attendance [7].Registrations are without commitment, but exceedingly helpful for our organization, particularly as we must roughly estimate the total amount of persons. Also the information how many people are going to bring along their partners, is very important for the planning. The first meeting which is all about $newname is hopefully going to become an exciting and innovative performance with active participation.
Links:
http://www.bingen.de/
http://en.wikipedia.org/wiki/Bingen_am_Rhein
http://whc.unesco.org/en/list/1066
http://www.fh-bingen.de/
http://camp-zikula.info/wiki/
http://www.landesgartenschau-bingen-2008.de/
http://camp-zikula.info/contact/
Generated on April 1, 2008.
-
Development Update, 2008-01
(News)
-
.8 Final: the next step after RC3
Since the release of RC3, already a lot of bugfixes have been committed to the repository. The developers have agreed to address all new features to the .9 tree, where the two major changes (UTF-8 and gettext, see below) are already in active development. This should result in much shorter release cycles (and earlier release dates) also, and give module developers much more clarification on what to change in order to make their module work under the new major release. If needed, an final bugfizing weekend may still be organised for .8 final.
The upgrade from .764 installations on certain systems has been improved, by increasing the memory_limit to 64M. However, this only works for php version 5.2.1 and above.
Upgrading to .8 together with some 3rd party modules may raise problems when the modules upgrade process is not failsafe for .8 or if the upgrade function uses core functions of modules that are not available yet. Therefore the upgrade of 3rd party modules in general is avoided by following a white list of core modules.
Most site-specific data can already be easily overridden using the /config and /themes directories. The Multisites module however still needs some futher thought on the best way of running multiple sites from a single install. One method having multiple unrelated (i.e. non table sharing) sites of a single install would be to have config/site1, config/site2 etc., this will be postponed to a next release.
The Tour module is now in a state where it can be translated to other languages as well. Just translate the templates and put them in a subdir with the appropriate language abbrevation, all within the pntemplates directory.
MultiCategorization introduction and issues since
As earlier announced, a last fix for supporting MultiCategorization has been added to the core just before the release of RC3. Since those changes, another small fix was then required to be fully backwards compatible. On the module-devs list, the devs have discussed a lot on how to solve these issues. Chances are great that if the new (already committed) patches do not solve the problems, MultiCategorization might be postponed to later versions in order to fully test the new features.
For more information on MultiCategorization, visit this thread in the forum.
DOM extension to use correct paths in JavaScript
Some javascripts, eg. the lightbox, need to know the path to the system and the entrypoint as well (which can be configured in the settings), otherwise they may fail in case of short urls being enabled. Since dynamic javascript creation might be a performance problem, some inline javascript is added to the pagevars to extend the DOM:
- document.location.entrypoint: will be set to what is configured to be the entrypoint
- document.location.pnbaseURL: will point to the result of pnGetBaseURL();
Any ideas on how to make his more unobtrusive are very welcome!
PostNuke Upgrade Distribution
In previous articles and posts, the term '.8 upgrade pack' was used to represent a full .8 package, including 3rd party modules, to upgrade to .8 from an existing .764 installation. However, the term 'upgrade pack' is not quite correct and misleading, because it implies to be an upgrade package with changed files only, while the main parts remain as-is. The transition between .764 and .8 requires a complete exchange of all files, so the so called upgrade package is a complete distribution.
Now it remains what modules should be in an upgrade distribution, to be able to fully upgrade an existing .764 installation, including new versions of 3rd party modules. These include Downloads 2.2, pnMessages, Polls 2.0, bbcode / bbsmile, Weblinks, EZComments and MultiHook at least. This might need some additional testing with certain versions also.
Core changes and additions in the .9 tree
Mark has already overhauled some core API methods and calls. All systems modules are now using the Renderer Class instead of pnRender. Also, a first pass has been committed in changing all pn* function calls to new object method calls. For example, pnModGetInfo is replaced with ModuleUtil::getInfo and pnSecGenAuthKey is replaced with SecurityUtil::generateAuthKey.
For those who did not know: A class pnCompat.php still includes most oldstyle API calls for backwards compatibility.
GetText and Default DB Charset
Bernd is progressing rapidly on integrating gettext in de development tree, and has added po-files for all core modules. The required PHP version for .9 has already been set to a minimum of 5.1.6, and since version 5.0, MySql supports different character sets and corresponding collating orders. To run an application in UTF-8 (unicode) it is not sufficient to change the character set for PN; we needed to set the database encoding (actually server and client) to UTF-8 as well.
A user who wishes to run his site in multiple languages, needs to decide the database encoding at installation time. The default is UTF-8, because the current iso-8859-1 is restricted to too few language combinations. UTF-8 is a 'no-worry' setting because it will work with any language (as long as it is UTF-8 encoded.
This change is $PNConfig['DBInfo']['default']['dbcharset'] = 'utf-8';
To cache or not to cache, that's the question
Also discussed on the devs-list is the current (and future) state of output caching within PostNuke. Why should any application repeat the same processing tasks on a item that hasn't changed?
Not caching anything is fine if one has got infinite resources to throw at a site (and even then there are limits). But in reality there are finite resources and you need to take steps to ensure that those resources are effectively used. One method for that is not wasting precious resources repeating the same tasks time after time.
The key is effective cache management. Currently we put too much load onto the module to handle it's own caching. Once you then
Generated on March 2, 2008.
-
Short Status Update
(News)
-
upgrade's usability - and he merged the .7 upgrade and the .8MS upgrade into one file. So there's only one upgrade.php for all.
Simon Birtwistle together with some guys from the support team wrote a tour module that is supposed to explain the basic functions to first time Postnuke users.
All this is now in the SVN and will be release as RC3 ASAP.
As we are all pretty busy these days, I won't promise it for tomorrow but ASAP. ;-
Generated on February 13, 2008.
-
What's going on?
(News)
-
know the Core team released RC2 of Postnuke .8 - the Steering Committee's report we are just working on will deal with the details.
2. Jørn Wildt released a first version of his "Content" module:
"Finaly I have finished the first version of my new Content module. With this little goodie you get HTML editing, YouTube video, Google maps and more features out of the box. This module was inspired by Typo3 and the never-finished PostNuke module Publish!" -- elfisk.dk
Content is a module that you can use to create static pages. It supports several predefined layouts (1 column, 2colums + header aso) and you can also add your own templates. In the editor you then can drag and drop content items like texts, images, youTube videos or Google Maps around and place them anywhere you like within the layout.
3. Together with "Content 1.0.0" a new version of Jørn's Mediashare gallery is available. Yet it still needs an installed Topics module to run under .8.
4. pnForum 2.7(.1) is finally released. A test version served the German Postnuke community for months and now he fixed the last bugs and made a public release.
5. Sven Schomaker is about to release Scribite 2.0 - It includes openWYSIWYG v1.4.6c as new editor and new versions of Xinha (v0.94), TinyMCE (v2.1.2), FCKeditor (v2.4.3), a lot of new module plugins and languages.
6. Axel Guckelsberger finished his diploma thesis that discussed the use of model-driven software development (MDSD) for Postnuke and resulted in his "ModuleStudio". Although ModuleStudio is far from complete it is way ahead in terms of modern software development. And if it turns out right MDSD is one of the next big things after object orientation (OO).
7. User ftree started work on a new gallery (pnAlbum) some months back and now published an article about his work. In preparation of the gallery he programmed some basic functions which turned out to be suitable for everyone who wants to program a module. If you want to you can take a look at his work.
8. There's a new pnCommerce team in formation: Rüdiger Hahn, Jim Hatfield, Chris Candreva, Bernd Plagge and some others are long time pnCommerce users and all maintained their own fork of the module. Now they are trying to put all their code together and a new version out for public use.
9. Marco Kundert is still working on his .8 follow-up for Pagesetter called Pagemaster. His first release will be 100% compatible to the latest version of Pagesetter so that you can simply import all you Pagesetter content into Pagemaster. Pagesetter introduced many ideas into Postnuke that have now become part of the core: Postnuke .8 has Workflows system and the idea of Pagesetter's form framework (Guppy) can now be found as Forms API in .8 and the WYSIWYG-Editor is now in Scribite generally available - Pagemaster uses all these features and thus can be much leaner.
10. Robert Gasch is working on a commercial shop module. He allowed me to take a look at it and it looks really great. Robert made his living for the last few years by setting up shop solutions for customers and now uses this experience for his new module.
11. Mateo Tibaquirá released a first version of his port of the standalone Relay AJAX directory management application. Includes drag-n-drop files and folders, a dynamic loading file structure, thumbnail views, multiple users & accounts, batch uploads, shopping-cart/batch downloads.
I am sure I forgot some people and I know there's a lot more going on in Postnuke land. But I'd like to leave some news for further articles.
If you are working on a news-worthy Postnuke project please contact me via personal message
Generated on December 22, 2007.
-
Postnuke .8 RC2
(News)
-
The release candidate is the current state of the SVN and contains compared to RC1 a lot of bug fixes, a rewritten and simplified categories module and an improved upgrade for users of Postnuke .764.
Downloads
There are 3 packages available:
The core pack contains only the bare system and no content modules. It's supposed to serve as the basis for a new site. So you only have to upload all the modules you personally need.
.zip
.tar.gz
The value addons contain all the content modules from .7x in their latest version fit for .8. So if you need Quotes or FAQ for your site, this is the place to find them.
.zip
.tar.gz
The upgrade pack contains everything you need to update an existing .764 site. It is the core pack and the value addons in one package. Please note: DO NOT UPGRADE YOUR LIVE SITE.
This is still not a final release and is not supposed to be used in live enviroments. If you intend to upgrade your site with the final version you should test the upgrade with the RC2 and a
local copy of your .764 site.
.zip
.tar.gz
Please test!. The more you test now with the RC2 and the more bugs you report, the less trouble you will have with the final version.
Checksums
MD5 Checksums
6cf82ee1883136c4c0bf69e13f1d91ba PostNuke-0.800-RC2-FULL.tar.gz
dd7f4b50e4ddfdbd3d96b017287f1a7c PostNuke-0.800-RC2-FULL.zip
6ebf2a51234a6401b7c96c89781d7165 PostNuke-0.800-RC2-CORE.tar.gz
14e65ef97d88470e0080c8e9538c9147 PostNuke-0.800-RC2-CORE.zip
89a6d51fa3f10286b09c29ea312ff7c9 PostNuke-0.800-RC2-ValueAddons.tar.gz
e06a81aec7e50292dfd63fd40a7c88b9 PostNuke-0.800-RC2-ValueAddons.zip
SHA1 Checksums
dd75378f3fa87df7b4b827e74adc0e162c29e861 PostNuke-0.800-RC2-FULL.tar.gz
2de3a2132265b920ab5333f6d2ec692e1c3061e1 PostNuke-0.800-RC2-FULL.zip
90ee7897b7abf29a4a136029823cb8a337a4076f PostNuke-0.800-RC2-CORE.tar.gz
376ae9f296c2533965d95972ddf05937a9cae4b4 PostNuke-0.800-RC2-CORE.zip
de878d7472ae9d2fc54bcf7322cbd5e8df015e32 PostNuke-0.800-RC2-ValueAddons.tar.gz
78ba886356e44da4798abf9577ab45b68756c741 PostNuke-0.800-RC2-ValueAddons.zip
Notice
The upgrade will only work for .764 sites. If your site is based on an older version this is the time to start your upgrade. If you have any questions about the update, visit the forums.
There will be no major changes from RC2 to the final release. The RC is bug fix only. If you intend to write modules, themes
Generated on December 12, 2007.
-
Rebranding of PostNuke... thoughts and considerations!
(News)
-
place) will be to explain people outside the active community what is happening, why and what consequences the rebranding will have.
Thats not just a task for PostNuke.com (sorry I don't know the new name ;)
The whole community, from main community site to the most "insignificant" PostNuke support site has to take part in this massive campaign to promote the new name and to explain.
Thats a big coordination task but thats not all... the PostNuke users you don't necessarily reach with this work is our customers!
Those of us that has made PostNuke not just a way of life but also a way of living has to explain to paying customers why the CMS they have been told was the worlds best and most steady product suddenly has to be renamed.
You could shrug off this and assert that "you have earned the money... you do the work and keep on smiling"... thats partly right... personaly I have never been payed for the system or any public available modules or such only the time I invested in the projects.
Last but not least we have to reach the people that are not aware of "renamedpostnuke".
Today you have to be creative when searching for a CMS on google and NOT hitting a PostNuke site within the first 2 resulting pages.
What the above lines boil down to is... have you got a plan for this?
I certainly understand why there is so much secrecy about the new name because it's a worldwide rebranding but again I ask you to consider the fact that there are a lot of community- and support sites out there that might feel slighted or disregarded.
We (the local community sites) have put a considerable amount of work and effort into promoting and supporting PostNuke and would ofcourse want to be able to do the same for "renamedpostnuke".
If we are not able to aquire "renamedpostnuke"-dot-"countrycode" for the major community sites in the various countries then please give us the opportunity to claim a variety of the name (maybe in advance) or "certify" us or whatever.
Maybe you schould have a little more faith in us and see us as "partners" in stead of "competitors"... well maybe I'm out of line here but that's how I sometimes feel ;)
You could claim that you have considered this and will make subdomain's for the various contries but that might not be the best way to do things. Although I would like to see a closer relationship between the main community site and the local community sites we still have to be just that... "local".
As stated above this is not criticism just some personal thoughts I have had for some time now and thought schould get out in the open.
If you will take them into consideration or not is up to you... maybe they already have been and I just didn't grasp it ;)
Anyhow I think there has been too little "public" info regarding the rebranding and your thoughts and considerations.
Right now I even don't care about the new name (...who am I kidding...OFCOURSE I DO...can hardly wait ;) and maybe I'm the only person who questions the steps involved...?
With the best of intentions the deepest respect for your work and 100% loyal PostNuke community- supporter and admin
Kim Enemark
Administrator at PostNuke.dk
PS: Try to google "postnuke" ;)
Danish search (top of page 1)
English search (top of page 3)
Generated on November 19, 2007.
-
RosterMaster(PostNuke) 0.97 and TaskMaster(PostNuke)x .xx
(News)
-
only that, but the same guild or clan can also have different rosters for the different servers of the different games they play.
You will also be able to create rosters from either single user groups, or groups of user groups, as well as rosters of the entire user base (for controlled sites). If all works as I would like it to, you will be able to have a roster of user groups that acts like (using the above gaming environment example) another roster of that particular guild.
As should be obvious by now, roster objects will not be limited to any one 'Guild' as the last RosterMaster was and one can build many different roster objects based on many different roster needs.
The current architecture (NOT final) looks like this (I won't claim this is the best setup, but it works with my current aspirations):
ObjectTable MemberTable User(assoc.)Table
ObjectID(prime) ---------- ObectjID(idx) rmUID(prime)
ObjClass MemberID(prime) --------- MemberID(idx)
Name Name pnUserID
etc... etc. etc.
The ObjClass field of the Object Table is a suffix for the module object class called. In the case of Everquest II I used 'EQ2' as the value and named my classes PNRosterMasterEQII and PNRosterMasterEQIIArray calling them with a combination of DBUtil::selectFieldByID([ObjectClass by ObjID) and Loader::loadClasFromModule() with a derived php string as the 'base_obj_type'.
Along with this is a vars table with API functions that work identical to PostNukes' pMod[Get|Set|Del]Var() but requires an ObjID instead of modname so that different sets of vars can be associated to each roster object.
The logging functionality will also be ObjID oriented, and as such care must be taken when setting up logging as to avoid unnecessarily bloated log tables. Accordingly all loging will be set by default to 'off' except in the case of an upgrade from RosterMaster(PostNuke)0.96.
RosterMasters current status is a working upgrade script along with all the functionality of the 'main' RosterMaster display (although the func is now display (ya I'm learning)) for Everquest II. This includes table header reverse sort as well as advanced sort allowing two fields to be sorted in individual directions. The rest is forms and options. Once the EQII class is fully functional I'll begin to set up the other classes and refine the API.
My vision here is to have RosterMaster act as an extensible roster module suitable to organizing and maintaining roster and roster member profiles in association with, or indifferent to, the user base with consideration of user groups.
TaskMaster has the same goals but with reference to levels of accomplished tasks,
All of this has been made possible via PostNukes' 'adambaum' pre-release... this module will not work with anything prior and WILL BE COMPLETELY UNSOPPORTED until the adambaum release (other than beta testing).
Once the EQII class has been made fully functional I'll commit the project to the current PostNuke NOC project SVN for beta testing.
RosterMaster(PostNuke)0.97 and TaskMaster(PostNuke)x.xx naming policy will be dependent on the official release name of the adambaum
Generated on September 25, 2007.
-
How you can help Postnuke - Part 1
(News)
-
There are many general CMS, Coding, PHP aso communities all over the web. Tell them what we are doing.
Some examples:
Ohloh.net is an open source network that connects people through the software they create and use. This is were you can meet other developers and see what they are doing. The registered projects are analyzed and can be compared. On the Postnuke project homepage you find some very interesting information about Postnuke. Ohloh.net regards not only the Postnuke core but also some of the better known modules. Thus the statistics reflect the development of Postnuke as a whole. You can add your own repositories there and claim your code. Show those other devs, that you are there and what you are working on.
cmsshowcase.com collects websites and sorts them by the used CMS. There's not one Postnuke site in that list. You should take 2 minutes to submit your best Postnuke work.
If you are registered at xing.com you find a Postnuke Group with more than 50 professional Postnuke users - join us there.
Give presentations about Postnuke at Web Mondays or at BarCamps.
When you look for other CMS at youtube.com you find a load of tutorial videos - why don't we have any of those for Postnuke?
If you have a personal blog: write about Postnuke and what you do with it.
Maybe you have some ideas of your own that you like to share with us. Simply add a comment here!
Generated on September 5, 2007.
-
3 Bugs to go: Postnuke .8 close to Release Candidate
(News)
-
nother. Until yesterday there was only one remaining, which Robert Gasch promised to close. But now Jørn found 2 new ones: Bugtracker
Performance
While waiting for Robert to finalize the debugging of the categories module, Jørn and Mark checked .8 for its performance and found only few major flaws which have been removed in the meantime. As far as I understood Jørn's tests a blank Postnuke .8 doesn't contain more SQL-statements as inevitably needed and though calling a load of PHP functions performs quite well.
If you are able to test Postnuke on different environments - please do so and report your findings.
Language Files
David Nelson had to take a break from overhauling the English language files. But AFAIK he picked up work again and will be done soon.
After finishing the language files and closing all remaining major bugs the team will release a first release candidate.
The Wiki needs input!
If you want to help and you are neither a coder nor a templater you can help us with the documentation! Not everything in .8 i
Generated on June 6, 2007.
-
Using PostNuke and MySQL in Unicode (UTF-8)
(News)
-
MySql and UTF-8
by: Bernd Plagge
www.choicenet.ne.jp
MySql introduced support for different character sets and collating rules in version 4.1. While this has many advantages databases sometimes need to be migrated and then we have to ensure that the correct character code is set for the new database. We are mainly using UTF-8 and hence you may have to adapt this information to your situation!
What is the problem?
MySql uses as default Latin1, swedish flavour.
How do we check this?
run mysql.
mysql> show variables;
How to check the character set for a particular database?
run mysql.
mysql> show create table
The character code can be set in various places - so where is the best place for this?
We always use UTF-8
------------------------
In this case it makes sense to set the character code for the whole server to UTF-8. MySql actually sets the character code at different levels:
server
client
database connection
database
The character encoding for server, client and the connection work hand in hand to ensure that the data is interpreted correctly. It seems that MySql makes no effort to determine the correct character set but will convert data in accordance with it's configuration. This leads to problems for old databases if the database character code differes from the one configured.
The easiest way to configure MySql for UTF-8 is to put the configuration inot the main configuration file (/etc/mysql/my.cnf).
In my.cnf there are different file sections. So you can't put it just anywhere.
[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
Setting UTF-8 for one Database
--------------------------------------
You can check the default character code for a database either by dumping the data and then changing the schema file or you can do this online.
You use the 'alter table' statement to change the database using mysql.
run mysql
alter database
default character set utf-8
default collotion_name utf8-general_ci;
note: you may omit the word 'default'.
It is also worth noting that e.g. mysqldump silently adds the default character code when exporting data!
This can causes problems if the character code defined and the database content are different. In such cases MySqldump will try to convert data to it's default character code!
However, you can disable that by adding the character code option when using MySqldump.
e.g. mysqldump --set-charset.
In the same way you may explicitely set the character set.
mysqlimport --default-character-set = utf8
mysqladmin --defautl-character-set = utf8 create
Setting the character code at server start
-----------------------------------------------------
You can start the server with:
character-set-server
collation-server
The current values can be determined with the command
run MySql:
mysql> show variables;
Values may be changed with commands like:
set character_set_server = utf8;
set collation_server = utf8_unicode_ci
Setting the character code within Applications
----------------------------------------------------------
You want ensure that the correct character code is set when connecting to a particular database.
Connect to the database and issue the following SQL command:
mysql>SET NAMES utf8;
SET NAMES is equivalent to the 3 commands:
character_set_client
character_set_connection
character_set_results
How to run PostNuke in UTF-8
-----------------------------------
Several things have to fall into place for this to work correctly.
1) the database encoding needs to be set to UTF-8
2) the application language needs to be encoded in UTF-8
3) PostNuke needs to be told to use UTF-8
ad 1)
see above for details!
ad 2)
The character code for a given language is set in language//global.php (PN 0.76x) or in language//core.php (PN 0.8). Search and adjust the following 3 define strings:
define('_CHARSET','UTF-8');
define('_LOCALE','en_US');
define('_LOCALEWIN','eng');
Of course it is not sufficient just to change the _CHARSET to UTF-8. The text strings themselves need to be encoded in UTF-8. This can be done in a number of ways:
a) use 'recode' or 'iconv' on every language file
b) use the pnlwb (PN Language Workbench) to extract and convert all language files
ad 3)
Following the database initialization you need to issue a "set names to 'UTF-8'" command. As this is done in includes/pnAPI.php we need to patch that file.
PN 0.76x
----------
// load security functions.
include 'includes/pnSecurity.php';
// Load our language files
include 'includes/pnLang.php';
pnLangLoad();
//bplagge 2006-01-31 - charset fix for new MySql version
$dbconn =& pnDBGetConn(true);
$info=$dbconn->ServerInfo();
if ($dbconn->ErrorNo() != 0) {
echo "Error: "; echo $dbconn->ErrorNo();
}
// print_r($info);
$c = _CHARSET;
// Mysql uses non-standard name for UTF-8!
if ($c == 'UTF-8')
$c = 'UTF8';
$query = sprintf('SET NAMES \'%s\'', $c);
$dbconn->Execute($query);
if ($dbconn->ErrorNo()!=0) {
echo "Error: "; echo $dbconn->ErrorMsg();
echo "check pnAPI.php";
}
}
// end bplagge - mysql charset adjustment
PN 0.8
-------
if ($stages & PN_CORE_LANGS) {
// Load our language files
pnLangLoad();
}
# bp 2007-06-01
# need to "set names '' " to ensure correct data handling
$query = sprintf('SET NAMES \'%s\'', 'UTF8');
$result = DBUtil::executeSQL($query, -1, -1, true, true);
Please note that the MySQL character code names are NON STANDARD!
How to check?
----------------
I always found that phpMyAdmin is an excellent tool for MySQL databases. If the data entered in PostNuke is also correctly displayed in phpMyAdmin table browse mode I'm quite confident that everything is fine.
Generated on June 6, 2007.