Zikula_Docs
[ class tree: Zikula_Docs ] [ index: Zikula_Docs ] [ all elements ]

Source for file pnuser.php

Documentation is available at pnuser.php

  1. <?php
  2. /**
  3.  * Zikula Application Framework
  4.  *
  5.  * @link http://www.zikula.org
  6.  * @version $Id: Loader.class.php 22543 2007-07-31 12:50:09Z rgasch $
  7.  * @license GNU/GPL - http://www.gnu.org/copyleft/gpl.html
  8.  * @author Simon Birtwistle simon@itbegins.co.uk
  9.  * @package Zikula_Docs
  10.  * @subpackage Tour
  11.  */
  12.  
  13. /**
  14.  * Main user function, simply returnt he tour index page.
  15.  * @author Simon Birtwistle
  16.  * @return string HTML string
  17.  */
  18. function Tour_user_main({
  19.     return Tour_user_display();
  20. }
  21.  
  22. /**
  23.  * Display a tour page
  24.  * @author Simon Birtwistle
  25.  * @return string HTML string
  26.  */
  27. function Tour_user_display({
  28.     $page FormUtil::getPassedValue('page''home''GET');
  29.     
  30.     if ($page == 'extensions'{
  31.         $content pnModFunc('Tour''user''extensions');
  32.     else {
  33.         $render pnRender::getInstance('Tour');
  34.         $lang pnUserGetLang();
  35.         if ($render->template_exists($lang.'/tour_user_display_'.$page.'.htm')) {
  36.             $content $render->fetch($lang.'/tour_user_display_'.$page.'.htm');
  37.         else {
  38.             $content $render->fetch('tour_user_display_'.$page.'.htm');
  39.         }
  40.     }
  41.     
  42.     return $content;
  43. }
  44.  
  45. /**
  46.  * Cycle through all installed modules looking for available module tours
  47.  * @author Simon Birtwistle
  48.  * @return string HTML string
  49.  */
  50. function Tour_user_extensions({
  51.     $modules pnModGetAllMods();
  52.     $modpages array();
  53.     foreach ($modules as $mod{
  54.         if (file_exists('modules/'.$mod['directory'].'/pndocs/tour_page1.htm')) {
  55.             $modpages[$mod['name'];
  56.         }
  57.     }
  58.     $themes pnThemeGetAllThemes();
  59.     $themepages array();
  60.     foreach ($themes as $theme{
  61.         if (file_exists('themes/'.$theme['directory'].'/pndocs/tour_page1.htm')) {
  62.             $themepages[$theme['name'];
  63.         }
  64.     }
  65.     
  66.     $render pnRender::getInstance('Tour');
  67.     $render->assign('modpages'$modpages);
  68.     $render->assign('themepages'$themepages);
  69.     $lang pnUserGetLang();
  70.     if ($render->template_exists($lang.'/tour_user_extensions.htm')) {
  71.         $content $render->fetch($lang.'/tour_user_extensions.htm');
  72.     else {
  73.         $content $render->fetch('tour_user_extensions.htm');
  74.     }
  75.  
  76.     return $content;
  77. }
  78.  
  79. /**
  80.  * Display a tour page from an installed extension, or the distribution's tour page
  81.  * @author Simon Birtwistle
  82.  * @return string HTML string
  83.  */
  84. function Tour_user_exttour({
  85.     $page FormUtil::getPassedValue('page''1''GET');
  86.     $ext FormUtil::getPassedValue('ext''''GET');
  87.     $exttype FormUtil::getPassedValue('exttype''module''GET');
  88.  
  89.     switch ($exttype{
  90.         case 'distro':
  91.             $directory 'docs/distribution';
  92.             break;
  93.         case 'module':
  94.             $id pnModGetIDFromName($ext);
  95.             if (!$id{
  96.                 LogUtil::registerError('Unknown module '.$ext.' in Tour_user_exttour.');
  97.                 pnRedirect(pnModURL('Tour''user''main'));
  98.             }
  99.             $info pnModGetInfo($id);
  100.             $directory 'modules/'.$info['directory'].'/pndocs';
  101.             break;
  102.         case 'theme':
  103.             $id pnThemeGetIDFromName($ext);
  104.             if (!$id{
  105.                 LogUtil::registerError('Unknown theme '.$ext.' in Tour_user_exttour.');
  106.                 pnRedirect(pnModURL('Tour''user''main'));
  107.             }
  108.             $info pnThemeGetInfo($id);
  109.             $directory $info['directory'].'/pndocs';
  110.             break;
  111.     }
  112.     
  113.     $lang pnUserGetLang();
  114.     $files array($directory.'/'.$lang.'/tour_page'.$page.'.htm'$directory.'/tour_page'.$page.'.htm');
  115.     
  116.     $exists false;
  117.     foreach ($files as $file{
  118.         $file DataUtil::formatForOS($file);
  119.         $file getcwd().'/'.$file;
  120.         if (file_exists($file)) {
  121.             $exists true;
  122.             break;
  123.         }
  124.     }
  125.     
  126.     if (!$exists{
  127.         LogUtil::registerError('Tour file does not exist!');
  128.         return pnRedirect(pnModURL('Tour''user''extensions'));
  129.     }
  130.     
  131.     $render pnRender::getInstance('Tour');
  132.     return $render->fetch('tour_user_menu.htm').$render->fetch('file://'.$file);
  133. }

Documentation generated on Fri, 18 Jul 2008 21:54:52 +0200 by phpDocumentor 1.4.1