<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.7.6(BH)" -->
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>Roadmap</title>
        <description></description>
        <link>http://www.midgard-project.org/development/roadmap/</link>
        <lastBuildDate>Sun, 27 Jul 2008 02:29:50 +0000</lastBuildDate>
        <generator>FeedCreator 1.7.6(BH)</generator>
        <item>
            <title>midgard.admin.sitewizard</title>
            <link>http://www.midgard-project.org/documentation/midgard-admin-sitewizard/</link>
            <description>&lt;p&gt;&lt;strong&gt;midgard.admin.sitewizard&lt;/strong&gt; is the site creation and configuration tool in &lt;a href=&quot;http://www.midgard-project.org/documentation/midcom/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM&quot;&gt;MidCOM&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;Installation&lt;/h2&gt;

&lt;p&gt;Midgard Site Wizard may be &lt;a href=&quot;http://www.midgard-project.org/documentation/installing-midcom-with-pear/&quot; class=&quot;wikipage &quot; title=&quot;Installing MidCOM with PEAR&quot;&gt;installed from PEAR packages&lt;/a&gt;. To get it running, generate a website for it using the following command:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# php /usr/share/php/midcom/lib/midgard/admin/sitegroup/bin/create-host.php -c databasename -u admin -p password --sitegroup_id 0 --topic_midcom midgard.admin.sitewizard --hostname www.example.net --host_prefix /sitewizard --extend_style template_Midgard --topic_name &quot;Midgard Site Wizard&quot;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;After this Midgard Site Wizard should be available in &lt;a href=&quot;http://www.example.net/sitewizard/&quot;&gt;http://www.example.net/sitewizard/&lt;/a&gt;.&lt;/p&gt;

&lt;div class=&quot;note&quot;&gt;
The 'datagard' package in Midgard 1.8 performs the installation and setup for you.
&lt;/div&gt;

&lt;h2&gt;Usage&lt;/h2&gt;

&lt;p&gt;Midgard Site Wizard can be found by accessing the &lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;Midgard Welcome Site&lt;/span&gt; which is typically installed to the &lt;code&gt;/midgard&lt;/code&gt; subdirectory of a Midgard server. Click the login link in the right-hand bar to enter the Wizard:&lt;/p&gt;

&lt;div class=&quot;org_routamc_photostream_photo&quot;&gt;
    &lt;div class=&quot;photo&quot;&gt;
        &lt;a href=&quot;http://www.midgard-project.org/community/photos/photo/42819e4262da11db9275a5d12ef458e458e4/&quot;&gt;&lt;img src=&quot;http://www.midgard-project.org/midcom-serveattachmentguid-434aa63462da11db9275a5d12ef458e458e4/view_midgard-welcome-17-login&quot; width=&quot;172&quot; height=&quot;156&quot; alt=&quot;view_midgard-welcome-17-login&quot; title=&quot;midgard-welcome-17-login&quot; /&gt;&lt;/a&gt;    &lt;/div&gt;
    &lt;h3&gt;Site Wizard login link&lt;/h3&gt;
&lt;/div&gt;

&lt;p&gt;After authenticating as &lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;Midgard Administrator&lt;/span&gt;, the first screen of the Wizard will appear. Here it will be possible to either create a new &lt;a href=&quot;http://www.midgard-project.org/documentation/reference-sitegroup/&quot; class=&quot;wikipage &quot; title=&quot;MidgardSitegroup&quot;&gt;sitegroup&lt;/a&gt; virtual database, or set up a new site to an existing one.&lt;/p&gt;

&lt;p&gt;You can also define an administrative user account and a &lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-quota/&quot; class=&quot;wikipage &quot; title=&quot;Quota in Midgard&quot;&gt;disk quota&lt;/a&gt; for the sitegroup.&lt;/p&gt;

&lt;div class=&quot;org_routamc_photostream_photo&quot;&gt;
    &lt;div class=&quot;photo&quot;&gt;
        &lt;a href=&quot;http://www.midgard-project.org/community/photos/photo/401b6b3862da11db9275a5d12ef458e458e4/&quot;&gt;&lt;img src=&quot;http://www.midgard-project.org/midcom-serveattachmentguid-41414ed862da11db9275a5d12ef458e458e4/view_sitewizard-create-organization&quot; width=&quot;400&quot; height=&quot;295&quot; alt=&quot;view_sitewizard-create-organization&quot; title=&quot;sitewizard-create-organization&quot; /&gt;&lt;/a&gt;    &lt;/div&gt;
    &lt;h3&gt;Create organization with Site Wizard&lt;/h3&gt;
&lt;/div&gt;

&lt;p&gt;Once the organization has been created or selected, the next screen is for creating a &lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;website&lt;/span&gt;. Here it is possible to input hostname, port and possible directory prefix for the new site.&lt;/p&gt;

&lt;div class=&quot;org_routamc_photostream_photo&quot;&gt;
    &lt;div class=&quot;photo&quot;&gt;
        &lt;a href=&quot;http://www.midgard-project.org/community/photos/photo/447c0b9c62da11db9275a5d12ef458e458e4/&quot;&gt;&lt;img src=&quot;http://www.midgard-project.org/midcom-serveattachmentguid-452fb2c862da11db9275a5d12ef458e458e4/view_sitewizard-create-website&quot; width=&quot;400&quot; height=&quot;295&quot; alt=&quot;view_sitewizard-create-website&quot; title=&quot;sitewizard-create-website&quot; /&gt;&lt;/a&gt;    &lt;/div&gt;
    &lt;h3&gt;Create website with Site Wizard&lt;/h3&gt;
&lt;/div&gt;

&lt;p&gt;For the newly-created host to be served it must also be added to &lt;a href=&quot;http://www.midgard-project.org/midcom-permalink-85c5ffbbbe028838508b199f01c0ab63&quot;&gt;Apache VirtualHost configuration&lt;/a&gt;. Once this has been done, the next step is to select a style template for the site:&lt;/p&gt;

&lt;div class=&quot;org_routamc_photostream_photo&quot;&gt;
    &lt;div class=&quot;photo&quot;&gt;
        &lt;a href=&quot;http://www.midgard-project.org/community/photos/photo/46e76c1e62da11db9275a5d12ef458e458e4/&quot;&gt;&lt;img src=&quot;http://www.midgard-project.org/midcom-serveattachmentguid-4797864462da11db9275a5d12ef458e458e4/view_sitewizard-select-style&quot; width=&quot;400&quot; height=&quot;295&quot; alt=&quot;view_sitewizard-select-style&quot; title=&quot;sitewizard-select-style&quot; /&gt;&lt;/a&gt;    &lt;/div&gt;
    &lt;h3&gt;Select style for a Midgard site&lt;/h3&gt;
&lt;/div&gt;

