Advertisement
Guest User

Untitled

a guest
Jan 24th, 2017
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 22.43 KB | None | 0 0
  1. <?php
  2. // Этапы олимпиады
  3. //error_reporting(E_ALL);
  4.  
  5. include_once('olimp_common.inc');
  6.  
  7. function build_page()
  8. {   Global $tpl,$refpar,$formrefpar,$sitemap,$uid,$role,$user,$pagemenu;
  9.    
  10. $user_right=check_user_right(3);
  11.  
  12. if (!$user_right['Access'])
  13. {   return $tpl['noaccess'];
  14. }
  15.  
  16. if (isset($_REQUEST['cmd']))
  17. {   $cmd=$_REQUEST['cmd'];
  18. }
  19. else
  20. {   $cmd='';
  21. }
  22.  
  23. if (isset($_REQUEST['btnList']))
  24. {   $cmd='List';
  25. }
  26.  
  27. // # Страница
  28. if (isset($_REQUEST['page']))
  29. {   $page=$_REQUEST['page'];
  30.     $_SESSION['page']=$page;
  31. }
  32. elseif (isset($_SESSION['page']))
  33. {   $page=$_SESSION['page'];
  34. }
  35. else
  36. {   $page=1;
  37. }
  38.  
  39.  
  40. // # Участников на странице
  41. if (isset($_POST['pppage']))
  42. {   $page=1;
  43.     $_SESSION['page']=$page;
  44.     $pppage=$_POST['pppage'];
  45.     $_SESSION['pppage']=$pppage;
  46. }
  47. elseif (isset($_SESSION['pppage']))
  48. {   $pppage=$_SESSION['pppage'];
  49. }
  50. else
  51. {   $pppage=25;
  52.     $_SESSION['pppage']=$pppage;
  53. }
  54.  
  55. // 50
  56. // Номер этапа
  57. if (isset($_REQUEST['stage']))
  58. {   $stage=$_REQUEST['stage'];
  59.     $_SESSION['stage']=$stage;
  60.     $page=1;
  61.     $_SESSION['page']=$page;
  62. }
  63. elseif (isset($_SESSION['stage']))
  64. {   $stage=$_SESSION['stage'];
  65. }
  66. else
  67. {   $stage=0;
  68.     $page=1;
  69.     $_SESSION['page']=$page;
  70. }
  71.  
  72. // Способ группировки/сортировки
  73. if (isset($_POST['sort_group']))
  74. {   $sort_group=$_POST['sort_group'];
  75.     $_SESSION['sort_group']=$sort_group;
  76.     $page=1;
  77.     $_SESSION['page']=$page;
  78. }
  79. elseif (isset($_SESSION['sort_group']))
  80. {   $sort_group=$_SESSION['sort_group'];
  81. }
  82. else
  83. {   $sort_group=0;
  84. }
  85.  
  86. // Фильтр по состоянию
  87. if (isset($_POST['filter_presence']))
  88. {   $filter_presence=$_POST['filter_presence']+0;
  89. if (empty($filter_presence)) $filter_presence=-1;
  90.     $_SESSION['filter_presence']=$filter_presence;
  91. }
  92. elseif (isset($_SESSION['filter_presence']))
  93. {   $filter_presence=$_SESSION['filter_presence'];
  94. }
  95. else
  96. {   $filter_presence=-1;
  97. }
  98.  
  99. // Фильтр по дате
  100. if (isset($_POST['filter_date']))
  101. {   $filter_date=trim($_POST['filter_date']);
  102. if (empty($filter_date)) $filter_date=-1;
  103.     $_SESSION['filter_date']=$filter_date;
  104. }
  105. elseif (isset($_SESSION['filter_date']))
  106. {   $filter_date=$_SESSION['filter_date'];
  107. }
  108. else
  109. {   $filter_date=-1;
  110. }
  111.  
  112. // Фильтр по площадкам
  113. if (isset($_POST['filter_place']))
  114. {   $filter_place=$_POST['filter_place']+0;
  115. if (empty($filter_place)) $filter_place=-1;
  116.     $_SESSION['filter_place']=$filter_place;
  117. }
  118. elseif (isset($_SESSION['filter_place']))
  119. {   $filter_place=$_SESSION['filter_place'];
  120. }
  121. else
  122. {   $filter_place=-1;
  123. }
  124.  
  125. // Фильтр по предметам
  126. if (isset($_POST['filter_exam']))
  127. {   $filter_exam=$_POST['filter_exam']+0;
  128. if (empty($filter_exam)) $filter_exam=-1;
  129.     $_SESSION['filter_exam']=$filter_exam;
  130. }
  131. elseif (isset($_SESSION['filter_exam']))
  132. {   $filter_exam=$_SESSION['filter_exam'];
  133. }
  134. else
  135. {   $filter_exam=-1;
  136. }
  137.  
  138. // Фильтр по типам этапов
  139. if (isset($_POST['filter_stage']))
  140. {   $filter_stage=$_POST['filter_stage']+0;
  141.     $_SESSION['filter_stage']=$filter_stage;
  142. }
  143. elseif (isset($_SESSION['filter_stage']))
  144. {   $filter_stage=$_SESSION['filter_stage'];
  145. }
  146. else
  147. {   $filter_stage=-1;
  148. }
  149.  
  150. // Фильтр по формам этапов
  151. if (isset($_POST['filter_form']))
  152. {   $filter_form=$_POST['filter_form']+0;
  153. if (empty($filter_form)) $filter_form=-1;
  154.     $_SESSION['filter_form']=$filter_form;
  155. }
  156. elseif (isset($_SESSION['filter_form']))
  157. {   $filter_form=$_SESSION['filter_form'];
  158. }
  159. else
  160. {   $filter_form=-1;
  161. }
  162.  
  163.  
  164. if (isset($_REQUEST['btnCancel']))
  165. {   $cmd='';
  166.     $stage=0;
  167.     $_SESSION['stage']=$stage;
  168. }
  169. if (isset($_REQUEST['btnFilter']))
  170. {   $cmd='';
  171.     $stage=0;
  172.     $_SESSION['stage']=$stage;
  173. }
  174.  
  175. if (empty($cmd)&&($stage>0)) $cmd='EditResults';
  176.  
  177. if ($cmd=='Return')
  178. {   $cmd='';
  179.     $page=0;
  180.     $stage=0;
  181. }
  182.  
  183. // Выполнение команд
  184.  
  185.  
  186. switch ($cmd)
  187. {
  188. case 'UpdateResults':
  189.     {  
  190.         $cmd='';
  191.         break;
  192.     }
  193. }
  194.  
  195.  
  196. // Формирование кода страницы
  197.  
  198. if (($filter_presence==3) || ($filter_presence==4)) $filter_form=2;
  199.        
  200. $where='';
  201. if ($filter_place>0) $where='(pl.id='.$filter_place.')';
  202. if ($filter_exam>0) $where.=($where ? ' AND ' : '').'(e.id='.$filter_exam.')';
  203. if ($filter_form>0) $where.=($where ? ' AND ' : '').'(s.form='.$filter_form.')';
  204. if ($filter_stage>-1) $where.=($where ? ' AND ' : '').'(s.stage='.$filter_stage.')';
  205. if ($filter_date>-1) $where.=($where ? ' AND ' : '').'(s.date_exam BETWEEN
  206. "'.$filter_date.' 00:00" AND "'.$filter_date.' 23:59")';
  207. switch ($filter_presence)
  208. {
  209. case 1: {$where.=($where ? ' AND ' : '').'(a.presence = "Y")'; break;}
  210. case 2: {$where.=($where ? ' AND ' : '').'(a.presence in ("N","D"))'; break;}
  211. case 3: {$where.=($where ? ' AND ' : '').'(a.presence = "L")'; break;}
  212. case 4: {$where.=($where ? ' AND ' : '').'(a.presence = "R")'; break;}
  213. }
  214.  
  215. if ($where) $where=' WHERE '.$where;
  216.  
  217.  
  218. switch ($cmd)
  219. {
  220. case 'List':
  221. {   $res=mysql_query('select e.name as exam,p.school_class as school_class,pl.name as place,stp.name as stage,f.name as form, DATE_FORMAT(s.date_exam,"%d.%m.%Y") as dt, concat_ws(" ",p.surename,p.name,p.patronymic) as fio, DATE_FORMAT(p.birthday, "%d.%m.%Y" ) as bdt,
  222.  
  223. CONCAT_WS(" ",IF(LENGTH(sc.school_type_ex)>0, concat_ws(" ",IFNULL(st.name,""),sc.school_type_ex), IFNULL(st.name,"")) ,sc.name) as school,
  224. CONCAT_WS(" ",sr.socr,sr.name,sa.city,sa.street,sa.house,IF(LENGTH(sa.building)>0,"/",""),sa.building) as sc_addr,
  225.  
  226. CONCAT_WS(" ",pr.socr,pr.name,pa.city,pa.street,pa.house,IF(LENGTH(pa.building)>0,"/",""),pa.building) as p_addr,
  227.  
  228. p.tel as tel, p.email as email, p.id as pid
  229.  
  230. from olimp_stages as s left join olimp_exams as e on (e.id=s.exam) left join olimp_forms as f on (f.id=s.form) left join olimp_places as pl on (pl.id=s.place) left join olimp_actions as a on (a.stage_id=s.id) left join olimp_persons as p on (p.id=a.person_id)
  231.  
  232. left join olimp_schools as sc on (sc.id=p.school)
  233. left join olimp_school_types as st on (st.id=sc.school_type)
  234. left join olimp_address as sa on (sa.id=sc.address)
  235. left join kladr_regions as sr on (sr.id=sa.region)
  236.  
  237. left join olimp_address as pa on (pa.id=p.addr_reg)
  238. left join kladr_regions as pr on (pr.id=pa.region)
  239.  
  240. left join olimp_stage_types as stp on (stp.id = s.stage)
  241.  
  242. '.$where.' order by stage,dt,place,exam,school_class,fio');
  243.         switch ($_REQUEST['list_format']+0)
  244.         {
  245.         case 2:     {   $format='CSV'; break;}
  246.         default:    {   $format='HTML'; }
  247.         }
  248.        
  249.  
  250.         $list_tpl='list'.($_REQUEST['use_school'] ? '_school' : '').($_REQUEST['use_addr'] ? '_addr' : '');
  251.         $line_tpl='list'.($_REQUEST['use_school'] ? '_school' : '').($_REQUEST['use_addr'] ? '_addr' : '').'_line';
  252.         $list_dt='';
  253.         $list_place='';
  254.         $list_exam='';
  255.         $list_class='';
  256.         $list='';
  257.         $lines='';
  258.         while ($row=mysql_fetch_assoc($res))
  259.         {   if ($row['dt']!=$list_dt)
  260.             {   $list_dt=$row['dt'];
  261.                 if ($lines) {
  262.                                     $list.=str_replace('%list%',$lines,$tpl['stages'][$format][$list_tpl]);
  263.                                     $lines='';  
  264.                                     $num=1;
  265.                                   }
  266.                 $list.=str_replace(array('%list_dt%','%form%','%stage%'),
  267.                     array($list_dt,$row['form'],$row['stage']),
  268.                     $tpl['stages'][$format]['list_dt_line']);
  269.                 $list_place='';
  270.                 $list_exam='';
  271.                 $list_class='';
  272.                
  273.             }
  274.             if ($row['place']!=$list_place)
  275.             {   $list_place=$row['place'];
  276.                 if ($lines) { $list.=str_replace('%list%',$lines,$tpl['stages'][$format][$list_tpl]); $lines=''; }
  277.                 $lines=''; $num=1;
  278.                 $list.=str_replace(array('%list_dt%','%list_place%','%form%','%stage%'),
  279.                     array($list_dt,$list_place,$row['form'],$row['stage']),
  280.                     $tpl['stages'][$format]['list_place_line']);
  281.                 $list_exam='';
  282.                 $list_class='';
  283.             }
  284.             if ($row['exam']!=$list_exam)
  285.             {   $list_exam=$row['exam'];
  286.                 if ($lines) { $list.=str_replace('%list%',$lines,$tpl['stages'][$format][$list_tpl]); $lines=''; }
  287.                 $lines=''; $num=1;
  288.                 $list.=str_replace(array('%list_dt%','%list_place%','%list_exam%','%form%','%stage%'),
  289.                     array($list_dt,$list_place,$list_exam,$row['form'],$row['stage']),
  290.                     $tpl['stages'][$format]['list_exam_line']);
  291.                 $list_class='';
  292.             }
  293.             if ($row['school_class']!=$list_class)
  294.             {   $list_class=$row['school_class'];
  295.                 if ($lines) { $list.=str_replace('%list%',$lines,$tpl['stages'][$format][$list_tpl]); $lines=''; }
  296.                 $lines=''; $num=1;
  297.                 $list.=str_replace(array('%list_dt%','%list_place%','%list_exam%','%list_class%','%form%','%stage%'),
  298.                     array($list_dt,$list_place,$list_exam,$list_class,$row['form'],$row['stage']),
  299.                     $tpl['stages'][$format]['list_class_line']);
  300.             }
  301.             if ($_REQUEST['use_tel'])
  302.             {   $row['p_addr'].=($format=='CSV' ? "\n" : '<br>').'тел.'.$row['tel'].($format=='CSV' ? "\n" : '<br>').'email.'.$row['email'];
  303.  
  304.             }
  305.             $lines.=str_replace(array('%num%','%class%','%fio%','%birth%','%school%','%sc_addr%','%p_addr%','%pid%'),
  306.                 array($num,$row['class'],$row['fio'],$row['bdt'],$row['school'],$row['sc_addr'],$row['p_addr'],$row['pid']),
  307.                 $tpl['stages'][$format][$line_tpl]);
  308.             $num++;
  309.                
  310.         }
  311.         $list.=str_replace('%list%',$lines,$tpl['stages'][$format][$list_tpl]);
  312.        
  313.         switch ($format)
  314.         {
  315.         case 'CSV':    
  316.         {   header("Content-Type: application/octet-stream");
  317.             header('Content-Disposition: attachment; filename="list.csv"');
  318.             break;
  319.         }
  320.         default:    {   header("Content-Type: text/html"); }
  321.         }
  322.         echo $tpl['stages'][$format]['header'].$list;
  323.        
  324.     die();
  325.     break;
  326. }
  327. default:
  328.     {   // Выбор этапа работы
  329.         $ppp=array(10,25,50,100,250,500,1000);
  330.         $pppages='';
  331.         foreach ($ppp as $p) $pppages.='<option'.($pppage==$p ? ' selected' : '').'>'.$p.'</option>';
  332.         $sgs=array(1=>'Сортировать по алфавиту, группы не учитывать, выводить постранично',2=>'Выводить по группам, внутри групп сортировать по алфавиту',);
  333.         $sort_groups='';
  334.         foreach ($sgs as $sgk=>$sgv) $sort_groups.='<option'.($sort_group==$sgk ? ' selected' : '').'>'.$sgv.'</option>';
  335.  
  336.         $filter_places='<option value=-1 '.($filter_place==-1 ? ' selected' : '').'>Все площадки</option>';
  337.         $res=mysql_query('select id,name from olimp_places order by id');
  338.         while ($row=mysql_fetch_row($res))
  339.         {   $filter_places.='<option value='.$row[0] .' '.($filter_place==$row[0] ? ' selected' : '').'>'.$row[1].'</option>';
  340.         }
  341.        
  342.         $filter_dates='<option value=-1 '.($filter_date==-1 ? ' selected' : '').'>Все даты</option>';
  343.         $res=mysql_query('select DISTINCT DATE_FORMAT(date_exam,"%Y-%m-%d") as d1, DATE_FORMAT(date_exam,"%d.%m.%Y")  from olimp_stages order by date_exam DESC');
  344.         while ($row=mysql_fetch_row($res))
  345.         {   $filter_dates.='<option value="'.$row[0] .'" '.($filter_date==$row[0] ? ' selected' : '').'>'.$row[1].'</option>';
  346.         }
  347.        
  348.         $filter_presences='<option value=-1 '.($filter_presence==-1 ? ' selected' : '').'>Все участники</option>'.
  349.             '<option value=1 '.($filter_presence==1 ? ' selected' : '').'>Явившиеся (приславшие работу)</option>'.'<option value=2 '.($filter_presence==2 ? ' selected' : '').'>Не явившиеся (отказавшиеся)</option>'.'<option value=3 '.($filter_presence==3 ? ' selected' : '').'>Скачавшие вариант</option>'.'<option value=4 '.($filter_presence==4 ? ' selected' : '').'>Не скачавшие вариант</option>';
  350.  
  351.  
  352.         $filter_exams='<option value=-1 '.($filter_exam==-1 ? ' selected' : '').'>Все предметы</option>';
  353.         $res=mysql_query('select id,name from olimp_exams order by id');
  354.         while ($row=mysql_fetch_row($res))
  355.         {   $filter_exams.='<option value='.$row[0] .' '.($filter_exam==$row[0] ? ' selected' : '').'>'.$row[1].'</option>';
  356.            
  357.         }
  358.         $filter_stages='<option value=-1 '.($filter_stage==-1 ? ' selected' : '').'>Все этапы</option>';
  359.         $res=mysql_query('select id,name from olimp_stage_types order by id');
  360.         while ($row=mysql_fetch_row($res))
  361.         {   $filter_stages.='<option value='.$row[0] .' '.($filter_stage==$row[0] ? ' selected' : '').'>'.$row[1].'</option>';
  362.            
  363.         }
  364.         $filter_forms='<option value=-1 '.($filter_form==-1 ? ' selected' : '').'>Все формы</option>';
  365.         $res=mysql_query('select id,name from olimp_forms order by id');
  366.         while ($row=mysql_fetch_row($res))
  367.         {   $filter_forms.='<option value='.$row[0] .' '.($filter_form==$row[0] ? ' selected' : '').'>'.$row[1].'</option>';
  368.            
  369.         }
  370.  
  371.         $stages='';
  372.        
  373.  
  374. $even=0;
  375. $stage_dt='';
  376. $stage_place='';
  377. $stage_exam='';
  378.         $res=mysql_query('select e.name as exam,p.school_class as school_class,pl.name as place,s.stage as stage,f.name as form, DATE_FORMAT(s.date_exam,"%d.%m.%Y") as dt, count(DISTINCT a.person_id) as cnt from olimp_stages as s left join olimp_exams as e on (e.id=s.exam) left join olimp_forms as f on (f.id=s.form) left join olimp_places as pl on (pl.id=s.place) left join olimp_actions as a on (a.stage_id=s.id) left join olimp_persons as p on (p.id=a.person_id) '.$where.' group by stage,dt,place,form,exam,school_class');
  379.  
  380.         while ($row=mysql_fetch_assoc($res))
  381.         {   if (!isset($sta[$row['dt']])) $sta[$row['dt']]['rows']=0;
  382.        
  383.             if (isset($sta[$row['dt']][$row['place']][$row['exam']]))
  384.             {  
  385.                              $sta[$row['dt']][$row['place']][$row['exam']][$row['school_class']]+=$row['cnt'];
  386.             }
  387.             else
  388.             {   $sta[$row['dt']][$row['place']][$row['exam']]=array(7=>0,8=>0,9=>0,10=>0,11=>0);
  389.                 $sta[$row['dt']][$row['place']][$row['exam']][$row['school_class']]=$row['cnt'];
  390.                 $sta[$row['dt']][$row['place']][$row['exam']]['form']=$row['form'];
  391.                 $sta[$row['dt']]['stage']=($row['stage']);
  392.                 $sta[$row['dt']]['rows']+=1;
  393.             }
  394.         }
  395.        
  396.        
  397. function draw_stage_list($sta,$stage)
  398. {   global $tpl;
  399.     $stages='';
  400.     if (!is_array($sta)) return '';
  401.     foreach ($sta as $date=>$v)
  402.     {   if ($v['stage']!=$stage) continue;
  403.         if (!is_array($v)) continue;
  404.         $newdate=true;
  405.         foreach ($v as $place=>$w)
  406.         {   if (!is_array($w)) continue;
  407.             $newplace=true;
  408.             $place_rows=count($w);
  409.             foreach ($w as $exam=>$ww)
  410.             {   $v['rows']*=5;
  411.                                  $place_rows*=5;
  412.                               $stages.=str_replace(
  413.                 array('%dt_rows%','%place_rows%','%exam%','%stage%','%place%','%form%','%dt%','%even%',
  414.                     '%7%','%8%','%9%','%10%','%11%','%SUM%'),
  415.                 array($v['rows'],$place_rows,$exam,$ww['stage'],$place,$ww['form'],$date,
  416.                     $even ? 'even' : 'odd',$ww[7],$ww[8],$ww[9],$ww[10],$ww[11],
  417.                     $ww[7]+$ww[8]+$ww[9]+$ww[10]+$ww[11]),
  418.                 $tpl['stages']['stage_line'.($newdate ? '1' : ($newplace ? '2' : 'N'))]);
  419.                 $newdate=false;
  420.                 $newplace=false;
  421.                 $even=!$even;
  422.             }
  423.         }
  424.     }
  425.     return $stages;
  426. }
  427.  
  428. $s=draw_stage_list($sta,2);
  429. if ($s) $stages.=str_replace('%name%','Заключительный этап',$tpl['stages']['stage_tline']).$s;
  430. $s=draw_stage_list($sta,1);
  431. if ($s) $stages.=str_replace('%name%','Отборочный этап',$tpl['stages']['stage_tline']).$s;
  432. $s=draw_stage_list($sta,0);
  433. if ($s) $stages.=str_replace('%name%','Призеры прошлого года',$tpl['stages']['stage_tline']).$s;
  434. $s=draw_stage_list($sta,3);
  435. if ($s) $stages.=str_replace('%name%','Тренировочный этап',$tpl['stages']['stage_tline']).$s;
  436.  
  437.  
  438.         $body=str_replace(array('%pppages%','%sort_groups%','%stages%','%filter_places%','%filter_exams%','%filter_stages%','%filter_forms%','%filter_presences%','%filter_dates%'),array($pppages,$sort_groups,$stages,$filter_places,$filter_exams,$filter_stages,$filter_forms,$filter_presences,$filter_dates),$tpl['stages']['stages_list']);
  439.     }
  440. }
  441.  
  442.     return str_replace('%error%',$error,$body);
  443. }
  444.  
  445. $tpl['stages']['stages_list']=
  446. '%error%
  447. <style>
  448. table#stages {border-top: 1px solid blue;border-left: 1px solid blue; border-collapse:collapse;}
  449. #stages td {border-bottom: 1px solid blue;border-right: 1px solid blue; padding:4px 8px;}
  450. #stages #ttl td {background: #003366; color:white; font-weight:bold; text-align: center;}
  451. #stages .even td {background: #ccffff; color:#000066;}
  452. #stages .odd td {background: #F0ffff; color:#000066;}
  453. #stages .tline {background: #F0ffff; color:#000066; font-size:larger;}
  454. #stages .sum {font-weight:bold;}
  455. </style>
  456. <form action="?" method=post>
  457.  
  458. <br>
  459. <table cellpadding=2 id="stages">
  460. %stages%
  461. </table>
  462. <br>
  463.  
  464. <table>
  465. <tr>
  466.    <td>Площадка:&nbsp;</td>  
  467.       <td><select name="filter_place" size=0>%filter_places%</select>
  468.   </td>
  469. </tr>
  470. <tr>
  471. <td> Форма:&nbsp;</td>
  472.      <td><select name="filter_form" size=0>%filter_forms%</select></td>
  473.      <td rowspan=3><button type=submit name="btnFilter">
  474. <br>Добавить<br><br></button></td></tr>
  475.  
  476. <tr><td>Предмет:&nbsp;</td>
  477.       <td><select name="filter_exam" size=0>%filter_exams%</select></td>
  478. </tr>
  479. <tr>
  480.    <td> Этап:&nbsp;</td>
  481.   <td><select name="filter_stage" size=0>%filter_stages%</select></td></tr>
  482.  
  483. <tr>
  484. <td> Дата:&nbsp;</td><td>
  485. <input type="date" name="calendar"></td></tr>
  486. </table>
  487. <br>
  488. </form>
  489. <br><br>
  490.  
  491.  
  492. <br><br>
  493. ';
  494.  
  495.  
  496. $tpl['stages']['stage_line1']=
  497. '<tr class=%even%><td rowspan="%dt_rows%">%dt%</td><td rowspan="%place_rows%">%place%</td><td>%exam%</td><td>%form%</td><td>7</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  498. <tr class=%even%><td>%exam%</td><td>%form%</td><td>8</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  499. <tr class=%even%><td>%exam%</td><td>%form%</td><td>9</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  500. <tr class=%even%><td>%exam%</td><td>%form%</td><td>10</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  501. <tr class=%even%><td>%exam%</td><td>%form%</td><td>11</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  502.  
  503. ';
  504. $tpl['stages']['stage_line2']=
  505. '<tr class=%even%><td rowspan="%place_rows%">%place%</td><td>%exam%</td><td>%form%</td><td>7</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  506. <tr class=%even%><td>%exam%</td><td>%form%</td><td>8</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  507. <tr class=%even%><td>%exam%</td><td>%form%</td><td>9</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  508. <tr class=%even%><td>%exam%</td><td>%form%</td><td>10</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  509. <tr class=%even%><td>%exam%</td><td>%form%</td><td>11</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  510. ';
  511. $tpl['stages']['stage_lineN']=
  512. '<tr class=%even%><td>%exam%</td><td>%form%</td><td>7</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  513. <tr class=%even%><td>%exam%</td><td>%form%</td><td>8</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  514. <tr class=%even%><td>%exam%</td><td>%form%</td><td>9</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  515. <tr class=%even%><td>%exam%</td><td>%form%</td><td>10</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  516. <tr class=%even%><td>%exam%</td><td>%form%</td><td>11</td><td>Идет регистрация*</td><td><b>[Изменить]</b></td><td><input type="checkbox"></td></tr>
  517. ';
  518.  
  519.  
  520. $tpl['stages']['stage_tline']='<tr><td colspan=5 class=tline>%name%</td></tr>';
  521.  
  522. $tpl['stages']['HTML']['list_dt_line']='<h1>Потоки %list_dt%</h1>';
  523. $tpl['stages']['CSV']['list_dt_line']="%list_dt%\n";
  524.  
  525. $tpl['stages']['HTML']['list_place_line']='<h1>Площадка %list_place%</h1><h2>%stage% %form% форма %list_dt%</h2>';
  526. $tpl['stages']['CSV']['list_place_line']="\"%list_place%\";\"%stage%\";\"%form%\";%list_dt%\n";
  527.  
  528. $tpl['stages']['HTML']['list_exam_line']='<h1>%list_exam%</h1></h2>';
  529. $tpl['stages']['CSV']['list_exam_line']="\"%list_exam%\"\n";
  530.  
  531. $tpl['stages']['HTML']['list']='<table><tr><td>#</td><td>ФИО</td><td>Д.Р.</td></tr>%list%</table>';
  532. $tpl['stages']['HTML']['list_school']='<table><tr><td>#</td><td>ФИО</td><td>Д.Р.</td><td>Школа</td><td>Адрес школы</td></tr>%list%</table>';
  533. $tpl['stages']['HTML']['list_addr']='<table><tr><td>#</td><td>ФИО</td><td>Д.Р.</td><td>Адрес регистрации</td></tr>%list%</table>';
  534. $tpl['stages']['HTML']['list_school_addr']='<table><tr><td>#</td><td>ФИО</td><td>Д.Р.</td><td>Школа</td><td>Адрес школы</td><td>Адрес регистрации</td></tr>%list%</table>';
  535. $tpl['stages']['CSV']['list']='%list%';
  536. $tpl['stages']['CSV']['list_school']='%list%';
  537. $tpl['stages']['CSV']['list_addr']='%list%';
  538. $tpl['stages']['CSV']['list_school_addr']='%list%';
  539.  
  540. $tpl['stages']['HTML']['list_class_line']='<h1>%list_class% класс</h1></h2>';
  541. $tpl['stages']['CSV']['list_class_line']="\"%list_class% класс\"\n";
  542.  
  543.  
  544. $tpl['stages']['HTML']['list_school_addr_line']='<tr><td>%num%</td><td>%fio%</td><td>%birth%</td><td>%school%</td><td>%sc_addr%</td><td>%p_addr%</td></tr>';
  545. $tpl['stages']['CSV']['list_school_addr_line']="%pid%;\"%fio%\";\"%birth%\";\"%school%\";\"%sc_addr%\";\"%p_addr%\"\n";
  546.  
  547. $tpl['stages']['HTML']['list_school_line']='<tr><td>%num%</td><td>%fio%</td><td>%birth%</td><td>%school%</td><td>%sc_addr%</td></tr>';
  548. $tpl['stages']['CSV']['list_school_line']="%pid%;\"%fio%\";\"%birth%\";\"%school%\";\"%sc_addr%\"\n";
  549.  
  550. $tpl['stages']['HTML']['list_addr_line']='<tr><td>%num%</td><td>%fio%</td><td>%birth%</td><td>%p_addr%</td></tr>';
  551. $tpl['stages']['CSV']['list_addr_line']="%pid%;\"%fio%\";\"%birth%\";\"%p_addr%\"\n";
  552.  
  553. $tpl['stages']['HTML']['list_line']='<tr><td>%num%</td><td>%fio%</td><td>%birth%</td></tr>';
  554. $tpl['stages']['CSV']['list_line']="%pid%;\"%fio%\";\"%birth%\"\n";
  555.  
  556. $tpl['stages']['HTML']['header']='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//RU">
  557. <title>Олимпиада школьников "Надежда энергетики". Списки участников.</title>
  558. <style>
  559. table
  560. {   border-collapse:collapse;
  561.     border-top: 1px solid black;
  562.     border-left: 1px solid black;
  563. }
  564.  
  565. td
  566. {   border-bottom: 1px solid black;
  567.     border-right: 1px solid black;
  568.     padding:4px;
  569. }
  570. </style>
  571.  
  572. ';
  573. $tpl['stages']['CSV']['header']='';
  574.  
  575. $body=build_page();
  576.  
  577. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement