New on eZpediahttps://ezpedia.org/wiki New articles on eZpedia. en-GB Sun, 18 Jan 2009 08:36:55 GMT List of eZ Flow releaseshttps:///ezpedia.org/wiki/ez/list_of_ez_flow_releases <table class="renderedtable" border="1" cellpadding="2" cellspacing="0" width="100%"> <tr> <th valign="top" > <p> Release </p> </th> <th valign="top" > <p> eZ Publish version </p> </th> </tr> <tr> <td valign="top"> <p> 1.0-2 </p> </td> <td valign="top"> <p> 4.0.1 </p> </td> </tr> <tr> <td valign="top"> <p> 1.0-1 </p> </td> <td valign="top"> <p> 4.0.0 </p> </td> </tr> </table> Sun, 18 Jan 2009 08:33:18 GMT List of Website Interface releaseshttps:///ezpedia.org/wiki/ez/list_of_website_interface_releases <table class="renderedtable" border="1" cellpadding="2" cellspacing="0" width="100%"> <tr> <th valign="top" > <p> Release </p> </th> <th valign="top" > <p> eZ Publish version </p> </th> </tr> <tr> <td valign="top"> <p> 1.3-0 </p> </td> <td valign="top"> <p> 4.0.0 </p> </td> </tr> <tr> <td valign="top"> <p> 1.2-1 </p> </td> <td valign="top"> <p> 3.9.4, 3.10.0 </p> </td> </tr> <tr> <td valign="top"> <p> 1.2-0 </p> </td> <td valign="top"> <p> 3.9.2 </p> </td> </tr> <tr> <td valign="top"> <p> 1.1-1 </p> </td> <td valign="top"> <p> 3.9.0 </p> </td> </tr> </table> Fri, 09 Jan 2009 14:15:30 GMT Solution: Running cronjobs and scripts with parameters in limited environmenthttps:///ezpedia.org/wiki/ez/solution_running_cronjobs_and_scripts_with_parameters_in_limited_environment <a name="eztoc316316_1" id="eztoc316316_1"></a><h2>Question</h2> <p> How can I run eZ Publish scripts and cronjobs with parameters on shared hosting without ssh. </p> <p> You may only be allowed to run php files as a cronjob without any parameters and without the possibility to browse eZ Publish directory. </p> <p> You also may not have command line access. Yeah, this can be pretty frustrating, but can not find or afford a better hosting solution. </p> <a name="eztoc316316_2" id="eztoc316316_2"></a><h2>Solution</h2> <p> When your provider doesn't allow you to run cronjob tasks with parameters and when your server runs php-cgi. </p> <p> In order to run cronjob task with parameters, you can create a separate php file and then create a cronjob task pointing to that file. </p> <a name="eztoc316316_2_1" id="eztoc316316_2_1"></a><h3>Custom Script Example</h3> <p> Here is an example of the solution using the data_import extension as an example. </p> <p> File:<i> /path/to/ezpublish/extensions/custom/cronjobs/run_custom_cronjob_script.php</i> </p> <pre class="bash">&lt;?php &nbsp; <span style="color: #0000ff;">$output</span> = shell_exec<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'cd /path/to/ezpublish/; /path/to/php5 runcronjobs.php import_images_csv'</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;&lt;pre&gt;$output&lt;/pre&gt;&quot;</span>; &nbsp; ?&gt;</pre> <p> The above example creates an output (as seen in the code) so you will know if your import is successful or not. </p> <a name="eztoc316316_2_2" id="eztoc316316_2_2"></a><h3>Web Browser Example</h3> <p> You may for very small tasks be able to run the above file from a web browser as long as the script completes quickly as browser requests do not work well with long running tasks. </p> <p> The following tasks have been reported to be able to be run from the web browser with success if only limited. Most successes have been reported to resolve around limited execution time. </p> <ul> <li>Scripts: Custom Scripts - <i>Try limiting the execution time</i></li> <li>Cronjobs: Data Import - Try limiting how much complicated data import you attempt each time </li> <li>Database: Dump / Load / Custom SQL- <i>Try using phpmyadmin or other dba tools</i></li> </ul> <a name="eztoc316316_3" id="eztoc316316_3"></a><h2>References</h2> <ul> <li><a href="/wiki/en/ez/cronjob" target="_self">Cronjobs</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/running_cronjobs_php_with_parameters_in_limited_environment#msg179130" title="Posted by: Noicokuna Niemoge: Hello; I just wanted to share one solution: running cronjobs when your provider doesn" target="_self">Running cronjobs.php with parameters in limited environment (shared hosting/cpanel)</a></li> </ul> Mon, 22 Dec 2008 21:21:33 GMT eZ Publish 4https:///ezpedia.org/wiki/ez/ez_publish_4 <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div> Mon, 22 Dec 2008 20:53:34 GMT Migrating from the eZXML library to PHP 5 DOMhttps:///ezpedia.org/wiki/ez/migrating_from_the_ezxml_library_to_php_5_dom <a name="eztoc313140_1" id="eztoc313140_1"></a><h2>API replacements</h2><a name="eztoc313140_1_1" id="eztoc313140_1_1"></a><h3>DOM Document</h3> <table class="renderedtable" border="1" cellpadding="2" cellspacing="0" width="100%"> <tr> <th valign="top" > <p> eZXML </p> </th> <th valign="top" > <p> DOMDocument </p> </th> <th valign="top" > <p> Remarks </p> </th> </tr> <tr> <td valign="top"> <p> $xml = new eZXML()<br />$dom = $xml-&gt;domTree( $xmlDoc ) </p> </td> <td valign="top"> <p> $dom = new DOMDocument()<br />$success = $dom-&gt;loadXML( $xmlDoc ) </p> </td> <td valign="top"> <p> there were some extra options which we need to check, like character set conversion </p> </td> </tr> </table> <table class="renderedtable" border="1" cellpadding="2" cellspacing="0" width="100%"> <tr> <th valign="top" > <p> eZDOMDocument </p> </th> <th valign="top" colspan="1"> <p> DOMDocument </p> </th> <th valign="top" > <p> Remarks </p> </th> </tr> <tr> <td valign="top"> <p> -&gt;create_element( $name [, $attributes] ) </p> </td> <td valign="top"> <p> $element = $dom-&gt;createElement( $name )<br />$element-&gt;setAttribute( $attrName, $attrValue ) </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;createElementNode( $name [, $attributes] ) </p> </td> <td valign="top" colspan="1"> <p> $element = $dom-&gt;createElement( $name )<br /> $element-&gt;setAttribute( $attrName, $attrValue )<br />... </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;createElementTextNode( $name, $text [, $attributes] ) </p> </td> <td valign="top"> <p> $element = $dom-&gt;createElement( $name )<br /> $element-&gt;appendChild( $dom-&gt;createTextNode( $text ) )<br /> $element-&gt;setAttribute( $attrName, $attrValue )<br />... </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;dump_mem() </p> </td> <td valign="top"> <p> -&gt;saveXML() </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;elementsByNameNS( $name, $namespaceURI ) </p> </td> <td valign="top" colspan="1"> <p> -&gt;getElementsByTagNameNS( $namespaceURI, $name ) </p> </td> <td valign="top"> <p> can be called on each DOMNode, not only on a DOMDocument </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;get_root() </p> </td> <td valign="top" colspan="1"> <p> -&gt;documentElement </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;Root </p> </td> <td valign="top"> <p> -&gt;documentElement </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;root() </p> </td> <td valign="top" colspan="1"> <p> -&gt;documentElement </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;setRoot( $element ) </p> </td> <td valign="top" colspan="1"> <p> -&gt;appendChild( $element ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;toString() </p> </td> <td valign="top"> <p> -&gt;saveXML() </p> </td> <td valign="top"> &nbsp; </td> </tr> </table> <a name="eztoc313140_1_2" id="eztoc313140_1_2"></a><h3>DOM Node</h3> <table class="renderedtable" border="1" cellpadding="2" cellspacing="0" width="100%"> <tr> <th valign="top" > <p> eZDOMNode </p> </th> <th valign="top" > <p> DOMNode and subclasses </p> </th> <th valign="top" > <p> Remarks </p> </th> </tr> <tr> <td valign="top"> <p> -&gt;append_child( $node ) </p> </td> <td valign="top"> <p> -&gt;appendChild( $node ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;attributeCount() </p> </td> <td valign="top"> <p> -&gt;attributes-&gt;length </p> </td> <td valign="top"> <p> see below </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;attributes() </p> </td> <td valign="top"> <p> -&gt;attributes </p> </td> <td valign="top"> <p> property, returns DOMNamedNodeMap instead of array now, use $attributes-&gt;length property instead of count( $attributes ), see above </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;attributeValue( $name ) </p> </td> <td valign="top"> <p> -&gt;getAttribute( $name ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;attributeValueNS( $name, $namespaceURI ) </p> </td> <td valign="top"> <p> -&gt;getAttributeNS( $namespaceURI, $name ) </p> </td> <td valign="top"> <p> pay attention to the changed order of the function arguments </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;Children </p> </td> <td valign="top"> <p> -&gt;childNodes </p> </td> <td valign="top"> <p> property, returns DOMNodeList instead of array now, use $children-&gt;length property instead of count( $children ) </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;children() </p> </td> <td valign="top"> <p> -&gt;childNodes </p> </td> <td valign="top"> <p> see above </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;childrenCount() </p> </td> <td valign="top"> <p> -&gt;childNodes-&gt;length </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;content() </p> </td> <td valign="top"> <p> -&gt;textContent </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;dump_mem() </p> </td> <td valign="top"> <p> $element-&gt;ownerDocument-&gt;saveXML( $element ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> $element-&gt;dump_mem() </p> </td> <td valign="top"> <p> $element-&gt;ownerDocument-&gt;saveXML( $element) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;elementAttributeValueByName( $name, $attributeName ) </p> </td> <td valign="top"> <p> $firstElement = $element-&gt;getElementsByTagName( $name )-&gt;item( 0 )<br />$attributeValue = $firstElement-&gt;getAttribute( $attributeName ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;elementByName( $name ) </p> </td> <td valign="top"> <p> -&gt;getElementsByTagName( $name )-&gt;item( 0 ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;elementChildrenByName( $name ) </p> </td> <td valign="top"> <p> $firstElement = $element-&gt;getElementsByTagName( $name )-&gt;item( 0 )<br />$children = $firstElement-&gt;childNodes </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;first_child() </p> </td> <td valign="top"> <p> -&gt;firstChild </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;firstChild() </p> </td> <td valign="top"> <p> -&gt;firstChild </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;firstElementByName( $name ) </p> </td> <td valign="top"> <p> -&gt;getElementsByTagName( $name )-&gt;item( 0 ) </p> </td> <td valign="top"> <p> see elementByName </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;get_attribute( $name ) </p> </td> <td valign="top"> <p> -&gt;getAttribute( $name ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;get_elements_by_tagname( $name ) </p> </td> <td valign="top"> <p> -&gt;getElementsByTagName( $name ) </p> </td> <td valign="top"> <p> Returns all descendant elements with the name $name, not only direct children. To get only direct children with the name $name, use DOMXPath or loop over -&gt;childNodes </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;hasChildren() </p> </td> <td valign="top"> <p> -&gt;hasChildNodes() </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;lastChild() </p> </td> <td valign="top"> <p> -&gt;lastChild </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;localName() </p> </td> <td valign="top"> <p> -&gt;localName </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;name() </p> </td> <td valign="top"> <p> -&gt;localName </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;namespaceURI() </p> </td> <td valign="top"> <p> -&gt;namespaceURI </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;nextSibling() </p> </td> <td valign="top"> <p> -&gt;nextSibling </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;node_value() </p> </td> <td valign="top"> <p> -&gt;nodeValue </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;parentNode() </p> </td> <td valign="top"> <p> -&gt;parentNode </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;prefix(), -&gt;setPrefix( $prefix ) </p> </td> <td valign="top"> <p> -&gt;prefix </p> </td> <td valign="top"> <p> writable property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;previousSibling() </p> </td> <td valign="top"> <p> -&gt;previousSibling </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> -&gt;remove_attribute( $name ) </p> </td> <td valign="top"> <p> -&gt;removeAttribute( $name ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;set_attribute( $name, $value ) </p> </td> <td valign="top"> <p> -&gt;setAttribute( $name, $value ) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;textContent() </p> </td> <td valign="top"> <p> -&gt;textContent </p> </td> <td valign="top"> <p> property </p> </td> </tr> <tr> <td valign="top"> <p> $element-&gt;toString() </p> </td> <td valign="top"> <p> $element-&gt;ownerDocument-&gt;saveXML( $element) </p> </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> -&gt;type() </p> </td> <td valign="top"> <p> -&gt;nodeType </p> </td> <td valign="top"> <p> property, <a href="https:///www.php.net/manual/en/ref.dom.php#id2691506" target="_self">one of the predefined XML_xxx_NODE constants</a> </p> </td> </tr> </table> <a name="eztoc313140_2" id="eztoc313140_2"></a><h2>Important notes</h2> <p> The <a href="https:///us.php.net/manual/en/function.dom-domnode-insertbefore.php" target="_self">DOMElement::insertBefore</a> function returns the appended node, and you should use it! Otherwise you can get unexpected results or uncaught exceptions (like DOMException with message &quot;Not Found Error&quot;). </p> <p> When looping over the DOMElement::childNodes property, you can not remove or move any of the existing children, or insert new one. This will cause the property to change and your loop will apparently skip certain children or handle certain children twice. Instead of looping directly over childNodes, you can first make an array containing the children and loop over that array to make your modifications. In case you only want to remove certain items, looping over childNodes in reverse order (from the last one to the first one) is a solution as well. </p> <p> The same applies to the DOMElement::attributes property. </p> Mon, 22 Dec 2008 17:45:37 GMT Unpublishing contenthttps:///ezpedia.org/wiki/ez/unpublishing_content <p> Unpublishing one or multiple content objects, can be done in several ways: </p> <ul> <li>delete them <ul> <li>at a specified date &amp; time, with <a href="https:///ez.no/doc/ez_publish/technical_manual/current/features/cronjobs/the_cronjob_scripts#unpublish" target="_self">the unpublish cronjob</a></li> </ul> </li> <li>hide them <ul> <li>at a specified date &amp; time, with <a href="https:///ez.no/doc/ez_publish/technical_manual/current/features/cronjobs/the_cronjob_scripts#hide" target="_self">the hide cronjob</a></li> </ul> </li> <li>move them to an archive section of your website <ul> <li>at a specified date &amp; time, with <a href="https:///projects.ez.no/archive" target="_self">the archive extension</a></li> </ul> </li> </ul> Wed, 17 Dec 2008 23:38:54 GMT Solution: Clear Cache on eZ Publishhttps:///ezpedia.org/wiki/ez/solution_clear_cache_on_ez_publish <a name="eztoc312302_1" id="eztoc312302_1"></a><h2>Introduction</h2> <p> How to clear cache using eZ Publish 4 </p> <a name="eztoc312302_2" id="eztoc312302_2"></a><h2>Administration</h2> <p> Use the website administration interphase to clear all cache via a gui. </p> <ol> <li>Simply navigate to Setup tab</li> <li>Click the clear cache icon</li> <li>Refresh browser window of website</li> </ol> <a name="eztoc312302_3" id="eztoc312302_3"></a><h2>Command line</h2> <p> If you know how to use the command line you can use it to clear cache. </p> <a name="eztoc312302_3_1" id="eztoc312302_3_1"></a><h3>Unix</h3> <p> If you are using a complete unix like operating system you can use the following command to clear and purge all cache within eZ Publish. </p> <pre class="bash"><span style="color: #000066;">cd</span> /path/to/ezpublish; ./bin/php/ezcache.php --clear-all --purge;</pre><a name="eztoc312302_3_2" id="eztoc312302_3_2"></a><h3>Windows</h3> <p> If you are using Windows you can use the following command to clear and purge all cache within eZ Publish. </p> <pre class="bash"><span style="color: #808080; font-style: italic;"># <span style="color: #000066;">cd</span> c:/web/pro/ezpublish/doc;</span> c:\php\php ./bin/php/ezcache.php --clear-all --purge;</pre><a name="eztoc312302_4" id="eztoc312302_4"></a><h2>Manual</h2> <p> If you are unable to use the administration gui or command line to clear cache, you can still remove the cache files manually. </p> <pre class="bash"><span style="color: #000066;">cd</span> /path/to/ezpublish; rm -vrf /var/cache; rm -vrf /var/ezwebin_site/cache</pre><a name="eztoc312302_5" id="eztoc312302_5"></a><h2>References</h2> <ul> <li>Doc: <a href="https:///ez.no/doc/ez_publish/technical_manual/4_0/features/view_caching/clearing_the_view_cache" target="_self"><i>Clearing</i> the view <i>cache</i> / View <i>caching</i> / Features / 4.0 ...</a></li> <li>Doc: <a href="https:///ez.no/doc/ez_publish/technical_manual/4_0/reference/scripts/generic/ezcache_php" target="_self">ezcache.php / Generic / Scripts / Reference / 4.0 / Technical <b>...</b></a></li> </ul> Sat, 22 Nov 2008 09:44:25 GMT Hiding or unhiding subtreeshttps:///ezpedia.org/wiki/ez/hiding_or_unhiding_subtrees <pre class="php"><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$node</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'can_hide'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$node</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'is_hidden'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> eZContentObjectTreeNode::<span style="color: #006600;">unhideSubTree</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$node</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span> eZContentObjectTreeNode::<span style="color: #006600;">hideSubTree</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$node</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span></pre> Thu, 13 Nov 2008 01:34:44 GMT Solution: Publishing static pages from eZ Publishhttps:///ezpedia.org/wiki/ez/solution_publishing_static_pages_from_ez_publish <a name="eztoc305224_1" id="eztoc305224_1"></a><h2>Question</h2> <p> How does one publish static pages from a completed eZ Publish website installation? </p> <a name="eztoc305224_2" id="eztoc305224_2"></a><h2>Suggestion</h2> <p> Read the following reference and suggestion example. </p> <a name="eztoc305224_2_1" id="eztoc305224_2_1"></a><h3>Example</h3> <p> I used this to produce an inexpensive visual preview of a customer's eZ Publish website. </p> <pre class="bash">httrack https:///ez -O <span style="color: #ff0000;">&quot;.&quot;</span> -%v -*layout* -*Calendar/* -*visual* --footer <span style="color: #ff0000;">&quot;&quot;</span> --preserve</pre><a name="eztoc305224_3" id="eztoc305224_3"></a><h2>References</h2> <ul> <li>Form: <a href="https:///ez.no/developer/forum/general/publishing_static_pages#msg172492" target="_self">Publishing static pages</a></li> </ul> Wed, 01 Oct 2008 11:45:54 GMT eZ Publish Test Systemhttps:///ezpedia.org/wiki/ez/ez_publish_test_system <a name="eztoc296378_1" id="eztoc296378_1"></a><h2>Warning</h2> <p> The test system is considered ever evolving and backwards incompatible changes may occur. We do invite you to start writing tests for it, just be warned that the tests may need some updating as we evolve the system. </p> <a name="eztoc296378_2" id="eztoc296378_2"></a><h2>Getting started</h2><a name="eztoc296378_2_1" id="eztoc296378_2_1"></a><h3>Requirements</h3> <ul> <li>PHPUnit 3.2.x or newer: https:///www.phpunit.de/</li> <li>eZ Components</li> </ul> <a name="eztoc296378_2_2" id="eztoc296378_2_2"></a><h3>Installation</h3> <ol> <li>Update to at least trunk rev 22408.</li> <li>Generate autoloads for the test system: </li> </ol> <pre class="bash">php bin/php/ezpgenerateautoloads.php -s</pre><a name="eztoc296378_3" id="eztoc296378_3"></a><h2>Running tests</h2> <p> To run all tests do: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb</pre> <p> The -D parameter is required and is used to tell the test system what type of database, username, host and which database to use. Make sure the username you specify is allowed both create and remove the database. The DSN uses the following format: </p> <pre>databasetype://username:password@host/database</pre> <p> If you want to run a single test suite, just point to the directory containing a suite.php file. </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb tests/tests/kernel</pre><a name="eztoc296378_3_1" id="eztoc296378_3_1"></a><h3>Filter which tests to run</h3> <p> To run a single test you can use the --filter option like this: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb --<span style="color: #0000ff;">filter=</span>testGlobBrace</pre> <p> In the above example both eZSysTest::testGlobBrace and eZSys::testGlobBraceSupported will be executed. If you only want to execute eZSysTest::testGlobBrace run: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb --<span style="color: #0000ff;">filter=</span><span style="color: #ff0000;">&quot;testGlobBrace$&quot;</span></pre> <p> This works too: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb --<span style="color: #0000ff;">filter=</span><span style="color: #ff0000;">&quot;eZSysTest::testGlobBrace$&quot;</span></pre> <p> As of PHPUnit 3 --filter can also be used to filter on test class names. This is a handy way of running all tests in a test case. Example: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb --<span style="color: #0000ff;">filter=</span><span style="color: #ff0000;">&quot;eZSysTest&quot;</span></pre><a name="eztoc296378_3_2" id="eztoc296378_3_2"></a><h3>List tests</h3> <p> To list all test use the --list-tests option: </p> <pre class="bash">php tests/runtests.php --list-tests</pre> <p> You can also narrow the output to only list tests defined in a specific suite: </p> <pre class="bash">php tests/runtests.php --list-tests tests/tests/lib/ezutils</pre><a name="eztoc296378_3_3" id="eztoc296378_3_3"></a><h3>Running a group of tests (group annotation)</h3> <p> With PHPUnit you can group different tests together by adding the group annotation to a method's documantion block: </p> <p> To list all groups run: </p> <pre class="bash">php tests/runtests.php --list-groups</pre> <p> To run a group use the -g parameter: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb -g issue_13492</pre><a name="eztoc296378_4" id="eztoc296378_4"></a><h2>Writing tests</h2><a name="eztoc296378_4_1" id="eztoc296378_4_1"></a><h3>Naming conventions</h3> <p> The test system itself follows eZ Components naming conventions defined here: <a href="https:///ezcomponents.org/contributing/coding_standards#id8" target="_self">https:////ezcomponents.org/contributing/coding_standards#id8</a>. </p> <p> The tests itself follows the naming conventions of the code that it tests. In this case this means the tests follows the eZ Publish naming convention. </p> <a name="eztoc296378_4_2" id="eztoc296378_4_2"></a><h3>File and directory layout</h3> <p> The file structure used in eZ Publish is mirrored inside the test system. As an example, if you want to write tests for <i>kernel/classes/ezcontentobject.php</i> the test file should be located in <i>tests/tests/kernel/classes/ezcontentobject_test.php</i>. Regression tests for ezcontentobject should be located in <i>tests/tests/kernel/classes/ezcontentobject_regression.php</i> </p> <p> *_test.php is the suffix used for unit tests. *_regression.php is used for as the suffix for regression tests. </p> <a name="eztoc296378_4_3" id="eztoc296378_4_3"></a><h3>Writing a unit test</h3> <p> The test system comes with a handy CLI script for generating stub tests from an existing class to get you going quickly. As an example, you can generate a stub test from kernel/classes/ezpreferences.php like this: </p> <pre class="bash">php tests/toolkit/extras/scripts/create-test-from-class.php \ -s kernel/classes/ezpreferences.php \ -d tests/tests/kernel/classes/ezpreferences_test.php</pre> <p> The generated tests/tests/kernel/classes/ezpreferences_test.php file will then look like this: </p> <pre class="php-brief"><span style="color: #000000; font-weight: bold;">&lt;?php</span> &nbsp; <span style="color: #000000; font-weight: bold;">class</span> eZPreferencesTest <span style="color: #000000; font-weight: bold;">extends</span> ezpTestCase <span style="color: #66cc66;">&#123;</span> <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> __construct<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> parent::__construct<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$this</span>-&gt;<span style="color: #006600;">setName</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;eZPreferences Unit Tests&quot;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #66cc66;">&#125;</span> &nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> testSetValue<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> self::<span style="color: #006600;">markTestIncomplete</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;Not implemented&quot;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #66cc66;">&#125;</span> &nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> testValue<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> self::<span style="color: #006600;">markTestIncomplete</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;Not implemented&quot;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #808080; font-style: italic;">// [...]</span> <span style="color: #66cc66;">&#125;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre> <p> To make the new test case work we need to add it to the appropriate suite.php. For this test case that is tests/tests/kernel/suite.php. Add </p> <pre class="php-brief"><span style="color: #0000ff;">$this</span>-&gt;<span style="color: #006600;">addTestSuite</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'eZPreferencesTest'</span> <span style="color: #66cc66;">&#41;</span>;</pre> <p> to the __construct method of eZKernelTestSuite and remember to regenerate test autoloads. To verify that the new test case is working run 'runtests.php' with -v: </p> <pre class="bash">oh:/www/trunk $ php tests/runtests.php -D mysql://root@localhost/testdb -v Based on ezcUnitTest <span style="color: #b1b100;">in</span> eZ Components &nbsp; PHPUnit <span style="color: #cc66cc;">3.3</span><span style="color: #cc66cc;">.0</span> by Sebastian Bergmann. &nbsp; eZ Publish eZ Publish Test Suite eZ Publish Kernel Test Suite eZPreferencesTest IIIIIIII &nbsp; <span style="color: #66cc66;">&#91;</span>...<span style="color: #66cc66;">&#93;</span></pre> <p> Success! We're now ready to start writing the test by filling in the test* methods. </p> <p> Normally tests are short and straight forward and should require little or no documentation. Due to the complexity of eZ Publish not all tests ends up being in this way. If you are writing a somewhat complex unit test, please document it a way that makes it easier to understand. </p> <a name="eztoc296378_4_4" id="eztoc296378_4_4"></a><h3>Writing a regression test</h3> <p> Regression tests are created in the same way as with unit tests, except the classes end with &quot;Regression&quot; and the file suffix is _regression.php. When writing a regression test please document it with the following: </p> <ol> <li>Issue number + title of the issue.</li> <li>Short description of the issue if the title isn't descriptive enough.</li> <li>If the test is longer than a few lines, include what the test does in order to reproduce the issue.</li> <li>The result and the expected result.</li> <li>Link to the issue.</li> </ol> <p> Here's a doc header example taken from testLinksAcrossTranslations(): </p> <pre class="php-brief"><span style="color: #808080; font-style: italic;">/** * Test scenario for issue #13492: Links are lost after removing version * * Test Outline * ------------ * 1. Create a Folder in English containing a link (in the short_description attribute). * 2. Translate Folder into Norwegian containing another link (not the same link as above.) * 3. Remove Folder version 1. (Version 2 is created when translating). * * @result: short_description in version 2 will have an empty link. * @expected: short_description should contain same link as in version 1. * @link https:///issues.ez.no/13492 */</span></pre> <p> If the issue has multiple tests group them together to make it easy to execute all tests for a single issue using the group annotation &quot;@group issue_ISSUE_NUMBER&quot; where ISSUE_NUMBER is the issue ID in the bug tracker. Example: </p> <pre>* @group issue_13492</pre><a name="eztoc296378_4_5" id="eztoc296378_4_5"></a><h3>Using a database</h3> <p> A common thing for tests is to interact with a database. By extending your test class or suite from either <i>ezpDatabaseTestCase</i> or <i>ezpDatabaseTestSuite</i> your test class/suite will become database aware. By default <i>ezpDatabaseTestCase</i> and <i>ezpDatabaseTestSuite</i> sets up a clean database using the dba files included in eZ Publish: </p> <ul> <li>share/db_schema.dba</li> <li>share/db_data.dba</li> </ul> <a name="eztoc296378_4_5_1" id="eztoc296378_4_5_1"></a><h4>Inserting your own data</h4> <p> If you need to provide your own schema/data you can override which SQL files is loaded by <i>ezpDatabaseTestSuite</i> by specifing the path to one or more SQL files in the $sqlFiles class method: </p> <p> Example: </p> <pre class="php-brief"><span style="color: #000000; font-weight: bold;">class</span> eZURLAliasMlTest <span style="color: #000000; font-weight: bold;">extends</span> ezpDatabaseTestCase <span style="color: #66cc66;">&#123;</span> protected <span style="color: #0000ff;">$insertDefaultData</span> = <span style="color: #000000; font-weight: bold;">false</span>; protected <span style="color: #0000ff;">$sqlFiles</span> = <a href="https:///www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span> <a href="https:////www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;kernel/sql/&quot;</span>, <span style="color: #ff0000;">&quot;kernel_schema.sql&quot;</span> <span style="color: #66cc66;">&#41;</span>, <span style="color: #ff0000;">&quot;kernel/sql/common/cleandata.sql&quot;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #808080; font-style: italic;">// [...]</span> <span style="color: #66cc66;">&#125;</span></pre> <p> Setting $insertDefaultData to false tells the test system that it should not attempt to load any data. If $insertDefaultData is not defined or if it's set to true the test system will first load the default data, then load any SQL files defined in $sqlFiles. </p> <p> The first entry in $sqlFiles, <i>array( &quot;kernel/sql/&quot;, &quot;kernel_schema.sql&quot; )</i> is a way to provide a SQL file for one or more of the supported database types. If you're using MySQL, the test system would try to insert <i>kernel/sql/<b>mysql</b>/kernel_schema.sql</i>. If the database type is postgresql, the test system would try to insert <i>kernel/sql/<b>postgresql</b>/kernel_schema.sql</i>, and so forth. </p> <p> The database type is determined by the -D (--dsn) parameter provided to the test runner. </p> <p> <b>Note:</b> you can specify $sqlFiles on either your test class or in your suite. The default test runner behaviour is to only create a new database per suite. If you provide $sqlFiles in your test classes you will need start the test runner with the <i>--db-per-test</i> argument. </p> <a name="eztoc296378_4_5_2" id="eztoc296378_4_5_2"></a><h4>Providing extra data</h4> <p> In the above exampe we discussed how to override what data gets initially loaded into the test database. If all you need is to provide some additional data you can leverage the <i>ezpTestDatabaseHelper</i> class to load some extra SQL files: </p> <pre class="php-brief"><span style="color: #0000ff;">$sqlFiles</span> = <a href="https:///www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;myextension/sql/data.sql&quot;</span> <span style="color: #66cc66;">&#41;</span>; ezpTestDatabaseHelper::<span style="color: #006600;">insertSqlData</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$this</span>-&gt;<span style="color: #006600;">sharedFixture</span>, <span style="color: #0000ff;">$sqlFiles</span> <span style="color: #66cc66;">&#41;</span>;</pre><a name="eztoc296378_4_6" id="eztoc296378_4_6"></a><h3>Writing tests for an extension</h3> <p> Extensions can include their own tests. When running tests the test runner will not only look for tests inside the tests/ directory, it will also scan each extension looking for a tests/suite.php file inside the extension. The extension does not need to be in the list of active extension (ActiveExtensions[] in site.ini) for it to be included. The only critera for the extension to be included is that is has a folder &quot;tests/&quot; with a suite.php inside. The suite.php should then include all tests in the extension. Below is an example of a typical extension file layout and where the tests should be located: </p> <pre>extension |-- myextension |-- autoloads |-- design |-- modules |-- settings |-- tests | |-- mytest1.php | |-- mytest2.php | `-- suite.php `-- translations</pre> <p> You can specify the path to an extension to only run tests for that extension: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb extension/myextension</pre><a name="eztoc296378_5" id="eztoc296378_5"></a><h2>One database per suite</h2> <p> Currently, the default behaviour is that a database is created per suite, not per test. Creating/removing the database easily adds 1-2 seconds of overhead per test on the database management systems that eZ Publish supports out of the box (MySQL, PostgreSQL). However, there's an extension <a href="https:///projects.ez.no/ezsqlite" target="_self">ezsqlite</a> which allows you to use an in-memory SQLite 3 database to run the tests with. </p> <p> If you pass in the argument <i>--db-per-test</i> to the test runner it will change from the default behaviour, one database per suite, to one database per test. It's <b>strongly encouraged</b> that you write tests that works with both <i>--db-per-test</i> turned on and off. </p> <p> To illustrate the difference in speed, below is how long it takes to run all tests with <i>--db-per-test</i>: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb --db-per-<span style="color: #000066;">test</span> PHPUnit <span style="color: #cc66cc;">3.3</span><span style="color: #cc66cc;">.0</span> by Sebastian Bergmann. &nbsp; ............................................ &nbsp; Time: <span style="color: #cc66cc;">01</span>:<span style="color: #cc66cc;">48</span> &nbsp; OK <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">44</span> tests, <span style="color: #cc66cc;">99</span> assertions<span style="color: #66cc66;">&#41;</span></pre> <p> And without <i>--db-per-test</i>: </p> <pre class="bash">php tests/runtests.php -D mysql://root@localhost/testdb PHPUnit <span style="color: #cc66cc;">3.3</span><span style="color: #cc66cc;">.0</span> by Sebastian Bergmann. &nbsp; ............................................ &nbsp; Time: <span style="color: #cc66cc;">19</span> seconds &nbsp; OK <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">44</span> tests, <span style="color: #cc66cc;">99</span> assertions<span style="color: #66cc66;">&#41;</span></pre><a name="eztoc296378_6" id="eztoc296378_6"></a><h2>Resources</h2> <ul> <li><a href="https:///www.phpunit.de/" target="_self">PHPUnit site</a></li> <li><a href="https:///www.phpunit.de/manual/3.3/en/installation.html" target="_self">How to install PHPUnit</a></li> <li><a href="https:///www.phpunit.de/manual/3.3/en/" target="_self">PHPUnit documentation</a></li> <li><a href="https:///www.slideshare.net/sebastian_bergmann/new-features-in-phpunit-33" target="_self">New features in PHPUnit 3.3</a></li> </ul> Mon, 29 Sep 2008 05:42:41 GMT List of API BC breakshttps:///ezpedia.org/wiki/ez/list_of_api_bc_breaks <a name="eztoc296009_1" id="eztoc296009_1"></a><h2>eZ Publish 4</h2><a name="eztoc296009_1_1" id="eztoc296009_1_1"></a><h3>4.1</h3><a name="eztoc296009_1_1_1" id="eztoc296009_1_1_1"></a><h4>4.1.0</h4> <ul> <li>eZContentObject::fetchAttributesByIdentifier() doesn't accept any longer a string as 3rd argument, it needs to be an array now. See issue <a href="https:///issues.ez.no/13668" target="_self">#13668</a>.</li> </ul> <a name="eztoc296009_1_2" id="eztoc296009_1_2"></a><h3>4.0</h3><a name="eztoc296009_1_2_1" id="eztoc296009_1_2_1"></a><h4>4.0.1</h4> <ul> <li>The constructor of eZSOAPClient has a new parameter $useSSL, which defines the protocol to use: either https:/// when $useSSL is false (default) or https:// when $useSSL is true. Previously, when the $port argument was 443, it was assumed automatically that https:// should be used. This is not longer the case in eZ Publish 4.0.1. In eZ Publish 4.0.2 however, this BC break will be fixed. For more background information, see issue <a href="https:////issues.ez.no/12267" target="_self">#12267</a>.</li> </ul> <a name="eztoc296009_1_2_2" id="eztoc296009_1_2_2"></a><h4>4.0.0</h4> <ul> <li>eZContentObjectTreeNode::subTree() and eZContentObjectTreeNode::subTreeCount() can not any longer be called statically, they are instance methods now. Use eZContentObjectTreeNode::subTreeByNodeID() and eZContentObjectTreeNode::subTreeCountByNodeID() instead.</li> <li>eZContentObjectTreeNode::createPathConditionAndNotEqParentSQLStrings() does not have a 3rd argument $treeNode anymore. Use the 4th argument $nodeID instead to pass the ID of the tree node.</li> <li>To register workflow event types, use eZWorkflowEventType::registerEventType() instead of eZWorkflowEventType::registerType().</li> </ul> Sat, 30 Aug 2008 20:18:19 GMT Deleting objectshttps:///ezpedia.org/wiki/ez/deleting_objects <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc286637_1" id="eztoc286637_1"></a><h2>Question</h2> <p> How to remove many objects from a content tree. </p> <a name="eztoc286637_2" id="eztoc286637_2"></a><h2>References</h2> <ul> <li>Forum: <a href="https:///ez.no/developer/forum/general/deleting_many_objects#msg173268" target="_self">Deleting many objects</a></li> <li>Solution: <a href="https:///ezpedia.org/wiki/en/ez/solution_script_to_delete_all_nodes_under_a_node_in_content_structure" target="_self">Script to delete all nodes under a node in content structure</a></li> </ul> Fri, 29 Aug 2008 10:51:27 GMT Invoking the node/object browserhttps:///ezpedia.org/wiki/ez/invoking_the_node_object_browser <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div> <p> You can use the eZContentBrowse class to invoke a content browser, with which the user can select one or multiple objects / nodes. The most important method, browse(), actually ensures that certain session variables are set, and that the user agent gets redirect to the content/browse view. When the user submits the selection he made in content/browse, it will be posted to the initial module that invoked eZContentBrowse. </p> <p> The browse() method accepts an array with quite some options which are not very well documented in the source code. What follows is an overview of the options and a short description on how to use them. </p> <table class="renderedtable" border="1" cellpadding="2" cellspacing="0" width="100%"> <tr> <th valign="top" > <p> Key </p> </th> <th valign="top" > <p> Default value when omitted </p> </th> <th valign="top" > <p> Description </p> </th> </tr> <tr> <td valign="top"> <p> from_page </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> URL to post the browser selection to, obligatory </p> </td> </tr> <tr> <td valign="top"> <p> cancel_page </p> </td> <td valign="top"> <p> value of from_page </p> </td> <td valign="top"> <p> A value for the BrowseCancelURI field that will be posted back. </p> </td> </tr> <tr> <td valign="top"> <p> action_name </p> </td> <td valign="top"> <p> value of the INI setting browse.ini [BrowseSettings] DefaultActionName </p> </td> <td valign="top"> <p> A value for the BrowseActionName field that will be posted back. When a module view might invoke the content browser for different purposes then it should use this post field to find out for which purpose it called the content browser. Usually the value of the BrowseActionName post variable is used to automatically trigger an action in the module view. See the post_actions key in the <a href="/wiki/en/ez/module" target="_self">module view</a> definition. </p> </td> </tr> <tr> <td valign="top"> <p> type </p> </td> <td valign="top"> <p> value of action_name </p> </td> <td valign="top"> <p> Corresponding browse type in browse.ini, make sure this type exists otherwise you will get an error in the content/browse module. </p> </td> </tr> <tr> <td valign="top"> <p> selection </p> </td> <td valign="top"> <p> value of the INI setting browse.ini [BrowseSettings] DefaultSelectionType </p> </td> <td valign="top"> <p> The type of selection, either single or multiple. Can also be configured with the SelectionType setting in browse.ini. </p> </td> </tr> <tr> <td valign="top"> <p> return_type </p> </td> <td valign="top"> <p> value of the INI setting browse.ini [BrowseSettings] DefaultReturnType </p> </td> <td valign="top"> <p> The type of the return values, either ObjectID or NodeID. Can also be configured with the ReturnType setting in browse.ini. </p> </td> </tr> <tr> <td valign="top"> <p> description_template </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> Template to include containing a description, which is showed by the content/browse view </p> </td> </tr> <tr> <td valign="top"> <p> start_node </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> Node ID to start browsing on. </p> </td> </tr> <tr> <td valign="top"> <p> class_array </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> Class IDs of objects that can be selected. Other content objects can't be selected. Can also be configured with the Class setting in browse.ini. </p> </td> </tr> <tr> <td valign="top"> <p> ignore_nodes_select </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> IDs of nodes that can not be selected. </p> </td> </tr> <tr> <td valign="top"> <p> ignore_nodes_select_subtree </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> IDs of nodes of which no descending nodes (subnodes) can be selected. Seems like the admin design respects this setting, but the standard design does not. </p> </td> </tr> <tr> <td valign="top"> <p> ignore_nodes_click </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> IDs of nodes that can not be browsed into. </p> </td> </tr> <tr> <td valign="top"> <p> keys </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> An associative array of browse override keys that will be used to fetch settings from browse.ini. See <a href="https:///ez.no/community/forum/install_configuration/set_startnode_when_browsing_in_browse_ini" target="_self">https:////ez.no/community/forum/install_configuration/set_startnode_when_browsing_in_browse_ini</a>. </p> </td> </tr> <tr> <td valign="top"> <p> persistent_data </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> Associative array of persistent data, will be posted back. </p> </td> </tr> <tr> <td valign="top"> <p> permission </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> <p> This parameter can be used to make only certain nodes selectable, based on the permission system. It must be a policy array that, together with the object ID of each node in the content browser, can be passed to the content/access fetch function. The fetch function will return if access is granted or not. If not, the node won't be selectable.<br />Example value: array( 'access' =&gt; 'create', 'contentclass_id' =&gt; $class-&gt;attribute( 'id' ) ). Only nodes under which the current user can create objects of the class $class will be selectable. </p> </td> </tr> <tr> <td valign="top"> <p> top_level_nodes </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> browse_custom_action </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> &nbsp; </td> </tr> <tr> <td valign="top"> <p> custom_action_data </p> </td> <td valign="top"> &nbsp; </td> <td valign="top"> &nbsp; </td> </tr> </table> Tue, 19 Aug 2008 10:09:56 GMT L'Ânehttps:///ezpedia.org/wiki/ez/marc_mebtouche <p> <i><b>L'Âne</b></i> est un long poème de <a href="/wiki/en/wiki/Victor_Hugo" title="Victor Hugo" target="_self">Victor Hugo</a>, publié en <a href="/wiki/en/wiki/1880" title="1880" target="_self">1880</a> mais en fait écrit en <a href="/wiki/en/wiki/1857" title="1857" target="_self">1857</a>-<a href="/wiki/en/wiki/1858" title="1858" target="_self">1858</a> et entretenant d'étroits rapports d'autres œuvres du poète. </p> <p> Hugo en a esquissé le projet vers <a href="/wiki/en/wiki/1856" title="1856" target="_self">1856</a>, alors qu'il travaillait sur <i><a href="/wiki/en/wiki/Dieu_(Victor_Hugo)" title="Dieu (Victor Hugo)" target="_self">Dieu</a></i> (<i>Ils étaient deux songeurs, le philosophe et l'âne</i>), dont il devait être une partie. </p> <p> Comme souvent dans ses œuvres des <a href="/wiki/en/wiki/Ann%C3%A9es_1850" title="Années 1850" target="_self">années 1850</a>, le poème, au fil de son écriture, a pris des proportions inattendues et une signification bien plus grande. D'abord bref <a href="/wiki/en/wiki/Apologue" title="Apologue" target="_self">apologue</a>, puis fable, il a grandi jusqu'à devenir une épopée philosophique quasiment autonome. Après avoir abandonné <i>Dieu</i>, Hugo a ensuite pensé intégrer <i>l'Âne</i> à <i><a href="/wiki/en/wiki/La_L%C3%A9gende_des_Si%C3%A8cles" title="La Légende des Siècles" target="_self">La Légende des Siècles</a></i>. Pour la section du dix-neuvième siècle, il établit le plan suivant : <i>L'Océan - La Révolution - le Verso de la page - la Pitié Suprême - Les Pauvres Gens - L'épopée de l'Âne</i>. Finalement, accédant au souhait de l'éditeur <a href="/wiki/en/wiki/Hetzel" title="Hetzel" target="_self">Hetzel</a> de renforcer le caractère épique et narratif de la Première Série, il en écarta ces principaux poèmes, dont <i>l'Âne</i>, mais conserve l'intention de les faire figurer dans une nouvelle série à venir. En <a href="/wiki/en/wiki/1863" title="1863" target="_self">1863</a>, y travaillant, il reprend l'ancien projet de la Première Série : <i>Les objections de l'Âne</i> - <i>Les Sept Merveilles du Monde</i> (qu'il vient d'écrire) - <i>La Révolution</i> - <i>La Pitié Suprême</i>. Mais encore une fois, la force des choses et le contexte différent des <a href="/wiki/en/wiki/Ann%C3%A9es_1870" title="Années 1870" target="_self">années 1870</a> modifient ce dessein initial, et les grands poèmes seront exclus de la Nouvelle Série de <a href="/wiki/en/wiki/1877" title="1877" target="_self">1877</a> et finalement de la <i>Légende</i>. </p> <p> <i>L'Âne</i> fut finalement publié en 1880, de manière isolée mais dans le même mouvement que <i><a href="/wiki/en/wiki/Le_Pape_(Hugo)" title="Le Pape (Hugo)" target="_self">Le Pape</a></i>, <i>La Pitié Suprême</i> et <i>Religions et Religion</i>, et formant avec eux comme une sorte de testament philosophique de Hugo. </p> <p> Le héros du poème, l'âne Patience, qui a traversé l'Histoire, croisé <a href="/wiki/en/wiki/Esope" title="Esope" target="_self">Esope</a> et <a href="/wiki/en/wiki/Apul%C3%A9e" title="Apulée" target="_self">Apulée</a> et porté le <a href="/wiki/en/wiki/J%C3%A9sus_de_Nazareth" title="Jésus de Nazareth" target="_self">Christ</a> sur son dos, rencontre un jour <a href="/wiki/en/wiki/Emmanuel_Kant" title="Emmanuel Kant" target="_self">Kant</a> et lui parle. La figure de l'âne, indomptable et moqueur, est caractéristique du grotesque hugolien et symbolise la sagesse humble mais énergiquement contestataire, tout comme le Satyre à laquelle elle céda sa place dans <i>La Légende</i> de <a href="/wiki/en/wiki/1859" title="1859" target="_self">1859</a>. Il incarne une voix du XIXe siècle, s'élevant contre certaines pensées de son temps - celles de l'excès de science et de philosophie, notamment le <a href="/wiki/en/wiki/Positivisme" title="Positivisme" target="_self">positivisme</a> - et finalement contre la perte du mystère de l'existence et de Dieu. </p> Wed, 09 Jul 2008 13:40:43 GMT Writing database implementation independant codehttps:///ezpedia.org/wiki/ez/writing_database_implementation_independant_code <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc277068_1" id="eztoc277068_1"></a><h2>Use the API of the database handlers</h2><a name="eztoc277068_2" id="eztoc277068_2"></a><h2>Common mistakes in SQL</h2><a name="eztoc277068_2_1" id="eztoc277068_2_1"></a><h3>Quoting literal string values</h3> <p> Use single quotes ( ' ) to quote literal string values, not double quotes ( &quot; ). Certain database servers interpret a double quote as an identifier quote character. </p> <a name="eztoc277068_2_1_1" id="eztoc277068_2_1_1"></a><h4>Example</h4> <p> Wrong: </p> <pre class="sql"><span style="color: #993333; font-weight: bold;">UPDATE</span> ezcontentobject <span style="color: #993333; font-weight: bold;">SET</span> name=<span style="color: #ff0000;">&quot;Foo&quot;</span> <span style="color: #993333; font-weight: bold;">WHERE</span> id=<span style="color: #cc66cc;">500</span>;</pre> <p> Right: </p> <pre class="sql"><span style="color: #993333; font-weight: bold;">UPDATE</span> ezcontentobject <span style="color: #993333; font-weight: bold;">SET</span> name=<span style="color: #ff0000;">'Foo'</span> <span style="color: #993333; font-weight: bold;">WHERE</span> id=<span style="color: #cc66cc;">500</span>;</pre><a name="eztoc277068_2_1_2" id="eztoc277068_2_1_2"></a><h4>MySQL</h4> <p> By default MySQL allows double quotes to quote literal string values. However, you can turn on the ANSI_QUOTES <a href="https:///dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html" target="_self">SQL mode</a> to make sure MySQL treats a double quote as an identifier quote character. </p> <a name="eztoc277068_2_2" id="eztoc277068_2_2"></a><h3>Aliases for columns and tables</h3> <p> Columns should be aliased with the AS keyword (example 1), tables should NOT be aliased with the AS keyword (example 2). </p> <a name="eztoc277068_2_2_1" id="eztoc277068_2_2_1"></a><h4>Example 1</h4> <p> Wrong: </p> <pre class="sql"><span style="color: #993333; font-weight: bold;">SELECT</span> COUNT<span style="color: #66cc66;">&#40;</span>*<span style="color: #66cc66;">&#41;</span> row_count <span style="color: #993333; font-weight: bold;">FROM</span> ezcontentobject;</pre> <p> Right: </p> <pre class="sql"><span style="color: #993333; font-weight: bold;">SELECT</span> COUNT<span style="color: #66cc66;">&#40;</span>*<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">AS</span> row_count <span style="color: #993333; font-weight: bold;">FROM</span> ezcontentobject;</pre><a name="eztoc277068_2_2_2" id="eztoc277068_2_2_2"></a><h4>Example 2</h4> <p> Wrong: </p> <pre class="sql"><span style="color: #993333; font-weight: bold;">SELECT</span> o.id, u.name <span style="color: #993333; font-weight: bold;">FROM</span> ezcontentobject <span style="color: #993333; font-weight: bold;">AS</span> o, ezcontentobject <span style="color: #993333; font-weight: bold;">AS</span> u <span style="color: #993333; font-weight: bold;">WHERE</span> u.id=o.owner_id;</pre> <p> Right: </p> <pre class="sql"><span style="color: #993333; font-weight: bold;">SELECT</span> o.id, u.name <span style="color: #993333; font-weight: bold;">FROM</span> ezcontentobject o, ezcontentobject u <span style="color: #993333; font-weight: bold;">WHERE</span> u.id=o.owner_id;</pre> Sat, 31 May 2008 08:37:44 GMT Troubleshooting extensionshttps:///ezpedia.org/wiki/ez/troubleshooting_extensions <p> You might have to double check certain things when an extension does not seem to work. </p> <a name="eztoc264775_1" id="eztoc264775_1"></a><h2>Whitespace in INI files</h2> <p> The INI system does not automatically trim values, so any trailing whitespace behind a setting value will be part of the value. </p> <p> Consider an extension called &quot;myextension&quot; containing template operators. In the site.ini.append.php of the extension, you will find something like this: </p> <pre class="ini"><span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>TemplateSettings<span style="">&#93;</span></span> ExtensionAutoloadPath<span style="">&#91;</span><span style="">&#93;</span>=myextension</pre> <p> This will instruct the template system to look for a file extension/ezxajax/autoloads/eztemplateautoload.php. In this file, there's information on which classes in the extension contain which template operators. </p> <p> However, if there is a space behind ExtensionAutoloadPath[]=myextension, it will try to find the file &quot;extension/myextension /autoloads/eztemplateautoload.php&quot;, which of course does not exists. </p> <a name="eztoc264775_2" id="eztoc264775_2"></a><h2>Setting arrays being cleared by other INI files</h2> <p> Consider the following code: </p> <pre class="ini">TemplateSettings<span style="">&#93;</span> ExtensionAutoloadPath<span style="">&#91;</span><span style="">&#93;</span> ExtensionAutoloadPath<span style="">&#91;</span><span style="">&#93;</span>=myextension</pre> <p> ExtensionAutoloadPath[] will re-initialize the setting again as an array, and any items added to the array in previously loaded setting files are lost. </p> Fri, 23 May 2008 06:27:57 GMT Solution: Add Location to Object / Add Usergroup to Userhttps:///ezpedia.org/wiki/ez/solution_add_location_to_object_add_usergroup_to_user <p> This function allows adding a location to an extisting object even adds a usergroup to an existing user. The Code was taken and modified from kernel/content/action.php where it says &quot; if ( $module-&gt;isCurrentAction( 'AddAssignment' ) )&quot; </p> <pre class="php"><span style="color: #808080; font-style: italic;">/** * Adds User to the chosen Usergroup * objectID=UserobjectID * newNodeID=usergroupNodeID * @param integer $objectID * @param unknown_type $newNodeID */</span> <span style="color: #000000; font-weight: bold;">function</span> addLocation<span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$objectID</span>,<span style="color: #0000ff;">$newNodeID</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #808080; font-style: italic;">//$selectedNodeIDArray = eZContentBrowse::result( 'AddNodeAssignment' );</span> eZDebug::<span style="color: #006600;">writeDebug</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;LocationAdd: objectID&quot;</span>.<span style="color: #0000ff;">$objectID</span>.<span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>newNodeID: &quot;</span>.<span style="color: #0000ff;">$newNodeID</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$object</span> = eZContentObject::<span style="color: #006600;">fetch</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$objectID</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$nodeID</span> = <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;main_node_id&quot;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #808080; font-style: italic;">//$version = $object-&gt;currentVersion();</span> <span style="color: #0000ff;">$ini</span> = eZINI::<span style="color: #006600;">instance</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$userClassID</span> = <span style="color: #0000ff;">$ini</span>-&gt;<span style="color: #006600;">variable</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;UserSettings&quot;</span>, <span style="color: #ff0000;">&quot;UserClassID&quot;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #808080; font-style: italic;">// $node = eZContentObjectTreeNode::fetch( $nodeID );</span> <span style="color: #0000ff;">$selectedNodeIDArray</span> = <a href="https:///www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$newNodeID</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$node</span> = eZContentObjectTreeNode::<span style="color: #006600;">fetch</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$selectedNodeIDArray</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> !<a href="https:///www.php.net/is_array"><span style="color: #000066;">is_array</span></a><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$selectedNodeIDArray</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #0000ff;">$selectedNodeIDArray</span> = <a href="https:///www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #0000ff;">$nodeAssignmentList</span> = eZNodeAssignment::<span style="color: #006600;">fetchForObject</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$objectID</span>, <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'current_version'</span> <span style="color: #66cc66;">&#41;</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #000000; font-weight: bold;">false</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$assignedNodes</span> = <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">assignedNodes</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #0000ff;">$parentNodeIDArray</span> = <a href="https:///www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$setMainNode</span> = <span style="color: #000000; font-weight: bold;">false</span>; <span style="color: #0000ff;">$hasMainNode</span> = <span style="color: #000000; font-weight: bold;">false</span>; <span style="color: #b1b100;">foreach</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$assignedNodes</span> <span style="color: #b1b100;">as</span> <span style="color: #0000ff;">$assignedNode</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$assignedNode</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'is_main'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #0000ff;">$hasMainNode</span> = <span style="color: #000000; font-weight: bold;">true</span>; &nbsp; <span style="color: #0000ff;">$append</span> = <span style="color: #000000; font-weight: bold;">false</span>; <span style="color: #b1b100;">foreach</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$nodeAssignmentList</span> <span style="color: #b1b100;">as</span> <span style="color: #0000ff;">$nodeAssignment</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$nodeAssignment</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'parent_node'</span><span style="color: #66cc66;">&#93;</span> == <span style="color: #0000ff;">$assignedNode</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'parent_node_id'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #0000ff;">$append</span> = <span style="color: #000000; font-weight: bold;">true</span>; <span style="color: #b1b100;">break</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$append</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #0000ff;">$parentNodeIDArray</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #0000ff;">$assignedNode</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'parent_node_id'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> !<span style="color: #0000ff;">$hasMainNode</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #0000ff;">$setMainNode</span> = <span style="color: #000000; font-weight: bold;">true</span>; &nbsp; <span style="color: #0000ff;">$existingNode</span> = eZContentObjectTreeNode::<span style="color: #006600;">fetch</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$nodeID</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$mainNodeID</span> = <span style="color: #0000ff;">$existingNode</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'main_node_id'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$objectName</span> = <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'name'</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #0000ff;">$db</span> = eZDB::<span style="color: #006600;">instance</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$db</span>-&gt;<span style="color: #006600;">begin</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$locationAdded</span> = <span style="color: #000000; font-weight: bold;">false</span>; <span style="color: #0000ff;">$node</span> = eZContentObjectTreeNode::<span style="color: #006600;">fetch</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$nodeID</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">foreach</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$selectedNodeIDArray</span> <span style="color: #b1b100;">as</span> <span style="color: #0000ff;">$selectedNodeID</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> !<a href="https:///www.php.net/in_array"><span style="color: #000066;">in_array</span></a><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$selectedNodeID</span>, <span style="color: #0000ff;">$parentNodeIDArray</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #0000ff;">$parentNode</span> = eZContentObjectTreeNode::<span style="color: #006600;">fetch</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$selectedNodeID</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$parentNodeObject</span> = <span style="color: #0000ff;">$parentNode</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'object'</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">/*$canCreate = ( ( $parentNode-&gt;checkAccess( 'create', $class-&gt;attribute( 'id' ), $parentNodeObject-&gt;attribute( 'contentclass_id' ) ) == 1 ) || ( $parentNode-&gt;canAddLocation() &amp;&amp; $node-&gt;canRead() ) );*/</span> <span style="color: #0000ff;">$canCreate</span>=<span style="color: #000000; font-weight: bold;">true</span>; &nbsp; <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$canCreate</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #0000ff;">$insertedNode</span> = <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">addLocation</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$selectedNodeID</span>, <span style="color: #000000; font-weight: bold;">true</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// Now set is as published and fix main_node_id</span> <span style="color: #0000ff;">$insertedNode</span>-&gt;<span style="color: #006600;">setAttribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'contentobject_is_published'</span>, <span style="color: #cc66cc;">1</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$insertedNode</span>-&gt;<span style="color: #006600;">setAttribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'main_node_id'</span>, <span style="color: #0000ff;">$node</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'main_node_id'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$insertedNode</span>-&gt;<span style="color: #006600;">setAttribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'contentobject_version'</span>, <span style="color: #0000ff;">$node</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'contentobject_version'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #808080; font-style: italic;">// Make sure the url alias is set updated.</span> <span style="color: #0000ff;">$insertedNode</span>-&gt;<span style="color: #006600;">updateSubTreePath</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$insertedNode</span>-&gt;<span style="color: #006600;">sync</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #0000ff;">$locationAdded</span> = <span style="color: #000000; font-weight: bold;">true</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$locationAdded</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'contentclass_id'</span> <span style="color: #66cc66;">&#41;</span> == <span style="color: #0000ff;">$userClassID</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> eZUser::<span style="color: #006600;">cleanupCache</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span> <span style="color: #0000ff;">$db</span>-&gt;<span style="color: #006600;">commit</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">//include_once( 'kernel/classes/ezcontentcachemanager.php' );</span> eZContentCacheManager::<span style="color: #006600;">clearContentCacheIfNeeded</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$objectID</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #66cc66;">&#125;</span></pre> <p> Works with ezpublish version 4.x </p> Fri, 14 Mar 2008 06:31:35 GMT Lorem ipsumhttps:///ezpedia.org/wiki/ez/lorem_ipsum <p> For a general descriptiion of Lorem ipsum, we recommend <a href="https:///en.wikipedia.org/wiki/Lorem_ipsum" target="_self">Lorem ipsum on Wikipedia</a>. </p> <p> There is an eZ Publish extension called <a href="https:///svn.ez.no/svn/extensions/contentgenerate" target="_self">loremipsum</a> to generate objects with a lorem ipsum placeholder text in batch. </p> <a name="eztoc247574_1" id="eztoc247574_1"></a><h2>References</h2> <ul> <li>Forum: <a href="https:///ez.no/developer/forum/developer/how_to_handle_a_big_tree_of_products" target="_self">How to handle a big tree of products</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/new_script_cli_version_of_lorem_ipsum" target="_self">New Script, CLI version of Lorem Ipsum</a></li> </ul> Mon, 04 Feb 2008 23:11:45 GMT Solution: How to handle Information Collection in template.https:///ezpedia.org/wiki/ez/solution_how_to_handle_information_collection_in_template <a name="eztoc237959_1" id="eztoc237959_1"></a><h2>Solution</h2> <p> This piece of template code iterating the already stored and collected information has only the purpose of demonstration. </p> <pre class="eztemplate"><span style="color: #D36900;">&#123;</span>def <span style="">$collection</span>=<a href="https:///ez.no/doc/content/advancedsearch?SearchText=fetch&SearchSectionID=5"><span style="color: #008000;">fetch</span></a><span style="color: #D36900;">&#40;</span><span style="color: #ff0000;">'content'</span>,<span style="color: #ff0000;">'collected_info_list'</span>, <a href="https:////ez.no/doc/content/advancedsearch?SearchText=hash&SearchSectionID=5"><span style="color: #804040;">hash</span></a><span style="color: #D36900;">&#40;</span><span style="color: #ff0000;">'object_id'</span>, <span style="">$obj</span>.<span style="color: #006600;">id</span><span style="color: #D36900;">&#41;</span><span style="color: #D36900;">&#41;</span><span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span>foreach <span style="">$collection</span> as <span style="">$col</span><span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span><span style="">$col</span>.<span style="color: #006600;">creator</span>.<span style="color: #006600;">contentobject</span>.<span style="color: #006600;">name</span>|wash<span style="color: #D36900;">&#125;</span> <span style="color: #008080; font-style: italic;">{* name of the user who stored something into the i.c. *}</span> <span style="color: #D36900;">&#123;</span>foreach <span style="">$col</span>.<span style="color: #006600;">attributes</span> as <span style="">$colAttr</span><span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span><span style="">$colAttr</span>.<span style="color: #006600;">contentclass_attribute_name</span><span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span><a href="https:///ez.no/doc/content/advancedsearch?SearchText=attribute_result_gui&SearchSectionID=5"><span style="color: #0600FF;">attribute_result_gui</span></a> <span style="">view=</span>info <span style="">attribute=</span><span style="">$colAttr</span><span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span>/foreach<span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span>/foreach<span style="color: #D36900;">&#125;</span></pre> Tue, 08 Jan 2008 20:30:19 GMT red5https:///ezpedia.org/wiki/ez/red5 <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc231445_1" id="eztoc231445_1"></a><h2>References</h2> <ul> <li>Doc: <a href="https:///ez.no/doc/extensions/ez_flow" target="_self">eZ Flow</a></li> <li>Doc: <a href="/wiki/en/../../../ez/ez_flow_red5_installation_on_mac_os_x_intel_10_4_11_with_xampp_for_macos_x_0_7_0_7_october_2007" target="_self">eZ Flow, Red5 installation on MAC OS X Intel 10.4.11 with XAMPP for MacOS X 0.7.0, 7. October 2007</a></li> <li>Blog: <a href="https:///wascou.org/eng/blog/red5_documentation_addon" target="_self">Red5 documentation addon</a></li> </ul> Mon, 07 Jan 2008 05:42:51 GMT iframehttps:///ezpedia.org/wiki/ez/iframe <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div> <p> You can use an iframe to embed an external web page within eZ Publish </p> <a name="eztoc231084_1" id="eztoc231084_1"></a><h2>References</h2> <ul> <li>Forum: <a href="https:///ez.no/developer/forum/developer/opening_up_external_url_inside_ez_cms#msg156315" title="Posted by: Heath: Hello Andrew, Welcome to the eZ Ecosystem, I've not heard or seen a way to 'view' an external website within eZ Publish without custom code. Though you should be able to use an iframe / frame within a custom template to accomplish this goal. Here are a few similar threads... &lt;i&gthttps:////ez.no/developer/forum/setup_design/external_site_in_ezpublish_cmhttps://://ez.no/developer/fo..." target="_self">Opening up external url inside ez CMS</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/setup_design/external_site_in_ezpublish_cms" target="_self">External site in ezpublish cms</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/comments_on_webmail_wanted" target="_self">Comments on webmail wanted</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/general/browsing_a_ftp_http_folder_in_a_view" target="_self">Browsing a ftp http folder in a view</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/extension_to_manipulate_an_external_php_application" target="_self">extension to manipulate an external php application</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/setup_design/how_to_setup_frames" target="_self">How to setup frames</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/setup_design/using_frames_flash_and_google_issues" target="_self">Using frames flash and google issues</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/php_integration" target="_self">PHP integration</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/an_unique_module_with_results_from_various_modules" target="_self">A unique module with results from various modules</a></li> </ul> Mon, 17 Dec 2007 10:09:26 GMT ezimagealiashandlerhttps:///ezpedia.org/wiki/ez/ezimagealiashandler <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc226754_1" id="eztoc226754_1"></a><h2>Introduction</h2> <p> This eZ Publish kernel class provides for the simple PHP based interphase to fetch an original image alias and image alias properties (uri, width, height, etc). </p> <p> Detailed examples of the methods provided by this class are available within the API documentation. </p> <p> Brief examples of how to use the class methods are provided in the following solution reference documentation. </p> <a name="eztoc226754_1_1" id="eztoc226754_1_1"></a><h3>Details</h3> <p> Internal manager for the <a href="https:///pubsvn.ez.no/doxygen/trunk/html/classeZImage.html" target="_self">eZImage</a> datatype. </p> <p> Takes care of image conversion and serialization from and to the internal XML format. </p> <p> <b>Note:</b>This handler was introduced in eZ Publish 3.3 and will detect older <a href="https:///pubsvn.ez.no/doxygen/trunk/html/classeZImage.html" target="_self">eZImage</a> structures and convert them on the fly. </p> <p> The XML storage was improved in 3.8, from then it always stores the attribute ID, version and language in the &lt;original&gt; tag. This was required to get the new multi-language features to work. </p> <a name="eztoc226754_2" id="eztoc226754_2"></a><h2>References</h2> <ul> <li>Doc: <a href="https:///pubsvn.ez.no/doxygen/trunk/html/classeZImageAliasHandler.html" target="_self">Kernel Class API, eZImageAliasHandler</a></li> <li><a href="/wiki/en/ez/solution_fetching_ezimage_datatype_image_alias_properties_using_php" target="_self">Solution: Fetching ezimage datatype image alias properties using PHP</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/suggestions/new_image_system" target="_self">New image system</a></li> <li>Doc: Reference: <a href="https:///ez.no/doc/ez_publish/technical_manual/3_10/reference/objects/ezimagealiashandler" target="_self">ezimagealiashandler</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/import_image_into_existing_class" target="_self">Import image into existing class</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/general/displaying_custom_class_images_ezimagealiashandler" target="_self">displaying custom class images ezimagealiashandler</a></li> </ul> Mon, 17 Dec 2007 10:05:11 GMT Solution: Fetching ezimage datatype image alias properties using PHPhttps:///ezpedia.org/wiki/ez/solution_fetching_ezimage_datatype_image_alias_properties_using_php <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc226750_1" id="eztoc226750_1"></a><h2>Introduction</h2> <p> Did you know that you can use the eZ Publish kernel api to obtain image alias properties from content object attributes which use the ezimage datatype. </p> <a name="eztoc226750_2" id="eztoc226750_2"></a><h2>Example</h2> <p> This is a simple php example of how you may use the eZ Publish kernel api to obtain image alias properties. This example comes from a simple example custom module view. </p> <pre class="php"><span style="color: #000000; font-weight: bold;">&lt;?php</span> &nbsp; <span style="color: #808080; font-style: italic;">/** * File image.php * * @package image.php * @version //autogentag// * @copyright Copyright (C) 2007 Brookins Consulting. All rights reserved. * @license https:///www.gnu.org/licenses/gpl.txt GPL License */</span> &nbsp; <span style="color: #0000ff;">$Module</span> =&amp; <span style="color: #0000ff;">$Params</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'Module'</span><span style="color: #66cc66;">&#93;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// START</span> &nbsp; <span style="color: #808080; font-style: italic;">// Assume this type of module/view url:</span> <span style="color: #808080; font-style: italic;">// www.site.com/myextension/mymodule/myview/1234</span> <span style="color: #808080; font-style: italic;">// 1234 maps to the view parameter, MyNode (eg: $Params[&quot;MyNode&quot;])</span> &nbsp; <span style="color: #808080; font-style: italic;">// 0. Include the necessary files -- I would imagine that some are include</span> &nbsp; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'lib/ezdb/classes/ezdb.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'lib/ezutils/classes/ezfunctionhandler.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'lib/ezutils/classes/ezoperationhandler.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'lib/ezutils/classes/ezhttptool.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/common/template.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/ezcontentclass.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/ezpreferences.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/datatypes/ezimage/ezimage.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/datatypes/ezurl/ezurl.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/datatypes/ezurl/ezurlobjectlink.php'</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 1. Create an instance of the database</span> <span style="color: #0000ff;">$db</span> =&amp; eZDB::<span style="color: #006600;">instance</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 2. Query the node via node id</span> <span style="color: #0000ff;">$my_node</span> =&amp; eZContentObject::<span style="color: #006600;">fetchByNodeID</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$Params</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;MyNode&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #808080; font-style: italic;">// $my_node =&amp; eZContentObject::fetchByNodeID( '86' );</span> &nbsp; <span style="color: #808080; font-style: italic;">// 3. Get a copy of the data_map</span> <span style="color: #0000ff;">$my_node_data_map</span> = <span style="color: #0000ff;">$my_node</span>-&gt;<span style="color: #006600;">fetchDataMap</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 4. Get a reference to the image</span> <span style="color: #0000ff;">$my_node_image</span> = <span style="color: #0000ff;">$my_node_data_map</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;image&quot;</span><span style="color: #66cc66;">&#93;</span>; <span style="color: #808080; font-style: italic;">// $my_node_image_data = $my_node_image-&gt;DataText;</span> &nbsp; <span style="color: #808080; font-style: italic;">// Example Usage of the eZ Image Alias Handler Class / System</span> <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/datatypes/ezimage/ezimagealiashandler.php'</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 5. Fetch Alias Handler</span> <span style="color: #0000ff;">$image_alias_handler</span> = <span style="color: #000000; font-weight: bold;">new</span> eZImageAliasHandler<span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$my_node_image</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 6. Fetch Alias Attributes*</span> &nbsp; <span style="color: #808080; font-style: italic;">// 7. Fetch Original Image Path as URI</span> <span style="color: #0000ff;">$my_node_image_uri</span> = <span style="color: #ff0000;">&quot;/&quot;</span> . <span style="color: #0000ff;">$image_alias_handler</span>-&gt;<span style="color: #006600;">attributeFromOriginal</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'url'</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 8. Fetch Original Image Dimentions</span> <span style="color: #0000ff;">$my_node_image_width</span> = <span style="color: #0000ff;">$image_alias_handler</span>-&gt;<span style="color: #006600;">attributeFromOriginal</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'width'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$my_node_image_height</span> = <span style="color: #0000ff;">$image_alias_handler</span>-&gt;<span style="color: #006600;">attributeFromOriginal</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'height'</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 9. Get the associated link</span> <span style="color: #0000ff;">$my_node_link_object</span> = <span style="color: #0000ff;">$my_node_data_map</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;my_link&quot;</span><span style="color: #66cc66;">&#93;</span>; <span style="color: #0000ff;">$my_node_link_url_object</span> = eZURL::<span style="color: #006600;">fetch</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$my_node_link_object</span>-&gt;<span style="color: #006600;">DataInt</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$my_node_link_url</span>=<a href="https:///www.php.net/str_replace"><span style="color: #000066;">str_replace</span></a> <span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;/&quot;</span>, <span style="color: #ff0000;">&quot;+&quot;</span>, <span style="color: #0000ff;">$my_node_link_url_object</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'url'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// 10. Instantiate the template and set the template vars</span> <span style="color: #0000ff;">$tpl</span> =&amp; templateInit<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$tpl</span>-&gt;<span style="color: #006600;">setVariable</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'parameters'</span>, <span style="color: #0000ff;">$Params</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$tpl</span>-&gt;<span style="color: #006600;">setVariable</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'my_node_image_path'</span>, <span style="color: #0000ff;">$my_node_image_uri</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$tpl</span>-&gt;<span style="color: #006600;">setVariable</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'my_node_image_width'</span>, <span style="color: #0000ff;">$my_node_image_width</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$tpl</span>-&gt;<span style="color: #006600;">setVariable</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'my_node_image_height'</span>, <span style="color: #0000ff;">$my_node_image_height</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$tpl</span>-&gt;<span style="color: #006600;">setVariable</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'my_node_link_url'</span>, <span style="color: #0000ff;">$my_node_link_url</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// END</span> &nbsp; <span style="color: #808080; font-style: italic;">// phpinfo();</span> eZExecution::<span style="color: #006600;">cleanExit</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #000000; font-weight: bold;">?&gt;</span></pre><a name="eztoc226750_3" id="eztoc226750_3"></a><h2>References</h2> <ul> <li><a href="/wiki/en/ez/ezimagealiashandler" target="_self">ezimagealiashandler</a></li> </ul> Mon, 10 Dec 2007 07:25:01 GMT Zendhttps:///ezpedia.org/wiki/ez/zend <a name="eztoc225507_1" id="eztoc225507_1"></a><h2>Related extensions</h2> <ul> <li>Zend Platform <ul> <li><a href="https:///ez.no/developer/contribs/3rd_party/zend_download_server_extension" target="_self">Download Server Extension</a></li> </ul> <ul> <li><a href="https:///ez.no/developer/contribs/3rd_party/zend_platform_extension" target="_self">Zend Cache Extension</a></li> </ul> </li> <li>Zend Studio/Neon <ul> <li><a href="https:///ez.no/developer/contribs/3rd_party/ez_publish_zend_neon_conding_standard_profile" target="_self">Coding Standard Profile</a></li> <li><a href="https:///ez.no/developer/contribs/3rd_party/ezpublish_template_code_for_zend_studio" target="_self">Template code for Zend Studio</a></li> </ul> </li> </ul> Mon, 10 Dec 2007 06:34:38 GMT JavaScripthttps:///ezpedia.org/wiki/ez/javascript <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc225503_1" id="eztoc225503_1"></a><h2>Related extensions</h2> <ul> <li><a href="https:///ez.no/developer/contribs/template_plugins/trim_new_line_template_operator" target="_self">Trim new line template operator</a></li> </ul> Fri, 07 Dec 2007 19:32:40 GMT eZ Flow, Red5 installation on MAC OS X Intel 10.4.11 with XAMPP for MacOS X 0.7.0, 7. October 2007https:///ezpedia.org/wiki/ez/ez_flow_red5_installation_on_mac_os_x_intel_10_4_11_with_xampp_for_macos_x_0_7_0_7_october_2007 <p> If you want to install it on Mac, download the .dmg, click and install, then go into Applications, Red5 and click the Red5.app or Red5 (with the Red5 icon) to start it. </p> <p> If you use XAMPP on MAC go into /Applications/xampp/etc/httpd.conf, add </p> <pre class="apache"><span style="color: #00007f;">Alias</span> /red5 /Applications/Red5/webapps/test/streams &lt;Directory <span style="color: #7f007f;">&quot;/Applications/Red5/webapps/test/streams&quot;</span>&gt; <span style="color: #00007f;">AllowOverride</span> <span style="color: #0000ff;">None</span> <span style="color: #00007f;">Options</span> <span style="color: #0000ff;">None</span> <span style="color: #00007f;">Order</span> <span style="color: #00007f;">allow</span>,<span style="color: #00007f;">deny</span> <span style="color: #00007f;">Allow</span> <span style="color: #00007f;">from</span> <span style="color: #00007f;">all</span> &lt;/Directory&gt;</pre> <p> and restart Apache. </p> <p> In eZ Admin put in Stream Server:<br /><i>rtmp://localhost:1935/test/</i> </p> <p> FileServer:<br /><i>https:///localhost/red5/</i> </p> <p> Links:<br /> XAMPP for MacOS X 0.7.0, 7. October 2007<br /><a href="https:///www.apachefriends.org/de/xampp-macosx.html" target="_self">https:////www.apachefriends.org/de/xampp-macosx.html</a> </p> <p> Red5:<br /><a href="https:///www.osflash.org/red5/red5downloads" target="_self">https:////www.osflash.org/red5/red5downloads</a> </p> Sun, 02 Dec 2007 11:49:52 GMT ezodf extensionhttps:///ezpedia.org/wiki/ez/ezodf_extension <a name="eztoc223934_1" id="eztoc223934_1"></a><h2>ODF extension - convert MS Word and PDF on MAC OS X 10.4.11 Intel</h2> <p> for some of the nice feature of the ODF extension, like MS Word import and<br /> export and PDF generation via OpenOffice.org you need OpenOffice.org<br /> installed on your server and running as daemon. You can follow the<br /> instatlation guide from documentation:<br /> <a href="https:///ez.no/doc/extensions/odf_import_export" target="_self">https:////ez.no/doc/extensions/odf_import_export</a><br /> But before:<br /> Install <a href="https:///www.neooffice.org/neojava/" target="_self">https:////www.neooffice.org/neojava/</a><br /> then follow docs ( install marcro etc.) but before starting the daemon<br /> with cli, open extension/ezodf/daemon.php with a PHP editor and change<br /> line 40:<br /> $ooexecutable = &quot;openoffice.org-2.0&quot;;<br /> into<br /> $ooexecutable = &quot;/Applications/NeoOffice.app/Contents/MacOS/soffice&quot;;<br /> That's all and now you can work with it and perhaps you want to offer some<br /> money for the open funding of PDF templates for cooler PDFs out of eZ<br /> Publish:<br /> <a href="https:///ez.no/developer/open_funding/open_funding_projects/pdf_templating_export" target="_self">https:////ez.no/developer/open_funding/open_funding_projects/pdf_templating_export</a><br /> Tested with:<br /> XAMPP for MacOS X 0.7.0, 7. October 2007 (PHP 4.4.7)<br /> <a href="https:///www.apachefriends.org/de/xampp-macosx.html" title="https:////www.apachefriends.org/de/xampp-macosx.html" target="_self"&ghttps://://www.apachefriends.org/de/xampp-macosx.html</a><br />ezpublish-3.10.0 </p> <p> Import/Export .doc and Export PDF </p> <p> and </p> <p> XAMPP for MacOS X 0.7.0, 7. October 2007 (PHP 5.2.4)ezpublish-4.0.0rc1 </p> <p> Works sometimes </p> <p> Export PDF with errors in charset … ô </p> <p> Export .doc with errors in charset </p> <p> Import .doc, no socket </p> <p> perhaps of bug in Online Editor </p> Sun, 25 Nov 2007 09:11:01 GMT Overriding kernel error templateshttps:///ezpedia.org/wiki/ez/overriding_kernel_error_templates <a name="eztoc222558_1" id="eztoc222558_1"></a><h2>Match conditions</h2> <p> Templates used/called by the kernel/error view do indeed have a couple design keys that could be used for override via override.ini(.append.php). Besides the obvious Source filter, it is also possible to use: </p> <ul> <li><i>error_type</i>: this is always kernel for the standard modules,</li> <li><i>error_number</i>: 1 for access denied, etc.</li> </ul> <p> For all intents and purposes, however, this is not a viable method of displaying custom error templates because it is not possible to match on a given view. </p> <a name="eztoc222558_2" id="eztoc222558_2"></a><h2>Template variables</h2> <p> <i>kernel/error/view.php</i> passes very (very) little useful information to the various error_code templates, so there is nothing natively available in these templates to<br />use for doing things like for example a switch/case on section. </p> <p> The best solution at the time of writing is to use <i>$redirect_uri</i>, from which it is possible to extract the module, current node ID, etc. </p> <a name="eztoc222558_3" id="eztoc222558_3"></a><h2>Author</h2> <p> Based on a summary by Andrew Kelly in <a href="https:///ez.no/developer/forum/developer/trouble_overriding_access_denied_template" target="_self">Trouble overriding &quot;Access Denied&quot; template (eZ forums)</a> </p> Thu, 15 Nov 2007 08:21:14 GMT Creating new content object versions with PHPhttps:///ezpedia.org/wiki/ez/creating_new_content_object_versions_with_php <p> You can update objects by creating new version and publish the new version. </p> <a name="eztoc220281_0_1" id="eztoc220281_0_1"></a><h3>The code</h3><a name="eztoc220281_0_1" id="eztoc220281_0_1"></a><h3>Known variables</h3> <ul> <li>$object, instance of class eZContentObject</li> </ul> <a name="eztoc220281_0_1" id="eztoc220281_0_1"></a><h3>Sample</h3> <pre class="php"><span style="color: #0000ff;">$newVersion</span> =&amp; <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">createNewVersion</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #0000ff;">$newData</span> =&amp; <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">fetchDataMap</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$newVersion</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'version'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #808080; font-style: italic;">// change attributes of new version here, by using $newData data map</span> &nbsp; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'lib/ezutils/classes/ezoperationhandler.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$result</span> = eZOperationHandler::<span style="color: #006600;">execute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'content'</span>, <span style="color: #ff0000;">'publish'</span>, <a href="https:///www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'object_id'</span> =&gt; <span style="color: #0000ff;">$object</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'id'</span> <span style="color: #66cc66;">&#41;</span>, <span style="color: #ff0000;">'version'</span> =&gt; <span style="color: #0000ff;">$newVersion</span>-&gt;<span style="color: #006600;">attribute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'version'</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span>;</pre> Wed, 14 Nov 2007 14:16:48 GMT Solution: Disable Dirty Object Draft Edit Show Versions Viewhttps:///ezpedia.org/wiki/ez/solution_disable_dirty_object_draft_edit_show_versions_view <div class="object-right"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc220039_1" id="eztoc220039_1"></a><h2>Need</h2> <p> To ensure that users who are editing their own content objects on the frontend are not bothered by encountering the &quot;existing drafts&quot; window / page. </p> <a name="eztoc220039_2" id="eztoc220039_2"></a><h2>Solution</h2> <p> One solution may be to use the following setting to provide for the above need. </p> <a name="eztoc220039_2_1" id="eztoc220039_2_1"></a><h3>Setting</h3> <p> Default setting from the setings file, settings/site.ini </p> <pre class="ini"><span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>ContentSettings<span style="">&#93;</span></span> # What to do when editing an object that has draft versions newer than the current version. # Use 'showversions' to select which version to edit, or 'usecurrent' to always edit the current version. <span style="color: #000099;">EditDirtyObjectAction</span>=<span style="color: #660066;">showversions|usecurrent</span></pre> <p> Solution setting for your setings override file, settings/override/site.ini.append.php </p> <pre class="ini"><span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>ContentSettings<span style="">&#93;</span></span> <span style="color: #000099;">EditDirtyObjectAction</span>=<span style="color: #660066;">usecurrent</span></pre><a name="eztoc220039_3" id="eztoc220039_3"></a><h2>References</h2> <ul> <li>Doc: <a href="https:///ez.no/doc/ez_publish/technical_manual/3_10/reference/configuration_files/site_ini/contentsettings/editdirtyobjectaction" target="_self">Reference - EditDirtyObjectAction</a></li> </ul> Fri, 26 Oct 2007 21:44:03 GMT Subscriptionhttps:///ezpedia.org/wiki/ez/subscription <a name="eztoc216150_1" id="eztoc216150_1"></a><h2>About</h2> <p> Subscription solulution features </p> <a name="eztoc216150_2" id="eztoc216150_2"></a><h2>Bias</h2> <p> eZ Publish is a fantastic basis of any subscription solution! </p> <a name="eztoc216150_3" id="eztoc216150_3"></a><h2>References</h2> <ul> <li>Project: <a href="https:///projects.ez.no/bcsimplesubscription" target="_self">Simple Subscription</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/general/questions_concerning_groups_setup_and_custom_pages#msg152163" title="Posted by: Heath: Hello, Great brief conversation. Here is some related news (follow up) Brookins Consulting has recently released a similar solution as described in the above conversation.https:////projects.ez.no/bcsimplesubscription &lt;i&gt;@Dave Polcino&lt;/i&gt; The Open Funding Payment Gateway Project has prioritized the creation support for the 2checkout gateway. https://://ez.no/developer/open..." target="_self">Subscription questions concerning groups, setup and custom pages</a></li> </ul> Fri, 26 Oct 2007 18:54:50 GMT Solution: Import existing content object url aliases into eZ using the eZUrlAlias APIhttps:///ezpedia.org/wiki/ez/solution_import_existing_content_object_url_aliases_into_ez_using_the_ezurlalias_api <a name="eztoc216111_1" id="eztoc216111_1"></a><h2>Question</h2> <p> How to create though data import (content migration) a complex maping of internal url aliases into eZ Publish for compatibility internal with existing urls </p> <a name="eztoc216111_2" id="eztoc216111_2"></a><h2>Reference</h2> <ul> <li>Forum: <a href="https:///ez.no/developer/forum/developer/solved_migration_to_ezp_url_migration_problem#msg152133" title="Posted by: Andrey Astakhov: Solution: &lt;code&gt; $systemUrlAlias = ezUrlAlias::fetchBySourceURL( 'url_alias' ); $urlAlias = eZUrlAlias::create('12/55/67899' , 'url_alias', false, $systemUrlAlias-&gt;attribute( 'id' ) $urlAlias-&gt;store(); &lt;/code&gt;" target="_self">Migration to eZ Publish : A url migration solution</a></li> </ul> Thu, 25 Oct 2007 03:41:14 GMT SSLZoneSettingshttps:///ezpedia.org/wiki/ez/sslzonesettings <a name="eztoc215799_1" id="eztoc215799_1"></a><h2>About</h2> <p> eZ Publish SSL Zone settings </p> <p> This is one feature which has not been documented as clearly as other features with the ez.no/doc documentation. </p> <a name="eztoc215799_2" id="eztoc215799_2"></a><h2>Settings</h2> <p> Settings configuration examples ... </p> <a name="eztoc215799_3" id="eztoc215799_3"></a><h2>References</h2> <ul> <li>Article: <a href="https:///ez.no/developer/articles/new_features_in_ez_publish_3_8/applying_ssl_zones" target="_self">Applying SSL Zones / New Features in eZ publish 3.8</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/setup_design/problem_to_configure_zone_ssl_access/re_problem_to_configure_zone_ssl_access" target="_self">Problem to configure zone ssl access / Problem to configure <b>...</b></a></li> <li>Forum: <a href="https:///ez.no/developer/forum/general/detect_if_url_has_https" target="_self">Detect if url has https</a></li> <li>Doc: <a href="https:///ez.no/doc/ez_publish/technical_manual/3_9/reference/configuration_files/site_ini/sslzonesettings" target="_self">[SSLZoneSettings] / site.ini / Configuration files / Reference ...</a></li> <li>Development Specification: <a href="https:///ez.no/developer/developer_information/specs/ssl_zones" target="_self">SSL Zones</a></li> <li>Development Feature Documentation: <a href="https:///pubsvn.ez.no/nextgen/trunk/doc/features/3.8/ssl_zones.txt" target="_self">SSL Zones</a></li> <li>Class: <a href="https:///pubsvn.ez.no/doxygen/trunk/html/classeZSSLZone.html" target="_self">eZSSLZone Class Reference</a></li> </ul> Mon, 08 Oct 2007 05:15:40 GMT How to change the datatype of attributes?https:///ezpedia.org/wiki/ez/how_to_change_the_datatype_of_attributes <p> There's no feature currently included with eZ Publish to change an attribute's datatype. However, there are some methods for it already. </p> <a name="eztoc212995_1" id="eztoc212995_1"></a><h2>Internally compatible datatypes</h2> <p> If a datatype is internally compatible, which means it stores both its class level and object level data in the same way in the database fields of ezcontentobject_attribute and ezcontentclass_attribute, then you can use some simple SQL to change the datatypes. The following example SQL will change all attributes of the datatype with identifier &quot;places&quot; to the datatype with identifier &quot;ezinteger&quot;: </p> <pre class="sql"><span style="color: #993333; font-weight: bold;">UPDATE</span> ezcontentclass_attribute <span style="color: #993333; font-weight: bold;">SET</span> data_type_string=<span style="color: #ff0000;">'ezinteger'</span> <span style="color: #993333; font-weight: bold;">WHERE</span> data_type_string=<span style="color: #ff0000;">'places'</span>; <span style="color: #66cc66;">&#91;</span><span style="color: #993333; font-weight: bold;">UPDATE</span> ezcontentobject_attribute <span style="color: #993333; font-weight: bold;">SET</span> data_type_string=<span style="color: #ff0000;">'ezinteger'</span> <span style="color: #993333; font-weight: bold;">WHERE</span> data_type_string=<span style="color: #ff0000;">'places'</span>;</pre><a name="eztoc212995_2" id="eztoc212995_2"></a><h2>Non-internally compatible datatypes</h2> <p> There is an experimental extension available at <a href="https:///ez.no/developer/contribs/datatypes/datatypes" target="_self">https:////ez.no/developer/contribs/datatypes/datatypes</a>. You can write plug-ins for it to handle conversion of specific datatypes. </p> Fri, 05 Oct 2007 06:12:18 GMT Chathttps:///ezpedia.org/wiki/ez/chat <a name="eztoc212522_1" id="eztoc212522_1"></a><h2>About</h2> <p> Web based live chat software </p> <a name="eztoc212522_2" id="eztoc212522_2"></a><h2>Options</h2><a name="eztoc212522_2_1" id="eztoc212522_2_1"></a><h3>Free</h3> <p> <a href="/wiki/en/ez/irc" target="_self">IRC</a>! It's often a simple offering that is almost too simple for others needs </p> <a name="eztoc212522_2_2" id="eztoc212522_2_2"></a><h3>Non-free</h3> <p> Software which provides (web based) chat software often non-free. This thread on <a href="https://ez.no/developer/forum/general/live_chat_programs_do_you_know#msg150464" title="Posted by: Betsy Gamrat: One more to consider: https:///www.activecampaign.com/triolive/ $280 :)" target="_self">Live Chat Programs</a> discusses some offers </p> <a name="eztoc212522_3" id="eztoc212522_3"></a><h2>References</h2> <ul> <li>Project: <a href="https:///projects.ez.no/unofficialhabla" target="_self">Unofficial Hab.la</a></li> <li>Forum: <a href="https://ez.no/developer/forum/general/live_chat_programs_do_you_know#msg150464" title="Posted by: Betsy Gamrat: One more to consider: https:///www.activecampaign.com/triolive/ $280 :)" target="_self">Live Chat Programs</a></li> <li>Forum: <a href="https:///phpdoc.ez.no/community/forum/developer/chat_with_ez_publish" target="_self">Chat with eZ Publish</a></li> <li>Forum: <a href="https:///ez.no/community/forum/setup_design/manipulate_string_with_regexp" target="_self">Using IRC Web Based Chat through eZ</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/developer/integrating_forums_chat" target="_self">Integrating forums and chat</a></li> </ul> Wed, 03 Oct 2007 02:04:42 GMT Solution: Where to find extensionshttps:///ezpedia.org/wiki/ez/solution_where_to_find_extensions <a name="eztoc212210_1" id="eztoc212210_1"></a><h2>About</h2> <p> A question frequently asked by those who are looking for more information about existing solutions and example software available. </p> <a name="eztoc212210_2" id="eztoc212210_2"></a><h2>Sources</h2> <ul> <li><a href="https:///ez.no/developer/contribs" target="_self">ez.no</a></li> <li><a href="https:///projects.ez.no" target="_self">projects.ez.no</a></li> <li><a href="https:///pubsvn.ez.no" target="_self">pubsvn.ez.no</a></li> <li><a href="https:///svn.ez.no/svn/extensions" target="_self">svn.ez.no</a></li> <li><a href="https:///ez.no/products/certified_extensions" target="_self">certified extensions</a></li> <li><a href="https:///ez.no/products/partner_products" target="_self">partner products</a></li> <li>ez partners</li> <li>individuals</li> </ul> Tue, 02 Oct 2007 12:56:50 GMT eZ Ecosystem RSS Feedshttps:///ezpedia.org/wiki/ez/ez_ecosystem_rss_feeds <a name="eztoc212115_1" id="eztoc212115_1"></a><h2>About</h2> <p> There is an amazing amount of eZ related information available via RSS </p> <a name="eztoc212115_2" id="eztoc212115_2"></a><h2>Feeds</h2> <ul> <li>PubSVN - <a href="https:///pubsvn.ez.no/websvn/rss.php?repname=community&amp;path=%2F&amp;rev=0&amp;sc=1&amp;isdir=1" target="_self">Community</a></li> <li>PubSVN - <a href="https:///pubsvn.ez.no/websvn/rss.php?repname=nextgen&amp;path=%2F&amp;rev=0&amp;sc=1&amp;isdir=1" target="_self">Nextgen</a></li> <li>projects.ez.no - <a href="https:///projects.ez.no/rss/feed/projects" target="_self">Projects</a></li> <li>projects.ez.no - <a href="https:///projects.ez.no/rss/feed/forums" target="_self">Forums</a></li> <li>ezpedia.org - <a href="https:///ezpedia.org/wiki/rss/feed/main" target="_self">Main</a></li> <li>planetezpublish.org - <a href="https:///planetezpublish.org/rss/feed/rss20.xml" target="_self">Planet eZ Publish</a></li> <li>ez.no - <a href="https:///ez.no/rss/feed/forum" target="_self">Forum</a></li> <li>ez.no - <a href="https:///ez.no/rss/feed/contribs" target="_self">Projects and contributions</a></li> <li>ez.no - <a href="https:///ez.no/rss/feed/news" target="_self">Company news</a></li> <li>ez.no - <a href="https:///ez.no/rss/feed/communitynews" target="_self">Developer news</a></li> <li>ez.no - <a href="https:///ez.no/rss/feed/community_articles" target="_self">Education articles</a></li> <li>ez.no - <a href="https:///ez.no/rss/feed/openfunding_suggestions" target="_self">Open Funding Suggestions</a></li> <li>ez.no - <a href="https:///ez.no/rss/feed/sa" target="_self">Security advisories</a></li> <li>lists.ez.no - <a href="https:///rss.gmane.org/messages/excerpts/gmane.comp.cms.ezpublish.devel" target="_self">sdk.public</a></li> <li>lists.ez.no - <a href="https:///rss.gmane.org/messages/excerpts/gmane.comp.cms.ezpublish.translations" target="_self">translations</a></li> <li>lists.ez.no - <a href="https:///rss.gmane.org/messages/excerpts/gmane.comp.web.ezcomponents.devel" target="_self">components</a></li> <li>lists.ez.no - <a href="https:///rss.gmane.org/messages/excerpts/gmane.comp.web.ezcomponents.cvs" target="_self">svn-components</a></li> <li>issues.ez.no - ezpublish</li> <li>issues.ez.no - ezcomponents</li> <li>issues.ez.no - ezfind</li> <li>issues.ez.no - onlineeditor</li> <li>digg.com - <a href="https:///digg.com/rss_search?search=eZ%2BPublish&amp;area=all&amp;type=all&amp;section=all" target="_self">ezpublish</a></li> </ul> <a name="eztoc212115_3" id="eztoc212115_3"></a><h2>OPML</h2> <p> Often collections of feeds are shared using an opml file containing all the rss feed information. <br />There is an opml file containing <i>rss feeds</i> related to all things eZ Publish in <a href="https:///projects.ez.no/content/download/1991/7558/version/1/file/index.opml" target="_self">eZ Ecosystem OPML</a> file. </p> <p> You can <a href="https:///projects.ez.no/ezcommunityopml/team/members" target="_self">join</a> the <a href="https:////projects.ez.no/ezcommunityopml" target="_self">project</a> to maintain and continue documenting syndicated feeds related to eZ </p> Tue, 02 Oct 2007 12:05:18 GMT Gmanehttps:///ezpedia.org/wiki/ez/gmane <a name="eztoc212097_1" id="eztoc212097_1"></a><h2>About</h2> <p> gmane.org offers mail list archives, rss, search and more for public mailing lists </p> <p> gmane is a great alternative to email to obtain mail list update notifications using rss </p> <a name="eztoc212097_2" id="eztoc212097_2"></a><h2>eZ Lists on Gmane</h2> <ul> <li>sdk-public: <a href="https:///dir.gmane.org/gmane.comp.cms.ezpublish.devel" title="https:////dir.gmane.org/gmane.comp.cms.ezpublish.devel" target="_self">gmane.comp.cms.ezpublish.devel</a></li> <li>translations: <a href="https:///dir.gmane.org/gmane.comp.cms.ezpublish.translations" target="_self">gmane.comp.cms.ezpublish.translations</a></li> <li>components: <a href="https:///dir.gmane.org/gmane.comp.web.ezcomponents.devel" target="_self">gmane.comp.web.ezcomponents.devel</a></li> <li>svn-components: <a href="https:///dir.gmane.org/gmane.comp.web.ezcomponents.cvs" target="_self">gmane.comp.web.ezcomponents.cvs</a></li> </ul> <a name="eztoc212097_3" id="eztoc212097_3"></a><h2>Reference</h2> <ul> <li>Forum: <a href="https:///ez.no/de/developer/forum/general/ezpublish_sdk_list_now_on_gmane" target="_self">eZPublish SDK list now on GMane</a></li> <li><a href="/wiki/en/Gmane.org" target="_self">Gmane.org</a></li> </ul> Tue, 02 Oct 2007 00:39:59 GMT Remotinghttps:///ezpedia.org/wiki/ez/remoting <a name="eztoc212040_1" id="eztoc212040_1"></a><h2>About</h2> <p> Macromedia Flash provides for connection between your Flash appliciations and your web application server for use in creating Rich Internet Applications. With it's simple yet powerfull programming model you can easily integrate rich flash content with eZ Publish. If one needed to provide a rich flash based front end to eZ Publish one could use these to create support needed. </p> <p> There are several methods which can be used to provide remoting. </p> <a name="eztoc212040_2" id="eztoc212040_2"></a><h2>Methods</h2> <ul> <li>XML</li> <li>JSON</li> <li><a href="/wiki/en/ez/amf" target="_self">AMF</a> (Action Message Format)</li> </ul> <a name="eztoc212040_3" id="eztoc212040_3"></a><h2>References</h2> <ul> <li><a href="/wiki/en/ez/amf" target="_self">AMF</a> (Action Message Format)</li> <li>SOAP</li> <li><a href="https:///projects.ez.no/nusoap" target="_self">NUSOAP</a></li> <li><a href="https:///projects.ez.no/ezcore" target="_self">eZCore</a></li> <li><a href="/wiki/en/ez/kernel" target="_self">Kernel</a> <a href="https:///pubsvn.ez.no/doxygen/4.0/html/" target="_self">API Documentation</a></li> <li><a href="https:///projects.ez.no/remoting" target="_self">Remoting extension</a></li> <li><a href="https:///projects.ez.no/bcsoapsearch" title="https:////projects.ez.no/bcsoapsearch" target="_self">BC Soap Search</a></li> </ul> <ul> <li><i> </i>Forum: <a href="https:///ez.no/developer/forum/setup_design/macromedia_flash_ezpublish_expanding_possibilities/re_macromedia_flash_ezpublish_expanding_possibilities__8" target="_self">Macromedia Flash + Ezpublish :: expanding possibilities</a></li> </ul> Mon, 01 Oct 2007 22:49:39 GMT AMFhttps:///ezpedia.org/wiki/ez/amf <a name="eztoc212029_1" id="eztoc212029_1"></a><h2>About</h2> <p> Flash Remoting support for the Action Message Format (AMF is a based binary format in SOAP).<br />If one needed to provide a rich flash based front end to eZ Publish one could use these to create support needed. </p> <a name="eztoc212029_2" id="eztoc212029_2"></a><h2>References</h2> <ul> <li>Flash remoting for PHP: <a href="https:///www.amfphp.org/" target="_self">amfphp.org</a></li> <li>Forum: <a href="https:///ez.no/developer/forum/setup_design/macromedia_flash_ezpublish_expanding_possibilities/re_macromedia_flash_ezpublish_expanding_possibilities__8" target="_self">Macromedia Flash + Ezpublish :: expanding possibilities</a></li> </ul> Mon, 01 Oct 2007 22:28:03 GMT Fetch aliashttps:///ezpedia.org/wiki/ez/fetch_alias <a name="eztoc212025_1" id="eztoc212025_1"></a><h2>About</h2> <p> A fetch alias provides for a custom fetch based on configuration settings. One could make use of default fetch alias settings and create your own to custom eZ Publish well with the least amount of changes to the system. </p> <p> You can alter the conditions of a fetch alias used by default within eZ Publish. This provides for changing the conditions of a site fetch using settings modifications. It also provides for moving all your fetches out of template into one location as settings. With your fetches in settings you do not need to customize templates to make modifications. </p> <a name="eztoc212025_2" id="eztoc212025_2"></a><h2>Example</h2> <p> Here is an example of the settings for a <a href="https:///pubsvn.ez.no/nextgen/trunk/settings/fetchalias.ini" target="_blank">reference</a> of the default fetches available within the default settings of eZ Publish. </p> <p> Settings File: <i>settings/override/fetchalias.ini.append.php</i> </p> <pre class="ini"># Fetch article comments <span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>comments<span style="">&#93;</span></span> <span style="color: #000099;">Module</span>=<span style="color: #660066;">content</span> <span style="color: #000099;">FunctionName</span>=<span style="color: #660066;">list</span> Constant<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>sort_by<span style="">&#93;</span></span>=<span style="color: #660066;">published</span><span style="color: #666666; font-style: italic;">;0</span> Parameter<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>parent_node_id<span style="">&#93;</span></span>=<span style="color: #660066;">parent_node_id</span> Constant<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>class_filter_type<span style="">&#93;</span></span>=<span style="color: #660066;">include</span> Constant<span style="color: #000066; font-weight:bold;"><span style="">&#91;</span>class_filter_array<span style="">&#93;</span></span>=<span style="color: #660066;">comment</span></pre> <p> Template File: <i>extension/ezwebin/design/ezwebin/override/templates/full/article.tpl</i> </p> <pre class="eztemplate"><span style="color: #D36900;">&#123;</span>foreach <a href="https:///ez.no/doc/content/advancedsearch?SearchText=fetch_alias&SearchSectionID=5"><span style="color: #008000;">fetch_alias</span></a><span style="color: #D36900;">&#40;</span> comments, <a href="https:////ez.no/doc/content/advancedsearch?SearchText=hash&SearchSectionID=5"><span style="color: #804040;">hash</span></a><span style="color: #D36900;">&#40;</span> parent_node_id, <span style="">$node</span>.<span style="color: #006600;">node_id</span> <span style="color: #D36900;">&#41;</span> <span style="color: #D36900;">&#41;</span> as <span style="">$comment</span><span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span><a href="https:///ez.no/doc/content/advancedsearch?SearchText=node_view_gui&SearchSectionID=5"><span style="color: #0600FF;">node_view_gui</span></a> <span style="">view=</span><span style="color: #ff0000;">'line'</span> <span style="">content_node=</span><span style="">$comment</span><span style="color: #D36900;">&#125;</span> <span style="color: #D36900;">&#123;</span>/foreach<span style="color: #D36900;">&#125;</span></pre><a name="eztoc212025_3" id="eztoc212025_3"></a><h2>External references</h2> <ul> <li>Article: <a href="https:///www.ezsystems.ca/blog/ez_publish_blog_enhancements_making_commenting_more_accessible#eztoc1647_7" target="_self">eZ Publish Blog Enhancements: Making Commenting More Accessible</a></li> <li><a href="https:///www.ezsystems.ca/blog/ez_publish_blog_enhancements_making_commenting_more_accessible#eztoc1647_7" target="_self">Doc: </a><a href="https:////ez.no/doc/ez_publish/technical_manual/3_9/reference/template_functions/miscellaneous/fetch_alias" target="_self">Fetch alias</a> (Miscellaneous / Template functions / Reference / 3.9)</li> <li><a href="https:///www.ezsystems.ca/blog/ez_publish_blog_enhancements_making_commenting_more_accessible#eztoc1647_7" target="_self">Changelog Feature Documentation: </a><a href="https:////ez.no/download/ez_publish/changelogs/ez_publish_3_3/template_fetch_by_alias" target="_self">Template Fetch by Alias</a> (eZ publish 3.3 / Changelogs)</li> </ul> Fri, 28 Sep 2007 14:10:33 GMT Mac OS Xhttps:///ezpedia.org/wiki/ez/mac_os_x <a name="eztoc211377_1" id="eztoc211377_1"></a><h2>About</h2> <p> People using eZ Pubish in a Apple MacOS Environment </p> <a name="eztoc211377_2" id="eztoc211377_2"></a><h2>Feature Concerns</h2> <ul> <li>Webdav, <a href="https:///ez.no/developer/forum/general/webdav_3_9_in_macosx_finder_error_image#msg120695" target="_self">Webdav 3.9 in MacOSX</a></li> <li>Safari, <a href="https:///ez.no/community/forum/install_configuration/can_i_use_oe_in_mac_system" target="_self">Can I use OE with MacOS</a></li> <li>Text Editor, <a href="https:///ez.no/developer/forum/developer/ezp_development_tool_ide_for_mac#msg149942" title="Posted by: Ole Morten Halvorsen: Hi Eirik, I use TextMate for all my development. While TextMate technically not an IDE, it as syntax highlighting for all the languages I need and integration with SVN. For eZP highlighting I use the ezp bundle:https:////ez.no/developer/contribs/3rd_party/textmate_bundle_for_ez_template_and_ini_files It's a bit rough still, but it works fine. Ole M." target="_self">eZP development tool (IDE) for Mac</a></li> </ul> <a name="eztoc211377_3" id="eztoc211377_3"></a><h2>Performance Concerns</h2> <ul> <li>Articles on <a href="https:///papelipe.no/tags/php" target="_self">Mac PHP performance concerns</a> </li> <li>Forum: <a href="https:///ez.no/developer/forum/general/slow_site_on_localhost_with_mamp_os_x/re_slow_site_on_localhost_with_mamp_os_x__2" target="_self">Slow site on localhost with mamp - os x</a></li> <li>Forum: <a href="https:///ez.no/community/forum/install_configuration/very_slow_performance_in_osx" target="_self">Very Slow performance in OSX</a></li> </ul> Mon, 24 Sep 2007 08:45:13 GMT Solution: Checking out all projects.ez.no subversion repositorieshttps:///ezpedia.org/wiki/ez/solution_checking_out_all_projects_ez_no_subversion_repositories <a name="eztoc210631_1" id="eztoc210631_1"></a><h2>Problem</h2> <p> There is a lot of individual projects svn repositories! <br /> How to get your head around so many projects.<br />This is how you can check them all out quickly ... </p> <a name="eztoc210631_2" id="eztoc210631_2"></a><h2>Resources</h2> <ul> <li>Project Repositories: List of svn repository url locations within in csv file, <a href="https:///projects.ez.no/repositories.csv" target="_self">repositories.csv</a> <ul> <li>Warning: <i>&quot;...there are DOS EOL markers XD in that .csv file XD&quot;</i></li> </ul> </li> </ul> <a name="eztoc210631_3" id="eztoc210631_3"></a><h2>Solutions</h2><a name="eztoc210631_3_1" id="eztoc210631_3_1"></a><h3>Checking out with shell commands</h3> <pre class="bash">wget -q -O - <span style="color: #ff0000;">'https:///projects.ez.no/repositories.csv'</span> | tr -d <span style="color: #ff0000;">'<span style="color: #000099; font-weight: bold;">\0</span>15'</span> | xargs -i svn co <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#125;</span></pre><a name="eztoc210631_3_2" id="eztoc210631_3_2"></a><h3>Checking out with php commands</h3> <pre class="bash">&lt;?php &nbsp; &nbsp; <span style="color: #0000ff;">$handle</span> = fopen<span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;https:///projects.ez.no/repositories.csv&quot;</span>, <span style="color: #ff0000;">&quot;r&quot;</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$row</span> = <span style="color: #cc66cc;">1</span>; &nbsp; <span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$data</span> = fgetcsv<span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$handle</span>, <span style="color: #cc66cc;">1000</span>, <span style="color: #ff0000;">&quot;,&quot;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> !== FALSE<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #0000ff;">$num</span> = count<span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$data</span><span style="color: #66cc66;">&#41;</span>; // <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;** &lt;p&gt; $num fields in line $row: &lt;br /&gt;&lt;/p&gt;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; &nbsp; <span style="color: #0000ff;">$row</span>++; <span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$c</span>=<span style="color: #cc66cc;">0</span>; <span style="color: #0000ff;">$c</span> &lt; <span style="color: #0000ff;">$num</span>; <span style="color: #0000ff;">$c</span>++<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #0000ff;">$line</span> = <span style="color: #0000ff;">$data</span><span style="color: #66cc66;">&#91;</span><span style="color: #0000ff;">$c</span><span style="color: #66cc66;">&#93;</span>; &nbsp; <span style="color: #0000ff;">$repo</span> = escapeshellcmd<span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$line</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$name</span> = split<span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;/&quot;</span>, <span style="color: #0000ff;">$repo</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$name</span> = <span style="color: #0000ff;">$name</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">3</span><span style="color: #66cc66;">&#93;</span>; // print_r<span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$name</span> <span style="color: #66cc66;">&#41;</span>; // Example: https:///svn.projects.ez.no/bcwebsitestatistics &nbsp; <span style="color: #0000ff;">$last_line</span> = system<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;svn co $repo&quot;</span>, <span style="color: #0000ff;">$retval</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Repository Name: &quot;</span>. <span style="color: #0000ff;">$name</span> . <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Repository URL: &quot;</span>. <span style="color: #0000ff;">$repo</span> . <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Checkout Last Line: &quot;</span>. <span style="color: #0000ff;">$last_line</span> . <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; &nbsp; <span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$retval</span> == <span style="color: #ff0000;">&quot;0&quot;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Checkout: &quot;</span>. <span style="color: #ff0000;">&quot;Success&quot;</span> . <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Checkout: &quot;</span>. <span style="color: #ff0000;">&quot;Failure&quot;</span> . <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; <span style="color: #66cc66;">&#125;</span> <span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; &nbsp; // DEBUG: Print additional information /* <span style="color: #000066;">echo</span> <span style="color: #ff0000;">' &lt;/pre&gt; &lt;hr /&gt;Last line of the output: '</span> . <span style="color: #0000ff;">$last_line</span> . <span style="color: #ff0000;">' &lt;hr /&gt;Return value: '</span> . <span style="color: #0000ff;">$retval</span> . <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>; */ <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span> &nbsp; fclose<span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$handle</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; ?&gt;</pre> Fri, 14 Sep 2007 13:30:04 GMT Fatal errorhttps:///ezpedia.org/wiki/ez/fatal_error <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc209073_1" id="eztoc209073_1"></a><h2>About</h2> <p> ... </p> <a name="eztoc209073_2" id="eztoc209073_2"></a><h2>External References</h2> <ul> <li>Forum: <a href="https:///ez.no/community/forum/developer/problem_with_import_in_php_help_needed_please#msg149151" title="Posted by: Damien POBEL: Hi Thibaut, It's difficult to know without code... If it works on your computer and not on your server, it's probably related to configuration (magic_quotes, permission, table schema, ...) You should have a look to your database log, perhaps you can find some useful informations." target="_self">Problem with import in PHP</a></li> </ul> Sat, 08 Sep 2007 21:43:23 GMT Oraclehttps:///ezpedia.org/wiki/ez/oracle <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc208313_1" id="eztoc208313_1"></a><h2>About</h2> <p> eZ Systems offers an <a href="https:///ez.no/products/add_ons/ez_publish_database_extension" target="_self">Oracle</a> extension for eZ publish </p> <a name="eztoc208313_1_1" id="eztoc208313_1_1"></a><h3>Download</h3> <ul> <li><a href="https:///ez.no/content/download/176262/1192124/file/ezoracle-extension-1.5.tar.gz" target="_self">eZ Publish Extension for Oracle® Database 1.5</a> <ul> <li>File: <a href="https:///ez.no/content/download/176262/1192124/version/2/file/ezoracle-extension-1.5.tar.gz" target="_self">ezoracle-extension-1.5.tar.gz</a></li> </ul> </li> </ul> <a name="eztoc208313_2" id="eztoc208313_2"></a><h2>External references</h2> <ul> <li>Documentation: <a href="https:///ez.no/doc/extensions/database/1_4" target="_self">Database</a></li> <li>Download: <a href="https:///ez.no/download/add_ons/ez_publish_extension_for_oracle_r_database" target="_self">eZ Publish Extension for Oracle® Database</a></li> <li>News: <a href="https:///ez.no/company/news/ez_publish_extension_for_oracle_r_database_released_under_open_source_license" target="_self">eZ Publish Extension for Oracle® Database released under Open Source License ...</a></li> <li>Forum: <a href="https:///ez.no/community/forum/install_configuration/problems_with_ezoracle_extension_installation" target="_self">Problems with ezoracle extension installation</a></li> <li>Forum: <a href="https:///ez.no/community/forum/general/ezoracle_extension" target="_self">ezoracle extension</a></li> <li>Forum: <a href="https:///ez.no/community/forum/general/connection_to_database_out_ez" target="_self">Connection to DataBase out eZ</a></li> <li>Forum: <a href="https:///ez.no/community/forum/suggestions/postgresql_support_is_it_a_yes_or_no/re_postgresql_support_is_it_a_yes_or_no" target="_self">PostgreSQL support, is it a yes or no?</a></li> <li>Forum: <a href="https:///ez.no/community/forum/general/ezpublish_database_extension_and_oracle_express_edition" target="_self">eZpublish Database Extension and Oracle Express Edition</a></li> </ul> Fri, 07 Sep 2007 15:15:29 GMT Assigning roleshttps:///ezpedia.org/wiki/ez/assigning_roles <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div> <p> Predefined variables: </p> <ul> <li>$roleID: ID of the role</li> <li>$objectID: id of a user or user group content object you want to assign the role to</li> <li>$limitIdent: either null, Subtree or Section</li> <li>$limitValue: either null, a node path string (in case $limitIdent is 'Subtree') or a section id (in case $limitIdent is 'Section')</li> </ul> <pre class="php"><span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/ezrole.php'</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$role</span> = eZRole::<span style="color: #006600;">fetch</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$roleID</span> <span style="color: #66cc66;">&#41;</span>; <span style="color: #0000ff;">$role</span>-&gt;<span style="color: #006600;">assignToUser</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0000ff;">$objectID</span>, <span style="color: #0000ff;">$limitIdent</span>, <span style="color: #0000ff;">$limitValue</span> <span style="color: #66cc66;">&#41;</span>; &nbsp; eZRole::<span style="color: #006600;">expireCache</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/ezcontentcachemanager.php'</span> <span style="color: #66cc66;">&#41;</span>; eZContentCacheManager::<span style="color: #006600;">clearAllContentCache</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; &nbsp; <span style="color: #b1b100;">include_once</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">'kernel/classes/datatypes/ezuser/ezuser.php'</span> <span style="color: #66cc66;">&#41;</span>; eZUser::<span style="color: #006600;">cleanupCache</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;</pre> Thu, 06 Sep 2007 07:08:55 GMT Forumhttps:///ezpedia.org/wiki/ez/forum <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div> <p> For a general description of forum, we recommend <a href="https:///en.wikipedia.org/wiki/Internet_forum" target="_self">Internet Forum on Wikipedia</a>. </p> <a name="eztoc207969_1" id="eztoc207969_1"></a><h2>eZ publish forum functionality</h2><a name="eztoc207969_2" id="eztoc207969_2"></a><h2>Integration with other forum software</h2> <ul> <li><a href="https:///ez.no/developer/contribs/applications/ezfluxbb" target="_self">eZFluxBB</a> : connective eZ Publish / <a href="https:////fluxbb.org/" target="_self">FluxBB</a></li> </ul> <a name="eztoc207969_3" id="eztoc207969_3"></a><h2>External resources</h2> <ul> <li><a href="https:///ez.no/community/forum/suggestions/online_editor_for_forum_reply_topic" target="_self">Online Editor for forum reply/topic</a></li> </ul> Wed, 05 Sep 2007 13:39:52 GMT shipping handlerhttps:///ezpedia.org/wiki/ez/shipping_handler <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div><a name="eztoc207895_1" id="eztoc207895_1"></a><h2>About</h2> <p> eZ Publish provides a system to handle ecommerce shipping cost calculation </p> <a name="eztoc207895_2" id="eztoc207895_2"></a><h2>External references</h2> <ul> <li>Doc: <a href="https:///ez.no/doc/ez_publish/technical_manual/3_9/features/improved_shipping_handling" target="_self">Improved shipping handling</a></li> <li>Contrib: <a href="https:///ez.no/community/contribs/examples/sample_shipping_handler" target="_self">Sample shipping handler</a></li> <li>Forum: <a href="https:///ez.no/community/forum/general/shipping_in_ezp_3_8" target="_self">Shipping in EZP 3.8+</a></li> <li>Forum: <a href="https:///ez.no/community/forum/install_configuration/some_advice_please_billing_shipping_address" target="_self">Some advice please: billing + shipping address</a></li> <li>Forum: <a href="https:///ez.no/community/forum/extensions/on_line_shop_shipping_per_country_and_payment_options" target="_self">On-line Shop - Shipping per country and Payment Options</a></li> <li>Forum Search: <a href="https:///ez.no/content/advancedsearch?SearchText=shipping&amp;SubTreeArray%5B%5D=308&amp;SearchPageLimit=5&amp;sourceid=Mozilla-search" target="_self">Shipping</a></li> </ul> Mon, 03 Sep 2007 10:44:36 GMT Content categorieshttps:///ezpedia.org/wiki/ez/content_categories <p> This is a proposal to add Mediawiki-style categorization to eZpedia. In Mediawiki, there is a facility to add content to categories and have a page automatically generated containing a list of all the articles of that particular category. For example: <a href="https:///en.wikipedia.org/wiki/Category:Computing_platforms" target="_self">en.wikipedia.org/wiki/Category:Computing_platforms</a> - on this page there is a list of subcategories and pages belonging to this category. This should be fairly easy to accomplish using Object Relations attributes in eZ. </p> <a name="eztoc207646_0_1" id="eztoc207646_0_1"></a><h3>Proposed Implementation</h3> <p> We can add an object relations attribute to the article class, which can then be used to choose which category or categories the article should belong to. There should be a way to add a new category as well if a suitable one doesn't already exist. These categories will be objects of a category class stored somewhere in the content tree. The view templates for the categories should be set up to show the objects reverse-related to the current category. </p> <p> We can also add an object relations category to the category objects themselves, so that we can have subcategories - I think in this case we should have an object relations attribute for parent categories, and then children can be picked up using the reverse relations. </p> <p> Does anything need to be done to take advantage of the Solr search service, or is there a better way to implement it using that? </p> Sun, 02 Sep 2007 21:51:47 GMT Snippetshttps:///ezpedia.org/wiki/ez/snippets <div class="object-center"> <p class="editor_motivation"> This is a <a href="/wiki/en/templates/stub">Stub</a> article. Help the eZ Publish community by expanding it! </p> </div> <p> Snippets of eZ Publish related source code </p> <a name="eztoc207600_1" id="eztoc207600_1"></a><h2>About</h2> <p> A place to document existing references of eZ publish related source code snippets </p> <p> While this page documents existing snippets of source code from various locations like the forums and eZpedia, there is a new project to collect and refine example snippets of eZ Publish related source code snippets (of any lanugage) at <a href="https:///projects.ez.no/ezsnippets" target="_self">projects.ez.no/ezsnippets</a> </p> <a name="eztoc207600_2" id="eztoc207600_2"></a><h2>External references</h2><a name="eztoc207600_2_1" id="eztoc207600_2_1"></a><h3>PHP</h3> <p> Those seaking eZ Publish <a href="/wiki/en/ez/api_code_samples" target="_self">API code samples</a> in PHP would be wise to also study the eZ publish source code and <a href="/wiki/en/ez/solution_creating_ez_publish_doxygen_api_documentation" target="_self">doxygen api documentation</a>. </p> <ul> <li>Forum: <a href="https:///ez.no/community/forum/developer/creating_a_simple_content_object_via_php#msg34983" target="_self">Create a binary file within eZ using PHP</a></li> <li>Forum: <a href="https:///ez.no/community/forum/developer/import_xml_data_topic/%28offset%29/20#msg112986" target="_self">Create a binay image file within eZ using PHP</a></li> <li>Forum: <a href="https:///phpdoc.ez.no/community/forum/developer/how_to_create_folder_in_root_directory#msg24330" target="_self">Create a folder within eZ using PHP</a> </li> <li>eZpedia: <a href="/wiki/en/ez/snippet_ez_cli_data_creation_script_unstable" target="_self">Snippet: eZ cli data creation script (unstable)</a></li> <li>eZpedia: <a href="/wiki/en/ez/snippet_ez_cli_lorem_ipsum_data_creation_script_unstable" target="_self">Snippet: eZ cli lorem ipsum data creation script (unstable)</a></li> </ul> <a name="eztoc207600_3" id="eztoc207600_3"></a><h2>Javascript</h2> <ul> <li>Forum: <a href="https:///ez.no/community/forum/setup_design/howto_click_to_enlarge" target="_self">Javascript click to enlarge image example</a> snippet</li> </ul>