&lt;p&gt;After style has been selected, the site should be ready for content management.&lt;/p&gt;
</description>
            <pubDate>Mon, 14 Jul 2008 20:34:26 +0000</pubDate>
        </item>
        <item>
            <title>Midgard Documentation</title>
            <link>http://www.midgard-project.org/documentation/</link>
            <description>&lt;p&gt;&lt;strong&gt;Midgard Documentation&lt;/strong&gt; is a &lt;a href=&quot;http://en.wikipedia.org/wiki/Wiki&quot; class=&quot;wikipedia&quot;&gt;Wiki&lt;/a&gt; collecting information about features, usage and development of &lt;a href=&quot;/&quot;&gt;Midgard&lt;/a&gt;, the Open Source Content Management System. See &lt;a href=&quot;/documentation/latest/&quot;&gt;latest Wiki changes&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation/&quot; class=&quot;wikipage &quot; title=&quot;Midgard Installation Manual&quot;&gt;Installing Midgard&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-distros/&quot; class=&quot;wikipage &quot; title=&quot;Installing Midgard from Distribution Packages&quot;&gt;Distribution packages&lt;/a&gt;&lt;/strong&gt; - Midgard installers for distributions like &lt;a href=&quot;http://www.midgard-project.org/documentation/installation-distros-debian/&quot; class=&quot;wikipage &quot; title=&quot;Debian&quot;&gt;Debian&lt;/a&gt;, &lt;a href=&quot;http://www.midgard-project.org/documentation/installation-distros-fedora/&quot; class=&quot;wikipage &quot; title=&quot;Fedora Core&quot;&gt;Fedora&lt;/a&gt; and &lt;a href=&quot;http://www.midgard-project.org/documentation/installation-distros-mac-os-x/&quot; class=&quot;wikipage &quot; title=&quot;Mac OS X&quot;&gt;Mac OS X&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-source/&quot; class=&quot;wikipage &quot; title=&quot;Installing Midgard from Source&quot;&gt;Source installation&lt;/a&gt;&lt;/strong&gt; - Compile Midgard on any Unix platform&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-database/&quot; class=&quot;wikipage &quot; title=&quot;Setting Up a Midgard Database&quot;&gt;Database setup&lt;/a&gt;&lt;/strong&gt; - Creating a new Midgard database with &lt;a href=&quot;http://www.midgard-project.org/documentation/datagard/&quot; class=&quot;wikipage &quot; title=&quot;Datagard&quot;&gt;Datagard&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-vhost/&quot; class=&quot;wikipage &quot; title=&quot;Creating a New Virtual Host&quot;&gt;Virtual Host creation&lt;/a&gt;&lt;/strong&gt; - Setting Midgard to answer in different domain names&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installing-midcom-with-pear/&quot; class=&quot;wikipage &quot; title=&quot;Installing MidCOM with PEAR&quot;&gt;MidCOM installation&lt;/a&gt;&lt;/strong&gt; - Installing the &lt;a href=&quot;http://www.midgard-project.org/documentation/midcom/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM&quot;&gt;MidCOM&lt;/a&gt; component framework with PEAR&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-troubleshooting/&quot; class=&quot;wikipage &quot; title=&quot;Troubleshooting&quot;&gt;Troubleshooting&lt;/a&gt;&lt;/strong&gt; - Common problems and solutions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-upgrade/&quot; class=&quot;wikipage &quot; title=&quot;Upgrade Notes&quot;&gt;Upgrading Midgard&lt;/a&gt;&lt;/strong&gt; - How to upgrade an existing Midgard installation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-authentication/&quot; class=&quot;wikipage &quot; title=&quot;Third-party Authentication&quot;&gt;Authentication settings&lt;/a&gt;&lt;/strong&gt; - Setting Midgard to authenticate using third-party sources like LDAP or Active Directory&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/performance-tuning/&quot; class=&quot;wikipage &quot; title=&quot;Performance tuning&quot;&gt;Performance tuning&lt;/a&gt;&lt;/strong&gt; - High performance setups with Midgard&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/getting-started/&quot; class=&quot;wikipage &quot; title=&quot;Getting Started with Midgard&quot;&gt;Getting started&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard-admin-sitewizard/&quot; class=&quot;wikipage &quot; title=&quot;midgard.admin.sitewizard&quot;&gt;Midgard Site Wizard&lt;/a&gt;&lt;/strong&gt; - tool for creating new &lt;a href=&quot;http://www.midgard-project.org/documentation/reference-sitegroup/&quot; class=&quot;wikipage &quot; title=&quot;MidgardSitegroup&quot;&gt;organizations&lt;/a&gt; and &lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;websites&lt;/span&gt; into Midgard&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard-admin-wizards/&quot; class=&quot;wikipage default&quot; title=&quot;midgard.admin.wizards&quot;&gt;Midgard Wizards&lt;/a&gt;&lt;/strong&gt; - tool for running custom made site wizards plugins &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/content-production-with-midcom/&quot; class=&quot;wikipage &quot; title=&quot;Content production with MidCOM&quot;&gt;MidCOM content editing&lt;/a&gt;&lt;/strong&gt; - Managing content in Midgard&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/getting-started-create-groups/&quot; class=&quot;wikipage &quot; title=&quot;Create Groups and People&quot;&gt;Groups and People&lt;/a&gt;&lt;/strong&gt; - Managing users in Midgard&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard-administration-interfaces/&quot; class=&quot;wikipage &quot; title=&quot;Midgard Administration Interfaces&quot;&gt;Administration interfaces&lt;/a&gt;&lt;/strong&gt; - Applications for managing Midgard&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/howto-midcom/&quot; class=&quot;wikipage &quot; title=&quot;Site building with MidCOM&quot;&gt;Site building&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/getting-started-create-style/&quot; class=&quot;wikipage &quot; title=&quot;Create a Style&quot;&gt;Style creation&lt;/a&gt;&lt;/strong&gt; - Creating custom layout templates&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-method-dynamic_load/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM method dynamic_load&quot;&gt;Dynamic loading&lt;/a&gt;&lt;/strong&gt; - Including content from different site areas into a page&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/howto-midcom-menucreation/&quot; class=&quot;wikipage redirect&quot; title=&quot;Designing your own MidCOM menus&quot;&gt;Custom navigation&lt;/a&gt;&lt;/strong&gt; - Using the &lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-midcom-specs-subsystems-nap/&quot; class=&quot;wikipage &quot; title=&quot;Navigation Access Point&quot;&gt;NAP system&lt;/a&gt; to build custom site navigation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/building-multilingual-sites-with-midcom/&quot; class=&quot;wikipage default&quot; title=&quot;Building Multilingual sites with MidCOM&quot;&gt;Multilingual sites&lt;/a&gt;&lt;/strong&gt; - Making your site support multiple languages&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/building-multilingual-sites-with-midcom-template/&quot; class=&quot;wikipage &quot; title=&quot;Building Multilingual sites with MidCOM template&quot;&gt;Multilingual sites with MidCOM 2.4 - 2.6&lt;/a&gt;&lt;/strong&gt; - Older way of making your site support multiple languages&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-helper-metadata-approvals/&quot; class=&quot;wikipage &quot; title=&quot;midcom.helper.metadata approvals&quot;&gt;Approvals and scheduling&lt;/a&gt;&lt;/strong&gt; - Adding workflow to your site&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-component-configuration/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM component configuration&quot;&gt;Component configuration&lt;/a&gt;&lt;/strong&gt; - Tweaking components of your website&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/using-midcom-helper-datamanager-schemas/&quot; class=&quot;wikipage &quot; title=&quot;Using midcom.helper.datamanager schemas&quot;&gt;Content schemas&lt;/a&gt;&lt;/strong&gt; - Customizing the fields of your content editors&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/styling-midcom-error-pages/&quot; class=&quot;wikipage &quot; title=&quot;Styling MidCOM Error Pages&quot;&gt;Error pages&lt;/a&gt;&lt;/strong&gt; - Customizing error pages&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Application development&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-component-development/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM component development&quot;&gt;Component development&lt;/a&gt;&lt;/strong&gt; - Developing your own PHP components&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/using-eclipse-for-midcom-development/&quot; class=&quot;wikipage &quot; title=&quot;Using Eclipse for MidCOM development&quot;&gt;Eclipse usage&lt;/a&gt;&lt;/strong&gt; - Using the Eclipse IDE for component development&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-midcom-specs-components-styleguide/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM Coding Styleguide&quot;&gt;Coding Standards&lt;/a&gt;&lt;/strong&gt; - Standards for formatting Midgard PHP code&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/mgdschema-in-php/&quot; class=&quot;wikipage &quot; title=&quot;MgdSchema in PHP&quot;&gt;MgdSchema objects&lt;/a&gt;&lt;/strong&gt; - Data handling API&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgardquerybuilder/&quot; class=&quot;wikipage &quot; title=&quot;MidgardQueryBuilder&quot;&gt;Query Builder&lt;/a&gt;&lt;/strong&gt; - Database object query API&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_core/&quot; class=&quot;wikipage default&quot; title=&quot;PHP Midgard Core&quot;&gt;Midgard core in PHP&lt;/a&gt;&lt;/strong&gt; - Midgard core PHP API&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php-midgard_collector/&quot; class=&quot;wikipage &quot; title=&quot;PHP midgard_collector&quot;&gt;Collector&lt;/a&gt;&lt;/strong&gt; - Optimized database query API that doesn't return objects&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-helper-datamanager-api/&quot; class=&quot;wikipage &quot; title=&quot;midcom.helper.datamanager API&quot;&gt;Datamanager API&lt;/a&gt;&lt;/strong&gt; - Making your content fields customizable&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/de-bitfolge-feedcreator/&quot; class=&quot;wikipage &quot; title=&quot;de.bitfolge.feedcreator&quot;&gt;Feed creator&lt;/a&gt;&lt;/strong&gt; - Adding RSS and Atom feeds into your components&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/reference/&quot; class=&quot;wikipage &quot; title=&quot;Midgard API Reference&quot;&gt;Complete API reference&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard-core/&quot; class=&quot;wikipage &quot; title=&quot;Midgard core&quot;&gt;Midgard core C documentation&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/python_midgard/&quot; class=&quot;wikipage default&quot; title=&quot;Python Midgard &quot;&gt;Midgard in Python&lt;/a&gt;&lt;/strong&gt; - Midgard Python&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts/&quot; class=&quot;wikipage &quot; title=&quot;Concepts and features&quot;&gt;Midgard concepts&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM&quot;&gt;MidCOM&lt;/a&gt;&lt;/strong&gt; - Midgard's Component Framework for PHP&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-host_and_page/&quot; class=&quot;wikipage &quot; title=&quot;Host, URL and Dynamic Page Parameters&quot;&gt;URL handling&lt;/a&gt;&lt;/strong&gt; - How Midgard maps URLs to the database&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-users/&quot; class=&quot;wikipage &quot; title=&quot;Permissions in Midgard&quot;&gt;Permissions&lt;/a&gt;&lt;/strong&gt; - How Midgard handles permissions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-page_and_style/&quot; class=&quot;wikipage &quot; title=&quot;Midgard Templating Engine&quot;&gt;Templating Engine&lt;/a&gt;&lt;/strong&gt; - How Midgard's page composition works&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-sitegroups/&quot; class=&quot;wikipage &quot; title=&quot;Sitegroup Virtual Databases&quot;&gt;Sitegroups&lt;/a&gt;&lt;/strong&gt; - Virtual Hosting Databases in Midgard&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-quota/&quot; class=&quot;wikipage &quot; title=&quot;Quota in Midgard&quot;&gt;Quota&lt;/a&gt;&lt;/strong&gt; - Setting disk quotas in hosting environments&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-i18n/&quot; class=&quot;wikipage &quot; title=&quot;Internationalization in Midgard&quot;&gt;Internationalization&lt;/a&gt;&lt;/strong&gt; - Support for multiple languages and character sets&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-attachments/&quot; class=&quot;wikipage &quot; title=&quot;File Attachments in Midgard&quot;&gt;File attachments&lt;/a&gt;&lt;/strong&gt; - Support for binary files&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/mgdschema/&quot; class=&quot;wikipage &quot; title=&quot;MgdSchema&quot;&gt;MgdSchema&lt;/a&gt;&lt;/strong&gt; - Database object abstraction&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/mgdschema-metadata-object/&quot; class=&quot;wikipage &quot; title=&quot;MgdSchema metadata object&quot;&gt;Metadata object&lt;/a&gt;&lt;/strong&gt; - Centralized metadata system&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-formatting/&quot; class=&quot;wikipage &quot; title=&quot;Formatting engine&quot;&gt;Formatting engine&lt;/a&gt;&lt;/strong&gt; - Registering and using content formatting functions in HTML&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/exorcist/&quot; class=&quot;wikipage &quot; title=&quot;Exorcist&quot;&gt;Exorcist&lt;/a&gt;&lt;/strong&gt; - Replication and cross-CMS content migration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/unittesting/&quot; class=&quot;wikipage &quot; title=&quot;UnitTesting&quot;&gt;UnitTesting&lt;/a&gt;&lt;/strong&gt; - Writing unittests for the php API&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Midgard tools and configuration&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/command-line-tools/&quot; class=&quot;wikipage &quot; title=&quot;Command line tools&quot;&gt;Command line tools&lt;/a&gt;&lt;/strong&gt; - Running midgard from command line, debug, testing and other tools&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/unified-configuration/&quot; class=&quot;wikipage &quot; title=&quot;Unified configuration&quot;&gt;Unified configuration&lt;/a&gt;&lt;/strong&gt; - Configuration with ini like files and reusing them between applications&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Other information&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/glossary/&quot; class=&quot;wikipage &quot; title=&quot;Glossary&quot;&gt;Glossary&lt;/a&gt;&lt;/strong&gt; - Getting hang of Midgard terminology&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/translating-midcom-and-components/&quot; class=&quot;wikipage &quot; title=&quot;Translating MidCOM and components&quot;&gt;Localization&lt;/a&gt;&lt;/strong&gt; - How to translate Midgard to your own language&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/external-tutorials/&quot; class=&quot;wikipage &quot; title=&quot;External tutorials&quot;&gt;External tutorials&lt;/a&gt;&lt;/strong&gt; - Midgard information elsewhere on the web&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/how-to-contribute-documentation/&quot; class=&quot;wikipage &quot; title=&quot;How to contribute documentation&quot;&gt;Documentation contribution&lt;/a&gt;&lt;/strong&gt; - How to contribute content to this wiki&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/authors/&quot; class=&quot;wikipage &quot; title=&quot;Authors&quot;&gt;Authors&lt;/a&gt;&lt;/strong&gt; - Wiki contributors&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The &lt;a href=&quot;http://www.midgard-project.org/documentation/net-nemein-wiki/&quot; class=&quot;wikipage &quot; title=&quot;net.nemein.wiki&quot;&gt;Midgard Wiki&lt;/a&gt; software makes it easy for community members to add more documentation to this site. The whole documentation is &lt;a href=&quot;http://en.wikipedia.org/wiki/Open_content&quot; class=&quot;wikipedia&quot;&gt;open content&lt;/a&gt; available under the &lt;a href=&quot;/midcom-permalink-efc0f1058f661b2f8b765bbb46f9508b&quot;&gt;Creative Commons Attribution-ShareAlike&lt;/a&gt; license.&lt;/p&gt;
