From 10b13e027ca048d6050e47adb7f2a8aefb322bcb Mon Sep 17 00:00:00 2001 From: Dmitry Yu Okunev Date: Fri, 20 Feb 2015 18:33:48 +0300 Subject: [PATCH] Don't remember --- .gitmodules | 3 +++ genpdf/genpdf.php | 635 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- genpdf/lib/3dparty/Inflect | 1 + mephimemo/mephimemo.cls | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++--------- mephimemo/template/request/php.tex | 30 ++++++++++++++++++++++++++++++ mephimemo/template/request/temporary-acting.tex | 1 + mephimemo/template/request/vacation.tex | 18 +++++++++++++++--- mephimemo/template/request/video.log | 1040 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ mephimemo/template/request/video.tex | 28 ++++++++++++++++++++++++++++ 9 files changed, 1616 insertions(+), 199 deletions(-) create mode 100644 .gitmodules create mode 160000 genpdf/lib/3dparty/Inflect create mode 100644 mephimemo/template/request/php.tex create mode 100644 mephimemo/template/request/temporary-acting.tex create mode 100644 mephimemo/template/request/video.log create mode 100644 mephimemo/template/request/video.tex diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..455c752 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "genpdf/lib/3dparty/Inflect"] + path = genpdf/lib/3dparty/Inflect + url = https://github.com/mephi-ut/Inflect diff --git a/genpdf/genpdf.php b/genpdf/genpdf.php index 0afb03b..de9008f 100644 --- a/genpdf/genpdf.php +++ b/genpdf/genpdf.php @@ -5,8 +5,11 @@ require_once "lib/3rdparty/php-redmine-api/lib/Redmine/Api/SimpleXMLElement.php" require_once "lib/3rdparty/php-redmine-api/lib/Redmine/Api/User.php"; require_once "lib/3rdparty/php-redmine-api/lib/Redmine/Api/Issue.php"; require_once "lib/3rdparty/php-redmine-api/lib/Redmine/Api/Attachment.php"; +require_once "lib/3rdparty/php-redmine-api/lib/Redmine/Api/Membership.php"; require_once "lib/3rdparty/php-redmine-api/lib/Redmine/Client.php"; +require_once "lib/3rdparty/Inflect/Inflect.php"; + require_once "config.php"; /* @@ -83,6 +86,23 @@ Array ) */ +$dont_inflect_patterns = array( + '/^нач./', + '/^зам./', + '/^заф./', + '/^нач./', + '/^./', + '/^спец./', +); + +$inflect_cut_patterns = array( + '/^(.*)[иы]й[ ]/', +); + +$inflect_ignore_ending_patterns = array( + '[ ].*', +); + function _tempdir_cleanup($dir) { # system('rm -rf "'.$dir.'"'); } @@ -122,127 +142,55 @@ function body_parse($body) { return $body; } -$custom_fields = NULL; - -$custom_fields_keys = array(); -switch ($_GET['file']) { - case 'request/vpn': - $project_id = 1; - $memo_subject = 'Запрос на учётную запись к vpn.mephi.ru'; - break; - case 'request/vpn-private-net': - $project_id = 1; - $memo_subject = 'Запрос на доступ к VLAN через vpn.mephi.ru'; - break; - case 'request/nix-hosting': - $project_id = 102; - $memo_subject = 'Заявка на предоставление nix-хостинга'; - break; - case 'request/win-hosting': - $project_id = 1; - $memo_subject = 'Заявка на предоставление win-хостинга'; - break; - case 'request/voip-softphone': - $project_id = 18; - $memo_subject = 'Заявка на создание учётной записи к softphone'; - break; - case 'request/voip3': - $project_id = 124; - $memo_subject = 'Заявка на доступ к систему «Биллинг» IP-телефонии'; - break; - case 'request/cps': - $project_id = 109; -// $project_id = 1; - $memo_subject = 'Заявка на доступ к системе учёта рабочего времени'; - break; - case 'request/hpc': -// $project_id = NULL; //38; - $project_id = 38; - $memo_subject = 'Запрос на учётную запись к HPC-кластерам'; - - $custom_fields_keys = array(2 => 'hdd-amount', 3 => 'cpu-amount', 4 => 'subdivision', 5 => 'scientific-director', 6 => 'ram-amount', 7 => 'preffered-login', 8 => 'ic-bandwidth', 16 => 'contact-email'); - break; - case 'request/vacation': - $project_id = 118; - $memo_subject = 'Заявление на отпуск'; - - switch($_GET['vacation-type']) { - case 'main': - $_GET['vacation-type'] = 'ежегодный основной оплачиваемый отпуск'; - $_GET['of-vacation'] = 'ежегодного основного оплачиваемого отпуска'; - break; - case 'educational': - $_GET['vacation-type'] = 'учебный отпуск'; - $_GET['of-vacation'] = 'учебного отпуска'; - break; - case 'free': - $_GET['vacation-type'] = 'отпуск без сохранения заработной платы'; - $_GET['of-vacation'] = 'отпуска без сохранения заработной платы'; - break; - case 'parental': - $_GET['vacation-type'] = 'отпуск по уходу за ребёнком до достижения им возраста трёх лет'; - $_GET['of-vacation'] = 'отпуска по уходу за ребёнком до достижения им возраста трёх лет'; - break; - } - - $time_from = strtotime($_GET['days-from']); - $time_to = strtotime($_GET['days-to']); - - $time_diff = $time_from - $time_to; - - $days_diff = floor(($time_diff / (3600*24)) + 0.5); - - $_GET['days-count'] = ($days_diff + 1); - - break; - case 'request/voip-transfer-equipment': - $project_id = 1;//18; - $memo_subject = 'Заявка на передачу телефонных аппаратов в ОСП'; - break; - default: - die('unknown memo-type'); -} - -switch ($_GET['file']) { - case 'request/voip3': - case 'request/cps': - if (empty($_GET['subdiv-code'])) { - if (!empty($_SERVER['HTTP_REFERER'])) { - header('Location: '.$_SERVER['HTTP_REFERER'].'?errmsg='.urlencode('Не указан код подразделения')); - exit(0); - } else - die('"subdiv-code" is not set'); - } - $subdivs = json_decode(file_get_contents('https://cps.mephi.ru/?cmd=getsubdivinfo&s_code='.$_GET['subdiv-code'])); - $subdiv = $subdivs->result->s0; - $_GET['subdiv-name'] = $subdiv->name; - break; +function error($str) { + die($str); + header('Location: '.$_GET['callback_url'].'?errmsg='.urlencode($str)); + error_log($str); + exit(0); } -foreach($custom_fields_keys as $id => $key) - $custom_fields[] = array('id' => $id, 'value' => empty($_GET[$key]) ? '0' : $_GET[$key]); - -$tempdir = tempdir(); -if ($tempdir === FALSE) - die('Cannot create temporary directory'); +//DE base64 subdivs +if (isset($_GET['signer-subdivs'])){ + $_GET['signer-subdivs'] = base64_decode($_GET['signer-subdivs']); + +} +$inflect = new Inflect(); + +//This cycle for situation when we could not receive enought info from node_common + +foreach (array('signer', 'contact', 'user') as $key) { + if (!empty($_GET[$key.'-e_id'])) { + $e_id = $_GET[$key.'-e_id']; + + $employees = json_decode(file_get_contents("http://cps.mephi.ru/?cmd=getemployeeinfo&e_id=". urlencode($e_id) )); + $employee = ((array)$employees); + $employee = reset($employee); + } else + if (!empty($_GET[$key.'-login'])) { + $login = $_GET[$key.'-login']; + $employees = json_decode(file_get_contents("http://cps.mephi.ru/?cmd=getemployeeinfo&username=".urlencode($login) )); + $employee = ((array)$employees); + $employee = reset($employee); + } else + continue; + + $appointments = array(); + foreach($employee->WORKPOSITIONS as $workposition) { + $appointments[] = preg_replace('/ [0-9]*.[0-9]$/', '', $workposition->name).' '.mb_strtoupper($workposition->subdivision->shortname); + } -exec('cp -a /var/www/ut.mephi.ru/ut-tex/mephimemo "'.$tempdir.'/"'); -chdir($tempdir.'/mephimemo'); -file_put_contents("request.get", print_r($_GET, true)); + $fullname = $employee->fullname; + $name = mb_substr($employee->firstname, 0, 1).'.'.mb_substr($employee->middlename, 0, 1).'. '. $employee->lastname; + $appointment = join(', ',$appointments); -#ob_start(); -#print_r($_GET); -#$_GET_print_r = ob_get_clean(); -$text = ''; + $_GET[$key.'-fullname'] = $fullname; + $_GET[$key.'-name'] = $name; + $_GET[$key.'-appointment'] = $appointment; -$redmine_admin = new Redmine\Client('https://redmine.ut.mephi.ru', REDMINE_LOGIN, REDMINE_PASSWORD); +} -/* -if (empty($_GET['date-end'])) - $_GET['date-end'] = (date('Y')+1).'-12-31'; -*/ foreach (array('fullname' => 40, 'phonenumber' => 20, 'email' => 30, 'appointment' => 40, 'pgp-id' => 12) as $key => $space) { if (empty($_GET['signer-'.$key])) $_GET['signer-'.$key] = str_pad('', $space, '_'); @@ -254,6 +202,51 @@ foreach (array('fullname' => 40, 'phonenumber' => 20, 'email' => 30, 'appointmen $_GET['contact-'.$key] = $_GET['user-'.$key]; } +foreach (array('signer', 'contact', 'user') as $key) { + if (empty($_GET[$key.'-name'])) + $_GET[$key.'-name'] = $_GET[$key.'-fullname']; + + foreach (array('of', 'to') as $case => $key_prefix) { + if (empty($_GET[$key_prefix.'-'.$key.'-fullname'])) + $_GET[$key_prefix.'-'.$key.'-fullname'] = $inflect->getInflectName($_GET[$key.'-fullname'], $case); + + if (empty($_GET[$key_prefix.'-'.$key.'-appointment'])) { + foreach ($dont_inflect_patterns as &$dont_inflect_pattern) { + if (preg_match($dont_inflect_pattern, $_GET[$key.'-appointment'])) { + $_GET[$key_prefix.'-'.$key.'-appointment'] = $_GET[$key.'-appointment']; + continue 2; + } + } + +// working with appointments + $appointments = split(', ', $_GET[$key.'-appointment']); + foreach ($appointments as &$appointment) { + $matches = NULL; + $ignored_ending = ''; + + $appointment = preg_replace($inflect_cut_patterns, '', $appointment); + + foreach($inflect_ignore_ending_patterns as $inflect_ignore_ending_pattern) { + if (preg_match('/'.$inflect_ignore_ending_pattern.'$/u', $appointment, $matches, PREG_OFFSET_CAPTURE)) { + foreach ($matches as &$match) { + $ignored_ending .= $match[0]; + $appointment = mb_substr($appointment, 0, -mb_strlen($match[0])); + } + } + } + + $appointment = $inflect->getInflectNoun($appointment, $case); + + $appointment .= $ignored_ending; + $_GET[$key_prefix.'-'.$key.'-appointment'] = $appointment; + } + + $_GET[$key_prefix.'-'.$key.'-appointment'] = join(', ', $appointments); + + } + } +} + foreach (array('work-date-end' => 'Срок окончания работ') as $key => $descr) { $_GET[$key.'-descr'] = $descr.': '. ( @@ -273,9 +266,41 @@ foreach ($_GET as $key => &$value) { if (substr($key, -12) == "-other-value") if ($_GET[substr($key, 0, strlen($key)-12)] == "other") $_GET[substr($key, 0, strlen($key)-12)] = $value; - $value = str_replace('_', '\_', $value); + $value = str_replace(array('\\', '_'), array('{\textbackslash}', '\_'), $value); + +} + + +foreach (array('videocheck', 'confcheck', 'webtrans', 'telebridge', 'otherconf', 'record1', 'record2', 'record3') as $key ) { + if (isset($_GET[$key])) + $_GET[$key] = 'Да'; + +//govnocode 2.0 + else{ +/* +// if ($_GET['video-type'] == 'Нет') +// die('Ошибка: не выбран флажок видеосъемки'); + if (isset($_GET['usermount1']) || isset($__GET['record1'])) + die('Ошибка: не выбран флажок видеоконференции'); + if (isset($_GET['record2'])) + die('Ошибка: не выбран флажок вебтрансляции'); + if (isset($_GET['usermount2']) || isset($_GET['record3'])) + die('Ошибка: не выбран флажок проведения телемоста'); + if (isset($_GET['otherconftext'])) + die('Ошибка: не выбран флажок "Другое"'); +*/ + + $_GET[$key] = 'Нет'; + + } } +//Jim's simple diagnostics +//print_r($_GET);die(); + +$redmine_admin = new Redmine\Client('https://redmine.ut.mephi.ru', REDMINE_LOGIN, REDMINE_PASSWORD); +$me = NULL; + if (isset($_GET['user-serialized'])) { $user_drupal_serialized = base64_decode($_GET['user-serialized']); $hash = $_GET['user-signature']; @@ -307,93 +332,329 @@ if (isset($_GET['user-serialized'])) { // file_put_contents("/tmp/user", print_r($user_redmine)); die(); $redmine = new Redmine\Client('https://redmine.ut.mephi.ru', $api_key); -} else - $redmine = &$redmine_admin; -$body_template = file_get_contents('template/'.$_GET['file'].'.tex'); -$body = body_parse($body_template); - -switch ($_GET['file']) { - case 'request/vacation': - $header = '\mmheader{Начальнику отдела кадров НИЯУ МИФИ}{}'; - break; - case 'request/voip-transfer-equipment': - $header = '\mmfullheader{'.$_GET['subdiv-name'].'}{Начальнику управления информатизации}{Романову Н.Н.}'; - break; - default: - $header = '\mmheader{Начальнику управления информатизации}{Н. Н. Романову}'; + $me = $redmine->api('user')->getCurrentUser()['user']; +} else { + die('Not authed'); + $redmine = &$redmine_admin; } -file_put_contents('header.tex', $header); -file_put_contents('body.tex', $body); -file_put_contents('footer.tex', '\mmfooter{'.$_GET['signer-appointment'].'}{'.$_GET{'signer-fullname'}.'}'); -file_put_contents('responsible.tex', '\mmresponsibleskip'); -if (!is_null($project_id)) { - file_put_contents('urlqr.tex', ''); - exec('make'); - exec('pdftotext memo.pdf'); + - $text = file_get_contents('memo.txt'); - unlink('memo.pdf'); +$custom_fields = NULL; - $issue_props = - array( - 'project_id' => $project_id, - 'subject' => $memo_subject, - 'description' => $text, - ); +$custom_fields_keys = array(); + +$files = split(',', $_GET['file']); + +$pdfs = array(); +foreach ($files as $file) { + switch ($file) { + case 'request/vpn': + $project_id = 1; + $memo_subject = 'Запрос на учётную запись к vpn.mephi.ru'; + break; + case 'request/vpn-private-net': + $project_id = 1; + $memo_subject = 'Запрос на доступ к VLAN через vpn.mephi.ru'; + break; + case 'request/nix-hosting': + $project_id = 102; + $memo_subject = 'Заявка на предоставление nix-хостинга'; + $custom_fields_keys = array (4 => 'signer-subdivs', 85=> 'domainnames'); + break; + case 'request/win-hosting': + $project_id = 1; + $memo_subject = 'Заявка на предоставление win-хостинга'; + break; + case 'request/voip-softphone': + $project_id = 18; + $memo_subject = 'Заявка на создание учётной записи к softphone'; + break; + case 'request/voip3': + $project_id = 124; + $memo_subject = 'Заявка на доступ к систему «Биллинг» IP-телефонии'; + break; + case 'request/cps': + $project_id = 109; + // $project_id = 1; + $memo_subject = 'Заявка на доступ к системе учёта рабочего времени'; + break; + case 'request/hpc': + // $project_id = NULL; //38; + $project_id = 38; + $memo_subject = 'Запрос на учётную запись к HPC-кластерам'; - if (!is_null($custom_fields)) - $issue_props['custom_fields'] = $custom_fields; + $custom_fields_keys = array(2 => 'hdd-amount', 3 => 'cpu-amount', 4 => 'subdivision', 5 => 'scientific-director', 6 => 'ram-amount', 7 => 'preffered-login', 8 => 'ic-bandwidth', 16 => 'contact-email'); + break; + case 'request/vacation': + $project_id = 118; +// $project_id = 1; + $memo_subject = 'Заявление на отпуск'; + + switch($_GET['vacation-type']) { + case 'main': + $_GET['vacation-type'] = 'ежегодный основной оплачиваемый отпуск'; + $_GET['of-vacation'] = 'ежегодного основного оплачиваемого отпуска'; + break; + case 'educational': + $_GET['vacation-type'] = 'учебный отпуск'; + $_GET['of-vacation'] = 'учебного отпуска'; + break; + case 'free': + $_GET['vacation-type'] = 'отпуск без сохранения заработной платы'; + $_GET['of-vacation'] = 'отпуска без сохранения заработной платы'; + break; + case 'parental': + $_GET['vacation-type'] = 'отпуск по уходу за ребёнком до достижения им возраста трёх лет'; + $_GET['of-vacation'] = 'отпуска по уходу за ребёнком до достижения им возраста трёх лет'; + break; + } + + $time_from = strtotime($_GET['days-from']); + $time_to = strtotime($_GET['days-to']); + + $time_diff = $time_to - $time_from; + + $days_diff = floor(($time_diff / (3600*24)) + 0.5); + + $_GET['days-count'] = ($days_diff + 1); - $issue = $redmine->api('issue')->create($issue_props); + break; + case 'request/temporary-acting': + if (!isset($_GET['user-e_id'])) + continue 2; - $issue_id = $issue->id; -} else { - $issue_id = $_GET['issue-id']; -} + if (substr($_GET['of-user-fullname'], 0, 2) == '\_') + $_GET['of-user-fullname'] = '\\\\'."\n".$_GET['of-user-fullname']; + break; + case 'request/voip-transfer-equipment': + $project_id = 1;//18; + $memo_subject = 'Заявка на передачу телефонных аппаратов в ОСП'; + break; + case 'request/video': + $project_id = 1; + $memo_subject = 'Заявка на сопровождение мероприятия видеосъемкой, проведение видеоконференции и веб-трансляции'; + break; + // die ('working on that'); + case 'request/php': + $project_id = 12871; + $memo_subject = 'Заявка на предоставление PHP хостинга'; + break; + default: + die('unknown memo-type'); -file_put_contents('urlqr.tex', '\mmredmineurlqr{'.$issue_id.'}'); - -if (isset($user_redmine['user']['id'])) - $redmine_admin->api('issue')->addWatcher($issue_id, $user_redmine['user']['id']); - -switch ($_GET['file']) { - case 'request/cps': - case 'request/voip3': - case 'request/voip-softphone': - $redmine_admin->api('issue')->addWatcher($issue_id, USERID_NNROMANOV); - $redmine_admin->api('issue')->addWatcher($issue_id, USERID_DYOKUNEV); - break; - case 'request/voip-transfer-equipment': - case 'request/vacation': - break; - default: - file_put_contents('responsible.tex', '\mmresponsible{'.$_GET['contact-fullname'].'}{'.$_GET{'contact-phonenumber'}.'}{'.$_GET['contact-email'].'}'); -} + } + + if (!is_null($me)) + $redmine_admin->api('membership')->create($project_id, array('user_id' => $me['id'], 'role_ids' => array(ROLE_CUSTOMER))); + + switch ($file) { + case 'request/voip3': + case 'request/cps': + case 'request/php': + if (empty($_GET['subdiv-code'])) { + if (!empty($_SERVER['HTTP_REFERER'])) { + header('Location: '.$_SERVER['HTTP_REFERER'].'?errmsg='.urlencode('Не указан код подразделения')); + exit(0); + } else + die('"subdiv-code" is not set'); + } + $subdivs = json_decode(file_get_contents('https://cps.mephi.ru/?cmd=getsubdivinfo&s_code='.$_GET['subdiv-code'])); + $subdiv = $subdivs->result->s0; + $_GET['subdiv-name'] = $subdiv->name; + break; + case 'request/video': + if (empty($_GET['subdiv-code'])) { + if (!empty($_SERVER['HTTP_REFERER'])) { + header('Location: '.$_SERVER['HTTP_REFERER'].'?errmsg='.urlencode('Не указан код подразделения')); + exit(0); + } else + die('"subdiv-code" is not set'); + } + $subdivs = json_decode(file_get_contents('https://cps.mephi.ru/?cmd=getsubdivinfo&s_code='.$_GET['subdiv-code'])); + $subdiv = $subdivs->result->s0; + $_GET['subdiv-name'] = $subdiv->name; + break; + + } -exec('make'); -$pdf_content = file_get_contents('memo.pdf'); + foreach($custom_fields_keys as $id => $key) + $custom_fields[] = array('id' => $id, 'value' => empty($_GET[$key]) ? '0' : $_GET[$key]); + -$pdf_upload = json_decode( $redmine_admin->api('attachment')->upload($pdf_content) ); -$redmine_admin->api('issue')->attach( - $issue_id, - array( - 'token' => $pdf_upload->upload->token, - 'filename' => 'sluzhebnaya_zapiska.pdf', - 'description' => 'Служебная записка', - 'content_type'=> 'application/pdf' - ) -); + $tempdir = tempdir(); + + if ($tempdir === FALSE) + die('Cannot create temporary directory'); + + + exec('cp -a /var/www/ut.mephi.ru/ut-tex/mephimemo "'.$tempdir.'/"'); + chdir($tempdir.'/mephimemo'); + file_put_contents("request.get", print_r($_GET, true)); + + #ob_start(); + #print_r($_GET); + #$_GET_print_r = ob_get_clean(); + $text = ''; + + /* + if (empty($_GET['date-end'])) + $_GET['date-end'] = (date('Y')+1).'-12-31'; + */ + + $body_template = file_get_contents('template/'.$file.'.tex'); + $body = body_parse($body_template); + + switch ($file) { + case 'request/vacation': + $header = '\mmheaderstatement{Начальнику отдела кадров НИЯУ МИФИ}{}'; + $footer = ''; + break; + case 'request/temporary-acting': + $header = '\mmheadermemo{\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_}{\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_}'; + $footer = ' +\mmfooter{'.$_GET['signer-appointment'].'}{'.$_GET{'signer-name'}.'}{}{} +\\ +\mmfooter{'.$_GET['user-appointment'].'}{'.$_GET{'user-name'}.'}{}{Согласен:} +'; + break; + case 'request/voip-transfer-equipment': + $header = '\mmfullheader{'.$_GET['subdiv-name'].'}{Начальнику управления информатизации}{Романову Н.Н.}'; + break; + case 'request/video'; + $header = '\mmfullheader{Утверждаю}{Начальник управления информатизации}{/Романов Н.Н./}'; + break; + default: + $header = '\mmheader{Начальнику управления информатизации}{Н. Н. Романову}'; + $footer = '\mmfooter{'.$_GET['signer-appointment'].'}{'.$_GET{'signer-name'}.'}{}{}'; + } + file_put_contents('header.tex', $header); + file_put_contents('body.tex', $body); + file_put_contents('footer.tex', $footer); + file_put_contents('responsible.tex', '\mmresponsibleskip'); + + if (empty($issue_id)) { + if (!is_null($project_id)) { + file_put_contents('urlqr.tex', ''); + exec('make'); + exec('pdftotext memo.pdf'); + + $text = file_get_contents('memo.txt'); + unlink('memo.pdf'); + +//insert switch here + + switch($file) { + case 'request/php': + $issue_props = + array( + 'assigned_to_id' => USERID_KVMARTINOV, + 'project_id' => $project_id, + 'subject' => $memo_subject, + 'description' => $text, + ); + break; + default: + $issue_props = + array( + 'assigned_to_id' => USERID_DYOKUNEV, + 'project_id' => $project_id, + 'subject' => $memo_subject, + 'description' => $text, + ); + } + + if (!is_null($custom_fields)) + $issue_props['custom_fields'] = $custom_fields; + + // print_r ($issue_props); + error_log(base64_encode(serialize($issue_props))); + + $result = $redmine->api('issue')->create($issue_props); + $issue = json_decode($result); + $issue = $issue->issue; + error_log(base64_encode(serialize($issue))); + error_log('issue: '.$issue->id); + if (empty($issue->id)) + error('Wrong parameters: '.$result); + + $issue_id = $issue->id; + } else { + $issue_id = $_GET['issue-id']; + } + } + + file_put_contents('urlqr.tex', '\mmredmineurlqr{'.$issue_id.'}'); + + if (isset($user_redmine['user']['id'])) + $redmine_admin->api('issue')->addWatcher($issue_id, $user_redmine['user']['id']); + + switch ($file) { + case 'request/hpc': + file_put_contents('responsible.tex', '\mmresponsible{'.$_GET['contact-name'].'}{'.$_GET{'contact-phonenumber'}.'}{'.$_GET['contact-email'].'}'); + $redmine_admin->api('issue')->addWatcher($issue_id, USERID_AAANIKEEV); + $redmine_admin->api('issue')->addWatcher($issue_id, USERID_BIRCOPH); + case 'request/cps': + case 'request/voip3': + case 'request/voip-softphone': + $redmine_admin->api('issue')->addWatcher($issue_id, USERID_NNROMANOV); + $redmine_admin->api('issue')->addWatcher($issue_id, USERID_DYOKUNEV); + break; + case 'request/voip-transfer-equipment': + case 'request/vacation': + case 'request/temporary-acting': + break; + default: + file_put_contents('responsible.tex', '\mmresponsible{'.$_GET['contact-name'].'}{'.$_GET{'contact-phonenumber'}.'}{'.$_GET['contact-email'].'}'); + } + + exec('make'); + $pdf_content = file_get_contents('memo.pdf'); + + $pdf_upload = json_decode( $redmine_admin->api('attachment')->upload($pdf_content) ); + + $redmine_admin->api('issue')->attach( + $issue_id, + array( + 'token' => $pdf_upload->upload->token, + 'filename' => 'sluzhebnaya_zapiska.pdf', + 'description' => 'Служебная записка', + 'content_type'=> 'application/pdf' + ) + ); + + if (preg_match('/Firefox/i', $_SERVER['HTTP_USER_AGENT'])) { + system('convert -density 400 memo.pdf memo.png'); + system('convert -density 400 memo.png memo_png.pdf'); + $pdfs_path[] = getcwd().'/memo_png.pdf'; + $pdf_content = file_get_contents('memo_png.pdf'); + } else + $pdfs_path[] = getcwd().'/memo.pdf'; + + $pdfs_content[] = $pdf_content; +} + +$count = count($pdfs_path); + +if ($count == 0) { + exit(0); +} header('Content-type: application/pdf'); -if (preg_match('/Firefox/i', $_SERVER['HTTP_USER_AGENT'])) { - system('convert -density 200 memo.pdf memo.png'); - system('convert -density 200 memo.png memo_png.pdf'); - print file_get_contents('memo_png.pdf'); -} else { - print $pdf_content; + +if ($count == 1) { + print $pdfs_content[0]; + exit(0); +} + +if ($count > 1) { + $tempdir = tempdir(); + chdir($tempdir); + system('pdfunite '.join(' ', $pdfs_path).' memo_unite.pdf'); + print file_get_contents('memo_unite.pdf'); + exit(0); } ?> diff --git a/genpdf/lib/3dparty/Inflect b/genpdf/lib/3dparty/Inflect new file mode 160000 index 0000000..c1aa9da --- /dev/null +++ b/genpdf/lib/3dparty/Inflect @@ -0,0 +1 @@ +Subproject commit c1aa9da69af1be2977cc941cbb2fd47a22cf02e2 diff --git a/mephimemo/mephimemo.cls b/mephimemo/mephimemo.cls index 1bc2e50..334a8c2 100644 --- a/mephimemo/mephimemo.cls +++ b/mephimemo/mephimemo.cls @@ -15,11 +15,13 @@ \usepackage{fontspec} \usepackage{xltxtra} \usepackage{xunicode} +\usepackage{setspace} %\usepackage{parskip} \usepackage{pst-barcode} \defaultfontfeatures{Mapping=tex-text} \usepackage{polyglossia} -\setmainfont{DejaVu Serif} +\newfontfamily\cyrillicfont{Times New Roman} +\setmainfont{Times New Roman} \setsansfont{DejaVu Sans} \setmonofont{DejaVu Sans Mono} \setdefaultlanguage[spelling=modern]{russian} @@ -29,17 +31,26 @@ \usepackage{textcomp} % allow ligatures and special symbols \usepackage[none]{hyphenat} +\usepackage{soul} \pagestyle{empty} % memorandum NRNU MEPhI header \newcommand{\mmnrnumephi} { - \begin{center} - Министерство образования и науки Российской Федерации - \end{center} - \begin{center} - Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Национальный исследовательский ядерный университет «МИФИ» - \end{center} + \hspace*{-\parindent}% + \begin{minipage}{\linewidth} + \begin{center} + \begin{spacing}{1.4} + {\MakeUppercase{\fontsize{12.7pt}{14.7pt}\selectfont{Министерство образования и науки Российской Федерации}}} + \end{spacing} + \begin{spacing}{0.75} + {\MakeUppercase{\fontsize{10pt}{12pt}\selectfont{Федеральное государственное автономное образовательное учреждение высшего профессионального образования}}} + \end{spacing} + \begin{spacing}{1.5} + \textbf{\fontsize{14pt}{16pt}\selectfont{«Национальный исследовательский ядерный университет «МИФИ»}} + \end{spacing} + \end{center} + \end{minipage} } % memorandum "from external subdivision" @@ -54,6 +65,14 @@ \begin{center} Служебная записка \end{center} + \vspace{0.6cm} +} + +\newcommand{\mmstartstatement} { + \begin{center} + {\addfontfeature{LetterSpace=20}\bfseries{\MakeUppercase{Заявление}}} + \end{center} + \vspace{0.6cm} } % memorandum recipient (while inter-organization communication) @@ -81,7 +100,7 @@ % memorandum header % #1 - position % #2 - name -\newcommand{\mmheader}[2]{ +\newcommand{\mmheadermemo}[2]{ \begin{flushright} {#1}\\ {#2} @@ -90,15 +109,37 @@ \vspace{5em} \mmstartmemo } +\newcommand{\mmheader}[2]{ + \mmheadermemo{{#1}}{{#2}} +} + +% statement header +% #1 - position +% #2 - name +\newcommand{\mmheaderstatement}[2]{ + \begin{flushright} + {#1}\\ + {#2} + \end{flushright} + + \vspace{5em} + \mmstartstatement +} % memorandum footer % #1 - position % #2 - name -\newcommand{\mmfooter}[2]{ +% #3 - comment +\newcommand{\mmfooter}[4]{ \vspace{\stretch{1}} + \begin{flushleft} + {#4} + \end{flushleft} \begin{flushright} {#1}\\ \vspace{0.7cm} + {#3} + \hspace{5cm} {#2} \end{flushright} } diff --git a/mephimemo/template/request/php.tex b/mephimemo/template/request/php.tex new file mode 100644 index 0000000..d95882a --- /dev/null +++ b/mephimemo/template/request/php.tex @@ -0,0 +1,30 @@ +Прошу предоставить PHP-хостинг для размещения информационного веб-ресурса +\\ +\\ +\textbf{Веб-ресурс} +\\ +\begin{tabular}{ l l } +Наименование & [{resourse-description}] \\ +Доменное имя & [{resourse-domain}] \\ +\end{tabular} +\\ +\\ +\textbf{Подразделение} +\\ +\begin{tabular}{ l l } +Номер & [{subdiv-code}] \\ +Наименование & «[{subdiv-name}]»\\ +\end{tabular} +\\ +\\ +\textbf{Администратор веб-ресурса} +\\ +\begin{tabular}{ l l } +ФИО полностью & [{user-fullname}] \\ +Должность & [{user-appointment}] \\ +Контактный тел. (ip или моб.) & [{user-phonenumber}] \\ +Эл. почта (@mephi.ru) & [{user-email}] \\ +\end{tabular} + + + diff --git a/mephimemo/template/request/temporary-acting.tex b/mephimemo/template/request/temporary-acting.tex new file mode 100644 index 0000000..f32fd0b --- /dev/null +++ b/mephimemo/template/request/temporary-acting.tex @@ -0,0 +1 @@ +Прошу вас разрешить возложить обязанности [{signer-appointment}] на время моего [{of-vacation}] с [{days-from}] по [{days-to}] на [{of-user-appointment}] [{of-user-fullname}] с компенсацией разницы в окладах. diff --git a/mephimemo/template/request/vacation.tex b/mephimemo/template/request/vacation.tex index 7454260..2cc0927 100644 --- a/mephimemo/template/request/vacation.tex +++ b/mephimemo/template/request/vacation.tex @@ -1,6 +1,18 @@ -Прошу предоставить мне [{vacation-type}] на [{days-count}] к/дней с [{days-from}] по [{days-to}]. +Прошу предоставить мне [{vacation-type}] на [{days-count}] [{days-descr}] с [{days-from}] по [{days-to}]. +\begin{flushright} +[{signer-appointment}]\\ +\vspace{0.7cm} +\_\_\_\_\_\_\_\_\_\_\_\_\_ [{signer-fullname}] +\end{flushright} -Ходатайствую о предоставлении [{of-vacation}] с [{days-from}] на [{days-count}] календарных дней. +\vspace{1cm} -Руководитель подразделения: \_\_\_\_\_\_\_\_\_\_\_ +Ходатайствую о предоставлении [{of-vacation}] с [{days-from}] на [{days-count}] [{days-descr}]. + +\vspace{1cm} +{\setlength{\parindent}{0cm} + Руководитель подразделения: \_\_\_\_\_\_\_\_\_\_\_ +} + +\vspace{\stretch{1}} diff --git a/mephimemo/template/request/video.log b/mephimemo/template/request/video.log new file mode 100644 index 0000000..5dcb7cb --- /dev/null +++ b/mephimemo/template/request/video.log @@ -0,0 +1,1040 @@ +This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014/Debian) (preloaded format=latex 2014.7.25) 25 SEP 2014 11:06 +entering extended mode + restricted \write18 enabled. + %&-line parsing enabled. +**video.tex +(./video.tex +LaTeX2e <2014/05/01> +Babel <3.9k> and hyphenation patterns for 79 languages loaded. + +! LaTeX Error: Environment undefined. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help. + ... + +l.2 + одразделение [{subdiv-code-entered}] \\ +? + +! LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help. + ... + +l.2 П + одразделение [{subdiv-code-entered}] \\ +? +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no y in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no ] in font nullfont! + +Overfull \hbox (20.0pt too wide) in paragraph at lines 2--6 +[] + [] + + +! LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help. + ... + +l.9 \begin{tabular} + { l c r } +? +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <7> on input line 9. +LaTeX Font Info: External font `cmex10' loaded for size +(Font) <5> on input line 9. +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no y in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no 3 in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no k in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no [ in font nullfont! +! Missing } inserted. + + } +l.12 ...онференция: [{confcheck}] & [{& + usersamount1}] & [{record1... + +? +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no ] in font nullfont! +! Missing { inserted. + + { +l.12 ...ия: [{confcheck}] & [{&usersamount1}] & + [{record1}]\\ +? +! Extra alignment tab has been changed to \cr. + \endtemplate + +l.12 ...ия: [{confcheck}] & [{&usersamount1}] & + [{record1}]\\ +? +Missing character: There is no [ in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no 1 in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no 2 in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no 2 in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no l in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no b in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no g in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no u in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no 2 in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no d in font nullfont! +Missing character: There is no 3 in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no h in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no c in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no 2 in font nullfont! +Missing character: There is no 3 in font nullfont! + +Overfull \hbox (20.00003pt too wide) in paragraph at lines 9--20 +[][] + [] + + +! LaTeX Error: Missing \begin{document}. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help. + ... + +l.23 + ополнительная информация по мероприя... + +? +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no a in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no m in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no i in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no f in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no ] in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no in font nullfont! +Missing character: There is no : in font nullfont! +Missing character: There is no [ in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no v in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no - in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no e in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no n in font nullfont! +Missing character: There is no s in font nullfont! +Missing character: There is no ] in font nullfont! +) +* + +Overfull \hbox (20.0pt too wide) in paragraph at lines 23--0 +[] + [] + +(Please type a command or say `\end') +* +(Please type a command or say `\end') +* +(Please type a command or say `\end') +* +(Please type a command or say `\end') +* +(Please type a command or say `\end') +* +(Please type a command or say `\end') +* +(Please type a command or say `\end') +*\end + +* +Runaway argument? +! Paragraph ended before \end was complete. + + \par +<*> + +? q +OK, entering \batchmode... +! Emergency stop. +<*> + +*** (job aborted, no legal \end found) + + +Here is how much of TeX's memory you used: + 7 strings out of 493105 + 154 string characters out of 6136958 + 53492 words of memory out of 5000000 + 3571 multiletter control sequences out of 15000+600000 + 3640 words of font info for 14 fonts, out of 8000000 for 9000 + 1141 hyphenation exceptions out of 8191 + 19i,6n,12p,143b,103s stack positions out of 5000i,500n,10000p,200000b,80000s +No pages of output. diff --git a/mephimemo/template/request/video.tex b/mephimemo/template/request/video.tex new file mode 100644 index 0000000..b7059c7 --- /dev/null +++ b/mephimemo/template/request/video.tex @@ -0,0 +1,28 @@ +Подразделение [{subdiv-code}] «[{subdiv-name}]»\\ +Описание запланированного мероприятия: [{event-description}] \\ +Место проведения: [{event-place}] \\ +Дата проведения: [{days-from}], время проведения с [{event-time-before}] до [{event-time-after}] \\ + +\smallskip + +\begin{tabular}{ l c p{1.5cm} r p{0.5cm} } +\hline +Тип съемки & Параметры, к-во уч-ников & Запись \\ +\hline +Видеосъемка: [{videocheck}] & [{video-type}] & \\ + +Видеоконференция: [{confcheck}] & [{usersamount1}] & [{record1}]\\ + +Веб-трансляция на сайте НИЯУ МИФИ: [{webtrans}] & &[{record2}] \\ + +Проведение телемоста: [{telebridge}] & [{usersamount2}] & [{record3}]\\ + +Другое: [{otherconf}] [{otherconftext}] & &\\ +\end{tabular} +\newline +\smallskip +\newline +Дополнительная информация по мероприятию: [{event-info}] \\ +Условия проведения: [{event-statements}] \\ +Как будет использоваться записанный видеоматериал: [{event-info}] \\ +Начальник структурного подразделения: [{event-respons}] \\ -- libgit2 0.24.0