<?php
$sql_query = <<<EOF
INSERT INTO {$config["table_prefix"]}calc_template (name, calculate_tpl, params, type, tpl_name, javascript_tpl) VALUES
('Смена значения поля типа «Список» при значении «0» в числовом поле', 'if(!\$line[\$params[''cond_field'']]){ \$line[\$params[''put_field'']] = \$params[''put_value''];}', '{
    "title": "Смена значения поля типа «Список» при значении «0» в числовом поле",
    "help": "Данное вычисление заменяет значение поля типа «Список, если значение поля типа «Число» равно 0.",
    "parameters": {
        "cond_field": {
            "type": "Field",
            "name": "cond_field",
            "type_field":"1",
            "description": "Выберите для проверки поле типа «Число»",
            "no_system": true
        },
        "put_field": {
            "type": "Field",
            "name": "put_field",
            "type_field":{"1":"1","2":"2","3":"3","4":"4"},
            "description": "Выберите для замены значения поле типа «Список»",
            "no_system": true
        },
        "put_value": {
            "type": "String",
            "name": "put_value",
            "description": "Введите значение, которое должно быть присвоено полю типа «Список»"
        }
    }
}', 'calc', 'calc_7.tpl', '');
EOF;
run_query($sql_query);
$sql_query = <<<EOF
INSERT INTO {$config["table_prefix"]}calc_template (name, calculate_tpl, params, type, tpl_name, javascript_tpl) VALUES
('Дата (или время) из поля типа «Дата/время» в другое поле', 'if(\$params[\'put_value\'] == 1){
    \$line[\$params[''put_field'']] = date(''d.m.Y'',strtotime(\$line[\$params[''cond_field'']]));
} elseif(\$params[''put_value''] == 2){
    \$line[\$params[''put_field'']] = date(''H:m:s'',strtotime(\$line[\$params[''cond_field'']]));
}', '{
    "title": "Дата (или время) из поля типа «Дата/время» в другое поле",
    "help": "Данное вычисление выбирает значение даты (или времени) из поля типа «Дата/время» и передает его в другое поле.",
    "parameters": {
        "cond_field": {
            "type": "Field",
            "name": "cond_field",
            "type_field": "2",
            "description": "Выберите поле, из которого будут тянутся данные"
        },
        "put_field": {
            "type": "Field",
            "name": "put_field",
            "type_field": "3",
            "description": "Выберите поле, которое должно быть заполнено данными",
            "no_system": true
        },
        "put_value": {
            "type": "List",
            "name": "put_value",
            "values":{"1":"Дата","2":"Время"},
            "description": "Выберите данные, которые должны быть переданы"
        }
    }
}', 'calc', 'calc_8.tpl', '');
EOF;
run_query($sql_query);
$sql_query = <<<EOF
INSERT INTO {$config["table_prefix"]}calc_template (name, calculate_tpl, params, type, tpl_name, javascript_tpl) VALUES
('Поиск и замена значений поля', '\$line[\$params[''cond_field'']] = str_replace(\$params[''give_value''],\$params[''put_value''],\$line[\$params[''cond_field'']]);', '{
    "title": "Поиск и замена значений поля",
    "help": "Данное вычисление находит поле с нужным значением и заменяет его на другое.",
    "parameters": {
        "cond_field": {
            "type": "Field",
            "name": "cond_field",
            "type_field": "3",
            "description": "Выберите поле, которое должно быть изменено"
        },
        "give_value": {
            "type": "String",
            "name": "give_value",
            "description": " Введите значение для поиска"
        },
        "put_value": {
            "type": "String",
            "name": "put_value",
            "description": "Введите значение для замены"
        }
    }
}', 'calc', 'calc_9.tpl', '');
EOF;
run_query($sql_query);
$sql_query = <<<EOF
INSERT INTO {$config["table_prefix"]}calc_template (name, calculate_tpl, params, type, tpl_name, javascript_tpl) VALUES
('Среднее значение из подтаблицы в основную запись', 'if(\$event[''type''] === ''delete''){
    \$not_id = '' and id!=''.\$line[''id''];
}
\$res = data_select_field(\$table[''id''],''COUNT(id) as cnt, SUM(''.\$params[''cond_field''].'') as sum'',''status=0 and ''.\$params[''cond_table''][''link_field_id''].''=''.\$line[\$params[''cond_table''][''link_field_id'']][''raw'']);
\$row = sql_fetch_assoc(\$res);
\$line[\$params[''cond_table''][''link_field_id'']][\$params[''cond_table''][''field'']] = \$row[''sum'']/\$row[''cnt''];
', '{
    "title": "Среднее значение из подтаблицы в основную запись",
    "help": "Данное вычисление используется для вывода в таблице среднего арифметического по подтаблице.",
    "parameters": {
        "cond_table": {
            "type": "TableField",
            "name": "cond_table",
            "only_parent": "true",
            "description": "Выберите таблицу, в которую будет записан результат",
            "field_description": "Выберите поле, в которое будет записан результат"
        },
        "cond_field": {
            "type": "Field",
            "name": "cond_field",
            "type_field": "1",
            "description": "Выберите поле, по которому будет считаться среднее арифметическое"
        }
    }
}', 'calc', 'calc_10.tpl', '');
EOF;
run_query($sql_query);
$sql_query = <<<EOF
INSERT INTO {$config["table_prefix"]}calc_template (name, calculate_tpl, params, type, tpl_name, javascript_tpl) VALUES
('Выбор имени или имени и отчества из ФИО', '\$array = explode(" ", \$line[\$params[''cond_field'']]);
if (\$params[''cond_value''] === ''1'') {
    \$line[\$params[''cond_field'']] = \$array[''1''];
} else {
    \$line[\$params[''cond_field'']] = \$array[''1''] . '' '' . \$array[''2''];
}', '{
    "title": "Выбор имени или имени и отчества из ФИО",
    "help": "Данное вычисление позволяет заменить ФИО на только имя или имя и отчество.",
    "parameters": {
        "cond_field": {
            "type": "Field",
            "name": "cond_field",
            "type_field": "3",
            "description": "Выберите поле, содержащее ФИО"
        },
        "put_value": {
            "type": "List",
            "name": "put_value",
            "values":{"1":"Имя","2":"Имя и отчество"},
            "description": "Выберите данные, которые останутся в поле."
        }
    }
}', 'calc', 'calc_11.tpl', '');
EOF;
run_query($sql_query);