</description>
            <pubDate>Tue, 08 Jul 2008 15:21:38 +0000</pubDate>
        </item>
        <item>
            <title>Midgard Installation Manual</title>
            <link>http://www.midgard-project.org/documentation/installation/</link>
            <description>&lt;p&gt;Midgard installation procedure consists of three stages: installing the framework, setting up a new database with the default applications and creating a new virtual host.&lt;/p&gt;

&lt;p&gt;The web site creation process after the installation is not covered in this manual. Please refer to the parts &lt;a href=&quot;http://www.midgard-project.org/documentation/getting-started/&quot; class=&quot;wikipage &quot; title=&quot;Getting Started with Midgard&quot;&gt;Getting Started with Midgard&lt;/a&gt; and &lt;a href=&quot;http://www.midgard-project.org/documentation/howto/&quot; class=&quot;wikipage &quot; title=&quot;Using Midgard CMS&quot;&gt;Using Midgard CMS&lt;/a&gt; in the Midgard documentation.&lt;/p&gt;

&lt;p&gt;The framework can be installed from distribution packages or compiled from source. The Midgard team recommends use of the distribution packages wherever they are available for your OS and distribution. The distribution packages are tested to work and therefore very reliable. Also most distributions have automated update methods for packages which ensures you're always using the latest stable version of the Midgard Framework.&lt;/p&gt;

