linea21-modules
[ class tree: linea21-modules ] [ index: linea21-modules ] [ all elements ]

Source for file display.php

Documentation is available at display.php

  1. <?php
  2. /**
  3.  * @package linea21.modules
  4.  * @subpackage project
  5.  * @author linea21 <info@linea21.com>
  6.  * @version $id SVN
  7.  * @access public
  8.  * @license http://opensource.org/licenses/gpl-3.0.html
  9.  */
  10.  
  11. include_once(themePath('../project/' SQL '.inc.php'));
  12.  
  13. /**
  14.  * DisplayListProject()
  15.  * Affichage de la liste des projets publics
  16.  *
  17.  * @param string $statut 
  18.  * @param integer $filter 
  19.  * @param string $id_filter 
  20.  * @param integer $debut 
  21.  * @return string $content
  22.  */
  23. if(!function_exists('DisplayListProject')) {
  24.  
  25.   function DisplayListProject($statut$filter$id_filter$debut)
  26.   {
  27.     if ($statut == 'public'{
  28.       $pas 100;
  29.       $suffix '';
  30.     else $pas SELECT_LIMIT;
  31.     if ($statut == 'archives_p'$suffix ' "'.strtolower(_t('statut','PA')).'"';
  32.     $data $GLOBALS['sql_object']->DBSelect(SQL_getProjectsList($debut$pas$statut$filter$id_filter));
  33.     $datacount $GLOBALS['sql_object']->DBSelect(SQL_getCountProjectsList($statut$filter$id_filter));
  34.     $bdd_nb_com $datacount[0]['num_rows'];
  35.     $bdd_nb_com_display '<p>' $bdd_nb_com ' ' _t('project','name'$suffix '</p>' END_LINE;
  36.     $content '<h1>' _t('project','list''</h1>' END_LINE;
  37.     if ($data != 0{
  38.       // echo $bdd_nb_com_display;    // affichage du nombre d'enregistrements
  39.       $current_link array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']);
  40.       Display_linkin_page($current_link$bdd_nb_com$debut$pas);
  41.       for($i 0$i count($data)$i++{
  42.         $link_detail array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'id' => $data[$i]['project_id']'name' => $data[$i]['project_name']);
  43.         $link_scale array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'filter' => $GLOBALS['filters'][U_L]['scale']['linkvalue']'id' => $data[$i]['project_scale_id']'name' => $data[$i]['scale_denomination']);
  44.         $link_priority array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'filter' => $GLOBALS['filters'][U_L]['priority']['linkvalue']'id' => $data[$i]['priority_id''name' => $data[$i]['priority_name']);
  45.         $link_user array('rub' => $GLOBALS['links'][U_L]['user-profile']['linkvalue']'id' => $data[$i]['project_posted_by']'name' => $data[$i]['user_login']);
  46.         $project_name formatText($data[$i]['complete_project_name']'2HTML');
  47.         $project_description formatText($data[$i]['project_description']'2HTML');
  48.         $scale_denomination formatText($data[$i]['scale_denomination']'2HTML');
  49.         $project_posted_on formatText($data[$i]['project_published_date_display']'2HTML');
  50.         $project_posted_by formatText($data[$i]['user_login']'2HTML');
  51.         $project_priority formatText($data[$i]['priority_name']'2HTML');
  52.         $project_theme_id $data[$i]['project_theme_id'];
  53.         if($project_theme_id != 0{
  54.           $project_theme formatText($data[$i]['sdtheme_name']'2HTML');
  55.           $link_theme array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'filter' => $GLOBALS['filters'][U_L]['theme']['linkvalue']'id' => $data[$i]['theme_sd_theme']'name' => $project_theme);
  56.         }
  57.  
  58.         $content .= '<h2>' END_LINE;
  59.         $content .= '<a href="' HrefMaker($link_detail'" title="' formatText($project_name'2ATT''">' $project_name '</a>' END_LINE;
  60.         $content .= '</h2>' END_LINE;
  61.         $content .= '<p class="published_by">' END_LINE;
  62.         $content .= _t('statut','published_on'' ' $project_posted_on ' ';
  63.         $content .= _t('divers','by').' <a href="' HrefMaker($link_user'" title="' $GLOBALS['links'][U_L]['user-profile']['desc'' (' $project_posted_by ')">' $project_posted_by '</a>';
  64.         $content .= '</p>' END_LINE;
  65.          
  66.         $content .= '<div class="chapo">' $project_description '</div>' END_LINE;
  67.         $content .= '<a class="readmore" href="'.HrefMaker($link_detail).'">'._t('btn''read_more').'</a>';
  68.         $content .= '<p class="filter_info">';
  69.         $content .= _t('project','priority'' : ';
  70.         $content .= ' <a href="' HrefMaker($link_priority'" title="' $GLOBALS['filters'][U_L]['priority']['desc'' : ' formatText($project_priority'2ATT''" class="filter_info_priority">' $project_priority '</a> ' END_LINE;
  71.         $content .= _t('divers','scale'' : ';
  72.         $content .= ' <a href="' HrefMaker($link_scale'" title="' $GLOBALS['filters'][U_L]['scale']['desc'' : ' formatText($scale_denomination'2ATT''" class="filter_info_scale">' $scale_denomination '</a>' END_LINE;
  73.         if($project_theme_id != 0{
  74.           $content .= ' ' _t('divers','themeref'' : ';
  75.           $content .= '<a href="' HrefMaker($link_theme'" title="' $GLOBALS['filters'][U_L]['theme']['desc'' : ' formatText($project_theme'2ATT''" class="filter_info_scale">' $project_theme '</a>' END_LINE;
  76.         }
  77.         $content .= '</p>'.END_LINE;
  78.         if($i<count($data)-1$content .= '<hr />' END_LINE;
  79.       }
  80.     else {
  81.       $content .= '<p class="info">' _t('divers','nodata''</p>';
  82.     }
  83.  
  84.     echo $content;
  85.   }
  86. }
  87.  
  88. /**
  89.  * DisplayOneProject()
  90.  * Affichage d'un projet en détail
  91.  *
  92.  * @param integer $project_id 
  93.  * @return string $stat status name
  94.  */
  95. if(!function_exists('DisplayOneProject')) {
  96.  
  97.   function DisplayOneProject($project_id)
  98.   {
  99.     $data $GLOBALS['sql_object']->DBSelect(SQL_getoneCompleteProject($project_id));
  100.     $content '';
  101.     if (count($data!= 1exit;
  102.     else {
  103.       $link_scale array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'filter' => $GLOBALS['filters'][U_L]['scale']['linkvalue']'id' => $data[0]['project_scale_id']'name' => $data[0]['scale_denomination']);
  104.       $link_priority array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'filter' => $GLOBALS['filters'][U_L]['priority']['linkvalue']'id' => $data[0]['project_priority_id']'name' => $data[0]['project_priority']);
  105.       $link_user array('rub' => $GLOBALS['links'][U_L]['user-profile']['linkvalue']'id' => $data[0]['project_posted_by']'name' => $data[0]['user_login']);
  106.       $link_parent array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'id' => $data[0]['project_parent_id']'name' => $data[0]['parent_name']);
  107.       $link_self array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'id' => $project_id);
  108.       $project_name formatText($data[0]['project_name']'2HTML');
  109.       $project_description linkin_content(formatText($data[0]['project_description']'2HTML'));
  110.       $project_body linkin_content(formatText($data[0]['project_body']'2HTML'));
  111.       $project_parent formatText($data[0]['parent_name']'2HTML');
  112.       $project_scale formatText($data[0]['scale_denomination']'2HTML');
  113.       $project_priority formatText($data[0]['project_priority']'2HTML');
  114.       $project_begin_date formatText(empty_nc($data[0]['project_begin_date_display'])'2HTML');
  115.       $project_estimated_date formatText(empty_nc($data[0]['project_estimated_date_display'])'2HTML');
  116.       $project_end_date formatText(empty_nc($data[0]['project_end_date_display'])'2HTML');
  117.       $project_progression $data[0]['project_completed'];
  118.       $workshop_id formatText(empty_nc($data[0]['project_workshop_id'])'2HTML');
  119.       $workshop_name formatText(empty_nc($data[0]['workshop_denomination'])'2HTML');
  120.       $scale_id $data[0]['project_scale_id'];
  121.       $project_theme_id $data[0]['project_theme_id'];
  122.       if($project_theme_id != 0{
  123.         $project_theme formatText($data[0]['sdtheme_name']'2HTML');
  124.         $link_theme array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'filter' => $GLOBALS['filters'][U_L]['theme']['linkvalue']'id' => $data[0]['theme_sd_theme']'name' => $project_theme);
  125.       }
  126.  
  127.       $schedule_table getScheduleTable($data[0]['project_begin_date_display']$data[0]['project_estimated_date_display']$data[0]['project_end_date_display']);
  128.  
  129.       $project_posted_on formatText($data[0]['project_published_date_display']'2HTML');
  130.       $project_modify_on formatText($data[0]['project_last_modify_display']'2HTML');
  131.       $project_posted_by formatText($data[0]['user_login']'2HTML');
  132.       $project_status $data[0]['project_statut'];
  133.  
  134.       if(commentEnabled('project')) {
  135.         postCommentAction(array('module'=> ActiveItemKey($GLOBALS['activeitem'])'module_id'=> $project_id));
  136.         $content .= '<div id="anchor-comments">'.END_LINE;
  137.         $content .= getCommentsAnchor(array('module'=> ActiveItemKey($GLOBALS['activeitem'])'module_id'=> $project_id));
  138.         if($project_status == 'P'$content .= getPostCommentAnchor(array('module'=> ActiveItemKey($GLOBALS['activeitem'])'module_id'=> $project_id));
  139.         $content .= '</div>'.END_LINE;
  140.       }
  141.       $content .= '<h1>' $project_name '</h1>' END_LINE;
  142.       $content .= '<p class="published_by">' END_LINE;
  143.       $content .= _t('statut','published_on'' ' $project_posted_on ' ';
  144.       $content .= _t('divers','by').' <a href="' HrefMaker($link_user'" title="' $GLOBALS['links'][U_L]['user-profile']['desc'' (' $project_posted_by ')">' $project_posted_by '</a>';
  145.       if ($project_status == 'PA'{
  146.         $content .= ' (' _t('statut','archived_on'' ' $project_modify_on ')';
  147.       }
  148.       $content .= formatted_permalink($link_self' - ');
  149.       $content .= '</p>' END_LINE;
  150.       if($data[0]['project_parent_id'!= 0{
  151.         $content .= '<div id="parent_project">' END_LINE;
  152.         $content .= _t('project','parent'' : ';
  153.         $content .= '<a href="' HrefMaker($link_parent'" title="' _t('project','parent'' : ' formatText($project_parent'2ATT''" class="filter_info_parent">' $project_parent '</a> ';
  154.         $content .= '</div>' END_LINE;
  155.       }
  156.       $content .= '<div class="chapo">' $project_description '</div>' END_LINE;
  157.       
  158.       $content .= '<div class="schedule">' $schedule_table '</div>' END_LINE;
  159.       $content .= '<div class="progression">'_t('project','progression')' : ' .getProgressbar($project_progression100'%')'</div>' END_LINE;
  160.       
  161.       $content .= '<div class="body">' $project_body '</div>' END_LINE;
  162.       $content .= getProjectChildren($project_id);
  163.       $content .= getAssociatedIndicators($project_id$scale_id);
  164.       $content .= getAssociatedWorkshop($workshop_id$workshop_name);
  165.       $content .= '<p class="filter_info">' END_LINE;
  166.       $content .= _t('project','priority'' : ';
  167.       $content .= '<a href="' HrefMaker($link_priority'" title="' $GLOBALS['filters'][U_L]['priority']['desc'' : ' formatText($project_priority'2ATT''" class="filter_info_priority">' $project_priority '</a> ' END_LINE;
  168.       $content .= ' ' _t('divers','scale'' : ';
  169.       $content .= '<a href="' HrefMaker($link_scale'" title="' $GLOBALS['filters'][U_L]['scale']['desc'' : ' formatText($project_scale'2ATT''" class="filter_info_scale">' $project_scale '</a>' END_LINE;
  170.       if($project_theme_id != 0{
  171.         $content .= ' ' _t('divers','themeref'' : ';
  172.         $content .= '<a href="' HrefMaker($link_theme'" title="' $GLOBALS['filters'][U_L]['theme']['desc'' : ' formatText($project_theme'2ATT''" class="filter_info_scale">' $project_theme '</a>' END_LINE;
  173.       }
  174.       $content .= '</p>' END_LINE;
  175.     }
  176.     echo $content;
  177.     return GetStatusName($project_status);
  178.   }
  179. }
  180.  
  181. /**
  182.  * GetProjectChildren()
  183.  *
  184.  * @param  $id 
  185.  * @return string 
  186.  */
  187. if(!function_exists('getProjectChildren')) {
  188.  
  189.   function getProjectChildren($id)
  190.   {
  191.     $data $GLOBALS['sql_object']->DBSelect(SQL_getProjectChildren($id));
  192.  
  193.     $content '';
  194.     if (count($data!= && $data[0]!=0{
  195.  
  196.       $content .= '<div id="project_children">'.END_LINE;
  197.       $content .= '<p>'._t('project','sub-projects').' : </p><ul>'.END_LINE;
  198.       for($i 0$i count($data)$i++{
  199.         $link array('rub' => $GLOBALS['links'][U_L]['project']['linkvalue']'id' => $data[$i]['project_id']'name' => $data[$i]['project_name']);
  200.         $name formatText($data[$i]['project_name']'2HTML');
  201.  
  202.         $content .= '<li><a href="' HrefMaker($link'" title="' _t('project','parent'' : ' formatText($name'2ATT''" class="filter_info_parent">' $name '</a></li>' .END_LINE;
  203.       }
  204.       $content .= '</ul></div>'.END_LINE;
  205.     }
  206.  
  207.     return $content;
  208.   }
  209. }
  210.  
  211. /**
  212.  * GetStatusName()
  213.  *
  214.  * @param  $status 
  215.  * @return $stat Status name
  216.  */
  217. if(!function_exists('GetStatusName')) {
  218.  
  219.   function GetStatusName($status)
  220.   {
  221.     switch ($status{
  222.       case 'P':
  223.         $stat 'public';
  224.         break;
  225.       case 'PA':
  226.         $stat 'archives_p';
  227.         break;
  228.       case 'AA':
  229.         $stat 'archives_a';
  230.         break;
  231.       default:
  232.         $stat 'public';
  233.     }
  234.     return $stat;
  235.   }
  236. }
  237.  
  238. /**
  239.  * getScheduleTable()
  240.  *
  241.  * @param string $s_date 
  242.  * @param string $es_date 
  243.  * @param string $e_date 
  244.  * @return string $content
  245.  */
  246. if(!function_exists('getScheduleTable')) {
  247.  
  248.   function getScheduleTable($s_date$es_date$e_date{
  249.  
  250.     $es_date_class 'nothing';
  251.     $e_date_class 'nothing';
  252.  
  253.     if(!isNullDate($es_date)) {
  254.       if(!isNullDate($e_date)) $es_date_class date_compare($e_date$es_date'>''warn' 'good';
  255.       else $es_date_class date_compare(date("Y-m-d")$es_date'>''bad' 'good';
  256.     }
  257.     if(!isNullDate($e_date)) {
  258.       if(!isNullDate($es_date)) $e_date_class date_compare($e_date$es_date'>''bad' 'good';
  259.       else $e_date_class 'good';
  260.     else {
  261.       if(!isNullDate($es_date)) {
  262.         $e_date_class date_compare(date("Y-m-d")$es_date'>''warn' 'nothing';
  263.       }
  264.     }
  265.  
  266.     $content  '<table class="project" summary="">'.END_LINE;
  267.     $content .= '<thead>'.END_LINE;
  268.     $content .= '<tr>'.END_LINE;
  269.     $content .= '<th>'._t('project','begin_date').'</th>'.END_LINE;
  270.     $content .= '<th>'._t('project','estimated_date').'</th>'.END_LINE;
  271.     $content .= '<th>'._t('project','end_date').'</th>'.END_LINE;
  272.     $content .= '</tr>'.END_LINE;
  273.     $content .= '</thead>'.END_LINE;
  274.     $content .= '<tbody>'.END_LINE;
  275.     $content .= '<tr>'.END_LINE;
  276.     $content .= '<td>'.formatText(empty_nc($s_date)).'</td>'.END_LINE;
  277.     $content .= '<td class="'.$es_date_class.'">'.formatText(empty_nc($es_date)).'</td>'.END_LINE;
  278.     $content .= '<td class="'.$e_date_class.'">'.formatText(empty_nc($e_date)).'</td>'.END_LINE;
  279.     $content .= '</tr>'.END_LINE;
  280.     $content .= '</tbody>'.END_LINE;
  281.     $content .= '</table>'.END_LINE;
  282.     return $content;
  283.   }
  284. }
  285.  
  286. /**
  287.  * getAssociatedWorkshop()
  288.  *
  289.  * @param  $id 
  290.  * @return string 
  291.  */
  292. if(!function_exists('getAssociatedWorkshop')) {
  293.  
  294.   function getAssociatedWorkshop($wid$wname)
  295.   {
  296.     $content '';
  297.     if($wid != 0{
  298.       $link array('rub' => $GLOBALS['links'][U_L]['workgroup']['linkvalue']'id' => $wid'name' => $wname);
  299.       $content .= '<div id="project_workshop">'.END_LINE;
  300.       $content .= '<p>'.ucfirst(_t('project','workshop')).' : <a href="' HrefMaker($link'" title="' _t('project','workshop'' : ' formatText($wname'2ATT''">' $wname '</a></p>' .END_LINE;
  301.       $content .= '</div>'.END_LINE;
  302.     }
  303.  
  304.     return $content;
  305.   }
  306. }
  307.  
  308. /**
  309.  * getAssociatedWorkshop()
  310.  *
  311.  * @param  $id 
  312.  * @return string 
  313.  */
  314. if(!function_exists('getAssociatedIndicators')) {
  315.  
  316.   function getAssociatedIndicators($id$scale_id)
  317.   {
  318.     $data $GLOBALS['sql_object']->DBSelect(SQL_getProjectSdi($id));
  319.  
  320.     $content '';
  321.     if (count($data!= && $data[0]!=0{
  322.  
  323.       $content .= '<div id="project_indicators">'.END_LINE;
  324.       $content .= '<p>'.ucfirst(_t('project','sdi')).' : </p>'.END_LINE;
  325.       $content .= '<ul>'.END_LINE;
  326.       for($i 0$i count($data)$i++{
  327.         $link array('rub' => $GLOBALS['links'][U_L]['dashboard']['linkvalue']'id' => $data[$i]['sdii_id']'parentid' => $scale_id'name' => $data[$i]['sdii_name']);
  328.         $name formatText($data[$i]['sdii_name']'2HTML');
  329.  
  330.         $content .= '<li><a href="' HrefMaker($link'" title="' _t('project','sdi'' : ' formatText($name'2ATT''">' $name '</a></li>' .END_LINE;
  331.       }
  332.       $content .= '</ul></div>'.END_LINE;
  333.     }
  334.  
  335.     return $content;
  336.   }
  337. }
  338.  
  339.  
  340. ?>

Documentation generated on Thu, 03 May 2012 15:04:00 +0200 by phpDocumentor 1.4.1