示例#1
0
/**
 * Сохранить шаблон.
 * 
 * @param string $data JSON данные
 *
 * @return object xajaxResponse
 */
function updateTemplate($frm_one, $frm_data)
{
    global $objLetters;
    $objResponse = new xajaxResponse();
    if (hasPermissions('letters') && hasPermissions('adm')) {
        $errors = array();
        $frm_data = iconv('CP1251', 'UTF-8', $frm_data);
        $frm_data = stripcslashes($frm_data);
        $frm_data = json_decode($frm_data, true);
        if ($frm_data) {
            foreach ($frm_data as $k => $v) {
                $frm_data[$k] = iconv('UTF-8', 'CP1251', $v);
            }
        }
        $n = 0;
        for ($n = 0; $n < $frm_data['count_docs']; ++$n) {
            $frm = array();
            foreach ($frm_data as $k => $v) {
                if (preg_match('/^' . $n . '-/', $k)) {
                    $key = preg_replace('/^' . $n . '-/', '', $k);
                    $frm[$key] = $v;
                }
            }
            $errors = array();
            $frm['letters_doc_frm_delivery_cost'] = preg_replace('/,/', '.', $frm['letters_doc_frm_delivery_cost']);
        }
        letters::updateTemplate($frm_data);
        letters::delTemplateDocs($frm_data['template_id']);
        for ($n = 0; $n < $frm_data['count_docs']; ++$n) {
            $frm = array();
            foreach ($frm_data as $k => $v) {
                if (preg_match('/^' . $n . '-/', $k)) {
                    $key = preg_replace('/^' . $n . '-/', '', $k);
                    $frm[$key] = $v;
                }
            }
            $frm['letters_doc_frm_template_id'] = $frm_data['template_id'];
            letters::addTemplateDoc($frm);
        }
        $objResponse->script('window.location = "/siteadmin/letters/?mode=templates&msg=eok";');
    }
    return $objResponse;
}