&lt;p&gt;The database and virtual host configuration is handled by &lt;a href=&quot;http://www.midgard-project.org/documentation/datagard/&quot; class=&quot;wikipage &quot; title=&quot;Datagard&quot;&gt;Datagard&lt;/a&gt;, the Midgard database and virtual host administration tool.&lt;/p&gt;

&lt;h2&gt;Optional installation methods&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-distros/&quot; class=&quot;wikipage &quot; title=&quot;Installing Midgard from Distribution Packages&quot;&gt;Installing Midgard from Distribution Packages&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-source/&quot; class=&quot;wikipage &quot; title=&quot;Installing Midgard from Source&quot;&gt;Installing Midgard from Source&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Setting up Midgard&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-database/&quot; class=&quot;wikipage &quot; title=&quot;Setting Up a Midgard Database&quot;&gt;Setting Up a Midgard Database&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-vhost/&quot; class=&quot;wikipage &quot; title=&quot;Creating a New Virtual Host&quot;&gt;Creating a New Virtual Host&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installing-midcom-with-pear/&quot; class=&quot;wikipage &quot; title=&quot;Installing MidCOM with PEAR&quot;&gt;Installing MidCOM with PEAR&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard-admin-sitewizard/&quot; class=&quot;wikipage &quot; title=&quot;midgard.admin.sitewizard&quot;&gt;Setting up a MidCOM website&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-additional-packages/&quot; class=&quot;wikipage &quot; title=&quot;Installing Additional Packages&quot;&gt;Installing Additional Packages&lt;/a&gt; (deprecated)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Upgrading and troubleshooting&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-troubleshooting/&quot; class=&quot;wikipage &quot; title=&quot;Troubleshooting&quot;&gt;Troubleshooting&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-upgrade/&quot; class=&quot;wikipage &quot; title=&quot;Upgrade Notes&quot;&gt;Upgrade Notes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Advanced settings&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/installation-authentication/&quot; class=&quot;wikipage &quot; title=&quot;Third-party Authentication&quot;&gt;Third-party Authentication&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;Staging/Live Setup with Exorcist&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/staging_to_live_setup_with_midcom/&quot; class=&quot;wikipage default&quot; title=&quot;Staging to Live Setup with MidCOM&quot;&gt;Staging to Live Setup with MidCOM&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-services-indexer-installation/&quot; class=&quot;wikipage &quot; title=&quot;midcom.services.indexer installation&quot;&gt;Installing MidCOM full-text search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/using-midgard-with-plesk/&quot; class=&quot;wikipage &quot; title=&quot;Using Midgard with Plesk&quot;&gt;Using Midgard with Plesk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/performance-tuning/&quot; class=&quot;wikipage &quot; title=&quot;Performance tuning&quot;&gt;Performance tuning&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/setting-up-squid-reverse-proxy/&quot; class=&quot;wikipage &quot; title=&quot;Setting up Squid reverse proxy&quot;&gt;Setting up Squid reverse proxy&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Midgard documentation team is happy to incorporate your experiences and additions to these installation instructions. To &lt;a href=&quot;http://www.midgard-project.org/documentation/how-to-contribute-documentation/&quot; class=&quot;wikipage &quot; title=&quot;How to contribute documentation&quot;&gt;share corrections&lt;/a&gt; or platform-specific information, please contact the development team.&lt;/p&gt;
</description>
            <pubDate>Tue, 01 Jul 2008 00:42:51 +0000</pubDate>
        </item>
        <item>
            <title>Upgrading MidCOM from 2.4 to 2.6</title>
            <link>http://www.midgard-project.org/documentation/upgrading-midcom-from-2-4-to-2-6/</link>
            <description>&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midcom/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM&quot;&gt;MidCOM&lt;/a&gt; upgrade&lt;/strong&gt; from 2.4 to 2.6 requires several manual steps.&lt;/p&gt;

&lt;div class=&quot;warning&quot;&gt;
Start the upgrade by backing up your database!
&lt;/div&gt;

&lt;h2&gt;Site initialization&lt;/h2&gt;

&lt;p&gt;MidCOM 2.6 uses the site initialization system specified in &lt;a href=&quot;/midcom-permalink-307940d91acd7e70423358aab6c8a0a9&quot;&gt;mRFC 0025&lt;/a&gt;. This differs quite much from the system used in the old &lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-template/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM template&quot;&gt;MidCOM template&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Create a new site using the &lt;a href=&quot;http://www.midgard-project.org/documentation/midgard-admin-sitewizard/&quot; class=&quot;wikipage &quot; title=&quot;midgard.admin.sitewizard&quot;&gt;Site Wizard&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Go to the site, &lt;a href=&quot;http://www.midgard-project.org/documentation/logging-into-midcom/&quot; class=&quot;wikipage &quot; title=&quot;Logging into MidCOM&quot;&gt;log in&lt;/a&gt;, and click &lt;em&gt;Website&lt;/em&gt; -&gt; &lt;em&gt;Website settings&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Change the root topic to point to your existing root topic&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Content conversion&lt;/h2&gt;

&lt;h3&gt;Deprecated components&lt;/h3&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
  &lt;th&gt;Component used in 2.4&lt;/th&gt;
  &lt;th&gt;Component used in 2.6&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;de.linkm.taviewer&lt;/span&gt;&lt;/td&gt;
  &lt;td&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;net.nehmer.static&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/de-linkm-newsticker/&quot; class=&quot;wikipage &quot; title=&quot;de.linkm.newsticker&quot;&gt;de.linkm.newsticker&lt;/a&gt;&lt;/td&gt;
  &lt;td&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;net.nehmer.blog&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/reference-components-de.linkm.events/&quot; class=&quot;wikipage &quot; title=&quot;de.linkm.events&quot;&gt;de.linkm.events&lt;/a&gt;&lt;/td&gt;
  &lt;td&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/net-nemein-calendar/&quot; class=&quot;wikipage &quot; title=&quot;net.nemein.calendar&quot;&gt;net.nemein.calendar&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/reference-components-net.nemein.rss/&quot; class=&quot;wikipage &quot; title=&quot;net.nemein.rss&quot;&gt;net.nemein.rss&lt;/a&gt;&lt;/td&gt;
  &lt;td&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;net.nehmer.blog&lt;/span&gt; with RSS subscription mode enabled&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/concepts-midcom-specs-subsystems-ais/&quot; class=&quot;wikipage &quot; title=&quot;midcom.admin.content&quot;&gt;midcom.admin.content&lt;/a&gt;&lt;/td&gt;
  &lt;td&gt;Not used, administration is now on-site&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

