/** * Редактирование документа. * * @param int $id ID документа * * @return object xajaxResponse */ function editDoc($id) { global $objLetters; $objResponse = new xajaxResponse(); if (hasPermissions('letters') && hasPermissions('adm')) { $doc = $objLetters->getDocument($id); if ($doc) { if (!$doc['user_status_1']) { $doc['user_status_1'] = null; } if (!$doc['user_status_2']) { $doc['user_status_2'] = null; } if (!$doc['user_status_3']) { $doc['user_status_3'] = null; } $objResponse->assign('letters_doc_frm_title', 'value', $doc['title']); $objResponse->script("\n \$('letters_doc_frm_delivery_cost').set('value', '');\n \$('letters_doc_frm_comment').set('value', '');\n ComboboxManager.getInput('letters_doc_frm_group').clear();\n ComboboxManager.getInput('letters_doc_frm_delivery').clear();\n ComboboxManager.getInput('letters_doc_frm_user_1').clear();\n ComboboxManager.getInput('letters_doc_frm_user_2').clear();\n ComboboxManager.getInput('letters_doc_frm_user_3').clear();\n ComboboxManager.getInput('letters_doc_frm_parent').clear();\n \$('letters_doc_frm_user1_status_data').set('value', 0);\n \$('letters_doc_frm_user1_status_date_data').set('value', '');\n \$('letters_doc_frm_user_1_status_change_lnk').set('html', statuses_list[0]);\n \$('letters_doc_frm_user2_status_data').set('value', 0);\n \$('letters_doc_frm_user2_status_date_data').set('value', '');\n \$('letters_doc_frm_user_2_status_change_lnk').set('html', statuses_list[0]);\n \$('letters_doc_frm_user3_status_data').set('value', 0);\n \$('letters_doc_frm_user3_status_date_data').set('value', '');\n \$('letters_doc_frm_user_3_status_change_lnk').set('html', statuses_list[0]);\n if(\$('letters_doc_frm_user_3_div').getStyle('display')=='block') {\n letters.toggleUser3();\n }\n "); if ($doc['user_3']) { $objResponse->script('letters.toggleUser3();'); $objResponse->script('ComboboxManager.getInput("letters_doc_frm_user_3").loadRecord(' . $doc['user_3'] . ', "get_user_or_company_info", "type=' . ($doc['is_user_3_company'] == 't' ? 'company' : 'user') . '");'); } if ($doc['withoutourdoc'] == 't') { $objResponse->script('$("letters_doc_frm_withoutourdoc").set("checked", true);'); } if ($doc['user_status_1'] == 2 || $doc['user_status_1'] == 3) { $add_status1 = ' ' . dateFormat('d.m.Y', $doc['user_status_date_1']); } if ($doc['user_status_2'] == 2 || $doc['user_status_2'] == 3) { $add_status2 = ' ' . dateFormat('d.m.Y', $doc['user_status_date_2']); } if ($doc['user_status_3'] == 2 || $doc['user_status_1'] == 3) { $add_status3 = ' ' . dateFormat('d.m.Y', $doc['user_status_date_3']); } $objResponse->script("\$('letters_doc_frm_user_1_status_change_lnk').set('html', statuses_list[" . intval($doc['user_status_1']) . "]+'{$add_status1}')"); $objResponse->script("\$('letters_doc_frm_user_2_status_change_lnk').set('html', statuses_list[" . intval($doc['user_status_2']) . "]+'{$add_status2}')"); $objResponse->script("\$('letters_doc_frm_user_3_status_change_lnk').set('html', statuses_list[" . intval($doc['user_status_3']) . "]+'{$add_status3}')"); $objResponse->assign('letters_doc_frm_user1_status_data', 'value', intval($doc['user_status_1'])); $objResponse->assign('letters_doc_frm_user2_status_data', 'value', intval($doc['user_status_2'])); $objResponse->assign('letters_doc_frm_user3_status_data', 'value', intval($doc['user_status_3'])); $objResponse->assign('letters_doc_frm_user1_status_date_data', 'value', $doc['user_status_date_1'] ? dateFormat('Y-m-d', $doc['user_status_date_1']) : ''); $objResponse->assign('letters_doc_frm_user2_status_date_data', 'value', $doc['user_status_date_2'] ? dateFormat('Y-m-d', $doc['user_status_date_2']) : ''); $objResponse->assign('letters_doc_frm_user3_status_date_data', 'value', $doc['user_status_date_3'] ? dateFormat('Y-m-d', $doc['user_status_date_3']) : ''); if ($doc['group_id']) { $objResponse->script('ComboboxManager.getInput("letters_doc_frm_group").loadRecord(' . $doc['group_id'] . ', "getlettergroupinfo");'); } $objResponse->script('ComboboxManager.getInput("letters_doc_frm_user_1").loadRecord(' . $doc['user_1'] . ', "get_user_or_company_info", "type=' . ($doc['is_user_1_company'] == 't' ? 'company' : 'user') . '");'); $objResponse->script('ComboboxManager.getInput("letters_doc_frm_user_2").loadRecord(' . $doc['user_2'] . ', "get_user_or_company_info", "type=' . ($doc['is_user_2_company'] == 't' ? 'company' : 'user') . '");'); if ($doc['parent']) { $objResponse->script('ComboboxManager.getInput("letters_doc_frm_parent").loadRecord(' . $doc['parent'] . ', "getletterdocinfo");'); } if ($doc['date_add']) { $objResponse->script('ComboboxManager.getInput("letters_doc_frm_dateadd").setDate("' . preg_replace('/ .*$/', '', $doc['date_add']) . '");'); } if ($doc['file_id']) { $cFile = new CFIle(); $cFile->table = 'file'; $cFile->GetInfoById($doc['file_id']); require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/attachedfiles.php'; $attachedfiles = new attachedfiles('', true); $asid = $attachedfiles->createSessionID(); $attachedfiles->addNewSession($asid); $attachedfiles->setFiles(array($cFile->id)); $p_name = preg_replace("/\\..*\$/", '', $cFile->name); ob_start(); echo '<div id="attachedfiles">'; require_once $_SERVER['DOCUMENT_ROOT'] . '/siteadmin/letters/tpl.attachedfiles.php'; echo '</div>'; echo "<input type='hidden' id='attachedfiles_uid' name='attachedfiles_uid' value='" . get_uid(false) . "'>"; echo "<input type='hidden' id='attachedfiles_action' name='attachedfiles_action' value=''>"; echo "<input type='hidden' id='attachedfiles_delete' name='attachedfiles_delete' value=''>"; echo "<input type='hidden' id='attachedfiles_type' name='attachedfiles_type' value='letters'>"; echo "<input type='hidden' id='attachedfiles_session' name='attachedfiles_session' value='" . $asid . "'>"; echo "<iframe id='attachedfiles_hiddenframe' name='attachedfiles_hiddenframe' style='display:none;'></iframe>"; $html = ob_get_contents(); ob_end_clean(); $objResponse->assign('letters_div_attach', 'innerHTML', $html); $objResponse->script("(function () {\n\n var attachedfiles_list = new Array();\n\n attachedfiles_list[0] = new Object;\n attachedfiles_list[0].id = '" . md5($cFile->id) . "';\n attachedfiles_list[0].name = '" . $cFile->original_name . "';\n attachedfiles_list[0].path = '" . WDCPREFIX . '/' . $cFile->path . $cFile->name . "';\n attachedfiles_list[0].size = '" . ConvertBtoMB($cFile->size) . "';\n attachedfiles_list[0].type = '" . $cFile->getExt() . "';\n\n attachedFiles.initComm( 'attachedfiles', \n '{$attachedfiles->getSession()}',\n attachedfiles_list, \n '1',\n '" . letters::MAX_FILE_SIZE . "',\n '" . implode(', ', $GLOBALS['disallowed_array']) . "',\n 'letters',\n '" . get_uid(false) . "'\n );\n attachedFiles.newFile(attachedfiles_list[0].id, attachedfiles_list[0].name, attachedfiles_list[0].path, attachedfiles_list[0].size, attachedfiles_list[0].type);\n })();\n \$('wd_file_add').setStyle('display', 'none');\n "); $objResponse->assign('attachedfiles_uid', 'value', get_uid(false)); $objResponse->assign('attachedfiles_session', 'value', $attachedfiles->getSession()); $objResponse->script("\$('f_button_actionwork').removeClass('b-button_rectangle_color_disable');"); } $objResponse->script('status_can_submit = true;'); $objResponse->script("\$('letters_add_div').getChildren('div').removeClass('b-shadow_hide');"); } $objResponse->script('letters.spinner.hide();'); } return $objResponse; }