&lt;h3&gt;Converting the content areas&lt;/h3&gt;

&lt;p&gt;Run the supplied &lt;code&gt;migrate_26.php&lt;/code&gt; script to migrate the content to use MidCOM's new Access Control Lists and new components instead of the old 2.4 ones.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;php ./migrate_26.php -c databasename -u admin -p password
&lt;/code&gt;&lt;/pre&gt;

&lt;h2&gt;Style conversion&lt;/h2&gt;

&lt;p&gt;Since MidCOM template is not used with MidCOM 2.6, the &lt;a href=&quot;http://www.midgard-project.org/documentation/midcom-template-style-elements/&quot; class=&quot;wikipage &quot; title=&quot;MidCOM template style elements&quot;&gt;MidCOM template style elements&lt;/a&gt; are not available either. Instead of them utilize direct MidCOM services instead. Some examples below:&lt;/p&gt;

&lt;h3&gt;Navigation&lt;/h3&gt;

&lt;p&gt;Use &lt;a href=&quot;http://www.midgard-project.org/documentation/fi-protie-navigation/&quot; class=&quot;wikipage &quot; title=&quot;fi.protie.navigation&quot;&gt;fi.protie.navigation&lt;/a&gt; instead of the old &lt;code&gt;&amp;lt;(navi-dynamic)&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;Breadcrumb trail&lt;/h3&gt;

&lt;p&gt;Use something like the following instead of the &lt;code&gt;&amp;lt;(breadcrumb)&amp;gt;&lt;/code&gt; element:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;div class=&quot;breadcrumb&quot;&amp;gt;&amp;lt;?php echo $nap-&amp;gt;get_breadcrumb_line(); ?&amp;gt;&amp;lt;/div&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;h3&gt;Example &lt;code&gt;&amp;lt;(ROOT)&amp;gt;&lt;/code&gt; element&lt;/h3&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&amp;gt;  
&amp;lt;html&amp;gt;
    &amp;lt;head&amp;gt;
        &amp;lt;title&amp;gt;&amp;lt;(title)&amp;gt; - &amp;lt;?php echo $_MIDCOM-&amp;gt;get_context_data(MIDCOM_CONTEXT_PAGETITLE); ?&amp;gt;&amp;lt;/title&amp;gt;
        &amp;lt;?php
        echo $_MIDCOM-&amp;gt;print_head_elements();
        ?&amp;gt;
    &amp;lt;/head&amp;gt;
    &amp;lt;body &amp;lt;?php echo $_MIDCOM-&amp;gt;print_jsonload(); ?&amp;gt; &amp;gt; 
        &amp;lt;?php
        $_MIDCOM-&amp;gt;toolbars-&amp;gt;show();
        ?&amp;gt;    
        &amp;lt;(content)&amp;gt;
        &amp;lt;?php
        $_MIDCOM-&amp;gt;uimessages-&amp;gt;show();
        ?&amp;gt;
    &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
</description>
            <pubDate>Mon, 02 Jun 2008 20:27:44 +0000</pubDate>
        </item>
        <item>
            <title>Debian</title>
            <link>http://www.midgard-project.org/documentation/installation-distros-debian/</link>
            <description>&lt;p&gt;Add the following lines to &lt;code&gt;/etc/apt/sources.list&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&quot;note&quot;&gt;
Replace binary-i386 with binary-amd64 for 64bit environments.
&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;For Debian stable &lt;strong&gt;( etch )&lt;/strong&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;deb http://www.midgard-project.org/debian/dists/stable/main/binary-i386 ./  
# deb-src http://www.midgard-project.org/debian/dists/stable/source/ ./
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;amd64&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;deb http://www.midgard-project.org/debian/dists/stable/main/binary-amd64 ./
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For Debian testing &lt;strong&gt;( lenny )&lt;/strong&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;deb http://www.midgard-project.org/debian/dists/testing/main/binary-i386 ./  
# deb-src  http://www.midgard-project.org/debian/dists/testing/source/ ./
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For Debian unstable &lt;strong&gt;( sid )&lt;/strong&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;deb http://www.midgard-project.org/debian/dists/unstable/main/binary-i386 ./  
# deb-src http://www.midgard-project.org/debian/dists/unstable/source/ ./
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Run &lt;code&gt;apt-get update&lt;/code&gt; for updating the apt database (this adds our repository into your apt).&lt;/p&gt;

&lt;p&gt;If you're installing for Apache HTTP Server 1.3.X series, install Midgard with the command:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;apt-get install midgard-data php4-midgard.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;If you're installing for Apache HTTP Server 2.X series, install Midgard with the command:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;apt-get install midgard-data libapache2-mod-midgard
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Unfortunatelly there is no empty &quot;midgard&quot; package, as we need to provide support for both Apache HTTP Server series.&lt;/p&gt;

&lt;p&gt;Run &lt;code&gt;datagard&lt;/code&gt; for setting up a new Midgard database and virtual host. Read the instructions from &lt;a href=&quot;http://www.midgard-project.org/documentation/installation-database/&quot; class=&quot;wikipage &quot; title=&quot;Setting Up a Midgard Database&quot;&gt;Setting Up a Midgard Database&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;Debian sarge&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;For old stable debian:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;deb http://www.midgard-project.org/debian/dists/sarge/main/binary-i386 ./
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Midgard packages for debian sarge include php5-midgard package. This package is built against php5 packages available from &lt;a href=&quot;http://dotdeb.org&quot;&gt;http://dotdeb.org&lt;/a&gt;. If you want to you PHP5 and php5-midgard on sarge, add dotdeb repository to your sources.list  and install php5 and php5-midgard.&lt;/p&gt;

&lt;p&gt;For Debian Sarge, you currently have to edit the &lt;code&gt;/etc/apache2/apache2.conf&lt;/code&gt; and add:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Include /etc/midgard/apache/httpd.conf
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Also you must comment out the &lt;code&gt;Listen 80&lt;/code&gt; entry in &lt;code&gt;/etc/apache2/ports.conf&lt;/code&gt;.&lt;/p&gt;

&lt;div class=&quot;note&quot;&gt;
If you are running other vhosts on the box, you might have to do more.
&lt;/div&gt;

&lt;p&gt;If, after following all the instructions regarding the installation with Debian packages, you end up with a broken homepage, try this:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;* Try the /aegir/ url (as a suffix to your virtual host URL)
* Check inside the midgard database if you have a host (in the host table) without a prefix (you should, otherwise do the following)
* Restart de datagard application and select Update - Upgrade ...
* If debconf crashes with a geometry error (something about coordinates in the graphical size), resize the window and try again
* Retry using the /aegir/ suffix and use the default admin password &quot;password&quot;
&lt;/code&gt;&lt;/pre&gt;
</description>
            <pubDate>Thu, 29 May 2008 12:57:48 +0000</pubDate>
        </item>
        <item>
            <title>Midgard Apache directives</title>
            <link>http://www.midgard-project.org/documentation/midgard-apache-directives/</link>
            <description>&lt;p&gt;Note this list is incomplete for now&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;MidgardEngine on/off&lt;/li&gt;
&lt;li&gt;MidgardDatabase ip/hostname:database user pass

&lt;ul&gt;
&lt;li&gt;the IP or hostname of remote database is optional (remember to remove the colon as well)&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;MidgardBlobDir &quot;path&quot;&lt;/li&gt;
&lt;li&gt;MidgardRootfile &quot;path&quot;&lt;/li&gt;
&lt;li&gt;MidgardPageCacheDir &quot;path&quot;

&lt;ul&gt;
&lt;li&gt;Not to be used with the -nommp variant of MidgardRootFile&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;MidgardLog level &quot;path&quot;

&lt;ul&gt;
&lt;li&gt;if path is empty log goes to apache default error log&lt;/li&gt;
&lt;li&gt;valid levels

&lt;ul&gt;
&lt;li&gt;debug+&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;MidgardFavorFiles on/off

&lt;ul&gt;
&lt;li&gt;If set on then Apache checks if it can serve a file from the DocumentRoot before letting Midgard check for match (and MidCOM sites will &lt;em&gt;always&lt;/em&gt; match since they have active url parsing at root page).&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
            <pubDate>Thu, 22 May 2008 12:59:42 +0000</pubDate>
        </item>
        <item>
            <title>MidCOM template style elements</title>
            <link>http://www.midgard-project.org/documentation/midcom-template-style-elements/</link>
            <description>&lt;p&gt;Here is an example of how the elements can be used in the &lt;code&gt;ROOT&lt;/code&gt; element. This example follows the &lt;a href=&quot;http://wiki.oscom.org/tiki-index.php&quot;&gt;OSCOM XHTML formatting Guidelines&lt;/a&gt;, and can be easily used with most layouts as-is, with the actual formatting rules going as CSS to files in the filesystem.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php
echo &quot;&amp;lt;?xml version=\&quot;1.0\&quot;?&amp;gt;\n&quot;;

// Get the content language
$language = $_MIDCOM-&amp;gt;i18n-&amp;gt;get_content_language();
?&amp;gt;
&amp;lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&amp;gt;
&amp;lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;&amp;amp;(language:h);&quot; lang=&quot;&amp;amp;(language:h);&quot;&amp;gt;
  &amp;lt;head&amp;gt;
    &amp;lt;title&amp;gt;Site Example | &amp;lt;(page-title)&amp;gt;&amp;lt;/title&amp;gt;
    &amp;lt;!-- Insert stylesheets and JavaScript files here as example below shows --&amp;gt;
    &amp;lt;link rel=&quot;stylesheet&quot; href=&quot;/css/style.css&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&amp;gt;
    &amp;lt;link rel=&quot;stylesheet&quot; href=&quot;/css/content.css&quot; type=&quot;text/css&quot; media=&quot;all&quot; /&amp;gt;
    &amp;lt;link rel=&quot;stylesheet&quot; href=&quot;/css/print.css&quot; type=&quot;text/css&quot; media=&quot;print&quot; /&amp;gt;
    &amp;lt;link rel=&quot;stylesheet&quot; href=&quot;&amp;lt;?php echo MIDCOM_STATIC_URL; ?&amp;gt;midcom.helper.datamanager2/legacy.css&quot; /&amp;gt;
    &amp;lt;?php
    // Print MidCOM head elements (e.g. component stylesheets and JavaScript files)
    $_MIDCOM-&amp;gt;print_head_elements();
    ?&amp;gt;
  &amp;lt;/head&amp;gt;
  &amp;lt;body class=&quot;&amp;lt;?php echo $_MIDCOM-&amp;gt;metadata-&amp;gt;get_page_class(); ?&amp;gt;&quot; &amp;lt;?php $_MIDCOM-&amp;gt;print_jsonload(); ?&amp;gt;&amp;gt;
    &amp;lt;?php
    // Show the toolbar
    $_MIDCOM-&amp;gt;toolbars-&amp;gt;show();
    ?&amp;gt;
    &amp;lt;div id=&quot;container&quot;&amp;gt;
      &amp;lt;div id=&quot;branding&quot;&amp;gt;
        &amp;lt;div class=&quot;grouplogo&quot;&amp;gt;
          &amp;lt;!-- Insert logo here --&amp;gt;
        &amp;lt;/div&amp;gt;
        &amp;lt;div id=&quot;branding-tagline&quot;&amp;gt;
        &amp;lt;/div&amp;gt;
        &amp;lt;div id=&quot;branding-trail&quot;&amp;gt;
          &amp;lt;?php
          $nap = new midcom_helper_nav();
          echo $nap-&amp;gt;get_breadcrumb_line();
          ?&amp;gt;
        &amp;lt;/div&amp;gt;
      &amp;lt;/div&amp;gt;
      &amp;lt;div id=&quot;nav&quot;&amp;gt;
        &amp;lt;div id=&quot;nav-main&quot;&amp;gt;
          &amp;lt;?php
          // Load the navigation component
          $_MIDCOM-&amp;gt;componentloader-&amp;gt;load('fi.protie.navigation');

          // Initialize navigation class
          $navigation = new fi_protie_navigation();

          // Draw the navigation
          $navigation-&amp;gt;draw();
          ?&amp;gt;
        &amp;lt;/div&amp;gt;
        &amp;lt;div id=&quot;nav-language&quot;&amp;gt;
         &amp;lt;!-- Language switching links --&amp;gt;
        &amp;lt;/div&amp;gt;
        &amp;lt;div id=&quot;search&quot;&amp;gt;
          &amp;lt;div class=&quot;search-input&quot;&amp;gt;
          &amp;lt;/div&amp;gt;
        &amp;lt;/div&amp;gt;
      &amp;lt;/div&amp;gt;
      &amp;lt;div id=&quot;content&quot;&amp;gt;
        &amp;lt;div id=&quot;content-main&quot;&amp;gt;
          &amp;lt;(content)&amp;gt;
        &amp;lt;/div&amp;gt;
      &amp;lt;/div&amp;gt;
      &amp;lt;?php
      // Show UI messages
      $_MIDCOM-&amp;gt;uimessages-&amp;gt;show();
      ?&amp;gt;
      &amp;lt;div id=&quot;siteinfo&quot;&amp;gt;
        &amp;lt;div id=&quot;siteinfo-credits&quot;&amp;gt;
          Created by &amp;lt;a href=&quot;http://www.nemein.com/&quot;&amp;gt;Nemein Oy&amp;lt;/a&amp;gt;.
          Powered by &amp;lt;a href=&quot;http://www.midgard-project.org/&quot;&amp;gt;Midgard CMS&amp;lt;/a&amp;gt;.
        &amp;lt;/div&amp;gt;
        &amp;lt;div class=&quot;siteinfo-legal&quot;&amp;gt;
         &amp;lt;!-- Copyright disclaimer and possible licensing --&amp;gt;
        &amp;lt;/div&amp;gt;
        &amp;lt;div id=&quot;feedback&quot;&amp;gt;
            &amp;lt;!-- link to feedback --&amp;gt;
        &amp;lt;/div&amp;gt;
      &amp;lt;/div&amp;gt;
    &amp;lt;/div&amp;gt;
  &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
</description>
            <pubDate>Thu, 22 May 2008 11:32:08 +0000</pubDate>
        </item>
        <item>
            <title>MidCOM component templating</title>
            <link>http://www.midgard-project.org/documentation/midcom_component_templating/</link>
            <description>&lt;p&gt;hi na hi&lt;/p&gt;
</description>
            <pubDate>Mon, 19 May 2008 12:51:46 +0000</pubDate>
        </item>
        <item>
            <title>midgard_replicator method import_from_xml</title>
            <link>http://www.midgard-project.org/documentation/midgard_replicator-method-import_from_xml/</link>
            <description>&lt;p&gt;Imports data from xml content.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;void&lt;/em&gt; &lt;strong&gt;import_from_xml(&lt;em&gt;string&lt;/em&gt; xml);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Minimum version: 1.8.1&lt;/p&gt;

&lt;p&gt;This method takes one parameter:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;xml&lt;/em&gt;, valid xml content&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You should use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard_replicator-method-serialize/&quot; class=&quot;wikipage default&quot; title=&quot;midgard_replicator method serialize&quot;&gt;serialize method&lt;/a&gt; if you need serialized object's data.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard_replicator-method-export_blob/&quot; class=&quot;wikipage default&quot; title=&quot;midgard_replicator method export_blob&quot;&gt;export_blob method&lt;/a&gt; if you need to export midgard_attachment's binary data&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/midgard_replicator-method-export_purged/&quot; class=&quot;wikipage default&quot; title=&quot;midgard_replicator method export_purged&quot;&gt;export_purged method&lt;/a&gt; if you need to export all objects which have previously been purged.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Examples&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;$xml = file_get_contents(&quot;exported.xml&quot;);
midgard_replicator::import_from_xml($xml);
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php-midgard_replicator/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_replicator&quot;&gt;PHP midgard_replicator&lt;/a&gt;&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 19:37:41 +0000</pubDate>
        </item>
        <item>
            <title>MgdSchema method connect</title>
            <link>http://www.midgard-project.org/documentation/mgdschema_method_connect/</link>
            <description>&lt;p&gt;__void $object-&gt;connect(event_name, array callback, [array params])__&lt;/p&gt;

&lt;p&gt;Minimum version: Midgard 1.9&lt;/p&gt;

&lt;p&gt;Connects callback to &lt;a href=&quot;http://www.midgard-project.org/documentation/php_events/&quot; class=&quot;wikipage default&quot; title=&quot;PHP Events&quot;&gt;event&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This method takes three arguments:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;event_name&lt;/strong&gt;, a name of the event for which callback is connected to, for example &lt;code&gt;action_update_hook&lt;/code&gt;, &lt;code&gt;action_created&lt;/code&gt; or &lt;code&gt;action_loaded&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;callback&lt;/strong&gt;, an array which is user defined PHP callback&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;params&lt;/strong&gt;, an array with parameters which will be passed to callback&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A &lt;a href=&quot;http://www.php.net/callback&quot;&gt;callback&lt;/a&gt; function is connected to event(signal) emited by instance which invokes connect method. You may connect to one instance and event as many callbacks as you need.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php  

function my_callback($object, $data)
{
    echo &quot;Connected to &quot;.$object-&amp;gt;guid;
    echo &quot;And have special data &quot;.$data;   
}

$article = midgard_object_class::factory(&quot;midgard_article&quot;, 123);
$article-&amp;gt;connect(&quot;action_update_hook&quot;, array(&quot;my_callback&quot;), array(&quot;abc&quot;));

$article-&amp;gt;update();

?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Read more about &lt;a href=&quot;http://www.midgard-project.org/documentation/php_events/&quot; class=&quot;wikipage default&quot; title=&quot;PHP Events&quot;&gt;events&lt;/a&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 08:24:21 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method connect</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_connect/</link>
            <description>&lt;p&gt;Connects a callback.&lt;/p&gt;

&lt;p&gt;Name of this method may be confusing, as it may suggest database connection.
&lt;strong&gt;connect&lt;/strong&gt; method name is reserved for all midgard objects, and it's related to &lt;a href=&quot;http://www.midgard-project.org/documentation/php_events/&quot; class=&quot;wikipage default&quot; title=&quot;PHP events&quot;&gt;events handling&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Read about &lt;a href=&quot;http://www.midgard-project.org/documentation/mgdschema_method_connect/&quot; class=&quot;wikipage default&quot; title=&quot;mgdschema method connect&quot;&gt;mgdschema method connect&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 08:23:30 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method set_debuglevel</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_set_debuglevel/</link>
            <description>&lt;p&gt;Set log verbosity level.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;void&lt;/em&gt; &lt;strong&gt;set_debuglevel(level);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;set_debuglevel&lt;/strong&gt; takes one parameter and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;level &lt;em&gt;string&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Available and usable levels:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;warn ( or warning)&lt;/li&gt;
&lt;li&gt;info&lt;/li&gt;
&lt;li&gt;message&lt;/li&gt;
&lt;li&gt;debug&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The default &lt;em&gt;warn&lt;/em&gt; will produce only warning logs. &lt;em&gt;info&lt;/em&gt; and &lt;em&gt;message&lt;/em&gt; provides functions and method names be written to log file with additional messages produced by invoked functions. &lt;em&gt;debug&lt;/em&gt; produces function and method names and all SQL queries.&lt;/p&gt;

&lt;p&gt;You may set debuglevel as many time as needed during runtime. Log level is limited to currently invoked application, even if more than one reuse the same configuration and underlying connection to the same database.&lt;/p&gt;

&lt;p&gt;This method overwrites loglevel set in &lt;a href=&quot;http://www.midgard-project.org/documentation/unified-configuration/&quot; class=&quot;wikipage &quot; title=&quot;unified configuration&quot;&gt;unified configuration&lt;/a&gt;. Log messages may be written to defined log file.&lt;/p&gt;

&lt;h2&gt;Example&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 midgard_connection::set_debuglevel(&quot;info&quot;);

 try
 {
     $object = midgard_person(123);
 }
 catch(midgard_error_exception $e)
 {
     echo &quot;Failed to get object&quot; . $e-&amp;gt;getMessage();
 }

 $object-&amp;gt;lastname = &quot;Smith&quot;;

 midgard_connection::set_debuglevel(&quot;debug&quot;);

 if(!$object-&amp;gt;update()) {

     if(midgard_connection::get_error() = MGD_ERR_ACCESS_DENIED)
         echo &quot;You are not allowed to edit this document&quot;; 
 } 

 midgard_connection::set_debuglevel(&quot;warn&quot;)

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 08:17:49 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method get_user</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_get_user/</link>
            <description>&lt;p&gt;Get midgard_user.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;midgard_user&lt;/em&gt; &lt;strong&gt;get_user(void);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;get_user&lt;/strong&gt; takes no parameters and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Returns midgard_user object, or &lt;em&gt;NULL&lt;/em&gt; if there's no authenticated user.&lt;/p&gt;

&lt;p&gt;Read about &lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_user/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_user&quot;&gt;midgard_user&lt;/a&gt; class.&lt;/p&gt;

&lt;h2&gt;Example&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 $user = midgard_connection::get_user();

 if(!$user-&amp;gt;is_admin())
 {
     echo &quot;You are not allowed to edit this document&quot;;
 }

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 08:06:09 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method get_error_string</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_get_error_string/</link>
            <description>&lt;p&gt;Get latest error string.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;string&lt;/em&gt; &lt;strong&gt;get_error_string(void);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;get_error_string&lt;/strong&gt; takes no parameters and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Returns error string.&lt;/p&gt;

&lt;h2&gt;Example&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 try
 {
     $object = midgard_person(1);
 }
 catch(midgard_error_exception $e)
 {
     echo &quot;Failed to get object&quot; . $e-&amp;gt;getMessage();
 }

 $object-&amp;gt;lastname = &quot;Smith&quot;;

 if(!$object-&amp;gt;update()) {

     echo midgard_connection::get_error_string();
 } 

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 07:59:17 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method get_error</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_get_error/</link>
            <description>&lt;p&gt;Get latest error id.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;int&lt;/em&gt; &lt;strong&gt;get_error(void);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;get_error&lt;/strong&gt; takes no parameters and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Returns error constant id.&lt;/p&gt;

&lt;p&gt;List or error ids is documented in midgard-core documentation.&lt;/p&gt;

&lt;h2&gt;Example&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 try
 {
     $object = midgard_person(0);
 }
 catch(midgard_error_exception $e)
 {
     echo &quot;Failed to get object&quot; . $e-&amp;gt;getMessage();
 }

 $object-&amp;gt;lastname = &quot;Smith&quot;;

 if(!$object-&amp;gt;update()) {

     if(midgard_connection::get_error() == MGD_ERR_NOT_EXISTS)
         echo &quot;Can not update object which doesn't exist&quot;; 
 } 

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 07:55:59 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection/</link>
            <description>&lt;div class=&quot;note&quot;&gt;
This part of API is forward compatible and it's recommended for Midgard 1.9/2.0. This is experimental section.
&lt;/div&gt;

&lt;p&gt;MidgardConnection (&lt;strong&gt;midgard_connection&lt;/strong&gt;) class initializes new Midgard connection and is responsible for holding and setting environmental variables ( like language, sitegroup, errors ). On PHP level is implemented as &lt;strong&gt;singleton&lt;/strong&gt; object, and once connection object is created, it's available as $_MIDGARD_CONNECTION superglobal.&lt;/p&gt;

&lt;p&gt;Minimum version: 1.9&lt;/p&gt;

&lt;h2&gt;Creating new midgard_connection ( constructor )&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;midgard_connection&lt;/strong&gt; object is instantiated without arguments.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$cnc = new midgard_connection();
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;You do not have to store and keep reference to newly created object.
Both calls are equal:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$cnc-&amp;gt;open(&quot;midgard&quot;);
$_MIDGARD_CONNECTION-&amp;gt;open(&quot;midgard&quot;);
&lt;/code&gt;&lt;/pre&gt;

&lt;h2&gt;Midgard Connection methods&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_open/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method open&quot;&gt;open&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_open_config/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method open_config&quot;&gt;open_config&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_set_sitegroup/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method set_sitegroup&quot;&gt;set_sitegroup&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_get_sitegroup/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method get_sitegroup&quot;&gt;get_sitegroup&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_set_lang/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method set_lang&quot;&gt;set_lang&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_get_lang/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method get_lang&quot;&gt;get_lang&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_get_error/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method get_error&quot;&gt;get_error&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_get_error_string/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method get_error_string&quot;&gt;get_error_string&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_get_user/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method get_user&quot;&gt;get_user&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_set_debuglevel/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method set_debuglevel&quot;&gt;set_debuglevel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_connect/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method connect&quot;&gt;connect&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 07:44:16 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method get_lang</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_get_lang/</link>
            <description>&lt;p&gt;Get runtime language.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;mixed&lt;/em&gt; &lt;strong&gt;get_lang(void);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;get_lang&lt;/strong&gt; takes no parameters and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Returns two letter language code, which confirms &lt;a href=&quot;http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes&quot;&gt;ISO 639-1&lt;/a&gt; standard. 
&lt;em&gt;NULL&lt;/em&gt; is returned if runtime language is set to 0 ( no language context ).&lt;/p&gt;

&lt;h2&gt;Example&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 $lang_code midgard_connection::get_lang();

 if(is_null($lang_code))
 {
     echo &quot;No language set&quot;;
 }
 else 
 {
     echo &quot;Language context is {$lang_code}&quot;; 
 } 

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 07:42:58 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method set_lang</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_set_lang/</link>
            <description>&lt;p&gt;Set runtime language.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;boolean&lt;/em&gt; &lt;strong&gt;set_lang(code);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;set_lang&lt;/strong&gt; takes one parameter and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;language code&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Language code should confirm &lt;a href=&quot;http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes&quot;&gt;ISO 639-1&lt;/a&gt; standard. Yuo may use built-in &lt;em&gt;midgard_language&lt;/em&gt; class to list all available languages and codes.&lt;/p&gt;

&lt;p&gt;Returns &lt;strong&gt;TRUE&lt;/strong&gt; if language is changed, &lt;strong&gt;FALSE&lt;/strong&gt; otherwise.&lt;/p&gt;

&lt;p&gt;'lang-changed' signal is emitted if language has been changed. You might want to invoke your own callback when &lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_connect/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method connect&quot;&gt;connected&lt;/a&gt; to $_MIDGARD_CONNECTION.&lt;/p&gt;

&lt;h2&gt;Example&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 $lang_code = 'pl';
 midgard_connection::set_lang($lang_code);

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Fri, 04 Apr 2008 07:34:39 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method get_sitegroup</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_get_sitegroup/</link>
            <description>&lt;p&gt;Get runtime sitegroup.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;mixed&lt;/em&gt; &lt;strong&gt;get_sitegroup(void);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;get_sitegroup&lt;/strong&gt; takes no parameters and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Returns the name of the sitegroup for which application's sitegroup context is set. NULL is returned, if runtime sitegroup is 0.&lt;/p&gt;

&lt;h2&gt;Example&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 $name = midgard_connection::get_sitegroup();

 echo &quot;You are currently working in {$name} sitegroup&quot;

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Thu, 03 Apr 2008 20:28:20 +0000</pubDate>
        </item>
        <item>
            <title>PHP midgard_connection method set_sitegroup</title>
            <link>http://www.midgard-project.org/documentation/php_midgard_connection_method_set_sitegroup/</link>
            <description>&lt;p&gt;Set runtime sitegroup.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;boolean&lt;/em&gt; &lt;strong&gt;set_sitegroup(name);&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt; method &lt;strong&gt;set_sitegroup&lt;/strong&gt; takes one parameter and may be called &lt;strong&gt;statically&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;sitegroup name&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Returns &lt;strong&gt;TRUE&lt;/strong&gt; if sitegroup is changed, &lt;strong&gt;FALSE&lt;/strong&gt; otherwise.&lt;/p&gt;

&lt;p&gt;'sitegroup-changed' signal is emitted if sitegroup has been changed. You might want to invoke your own callback when &lt;a href=&quot;http://www.midgard-project.org/documentation/php_midgard_connection_method_connect/&quot; class=&quot;wikipage default&quot; title=&quot;PHP midgard_connection method connect&quot;&gt;connected&lt;/a&gt; to $_MIDGARD_CONNECTION.&lt;/p&gt;

&lt;h2&gt;Example ( using legacy MidgardSitegroup object )&lt;/h2&gt;

&lt;pre&gt;&lt;code&gt;&amp;lt;?php

 $legacy = mgd_get_sitegroup(1);

 midgard_connection::set_sitegroup($legacy-&amp;gt;name);

 ?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;span class=&quot;wiki_missing_nouser&quot; title=&quot;Login to create this missing page&quot;&gt;midgard_connection&lt;/span&gt;.&lt;/p&gt;
</description>
            <pubDate>Thu, 03 Apr 2008 20:22:23 +0000</pubDate>
        </item>
    </channel>
</rss>
