コード例 #1
0
ファイル: incidents.php プロジェクト: dsyman2/integriaims
    // Get default variables
    $id_creator = $config["id_user"];
    $sla_disabled = 0;
    $id_task = 0;
    // N/A
    $estado = 1;
    // New
    $resolution = 0;
    // None
    $email_copy = '';
    $email_notify = get_db_value("forced_email", "tgrupo", "id_grupo", $group_id);
    $id_parent = 0;
    $epilog = '';
    $user_responsible = get_group_default_user($group_id);
    $id_user_responsible = $user_responsible['id_usuario'];
    $id_inventory = get_group_default_inventory($group_id, true);
    if ($id_parent == 0) {
        $idParentValue = 'NULL';
    } else {
        $idParentValue = sprintf('%d', $id_parent);
    }
    // DONT use MySQL NOW() or UNIXTIME_NOW() because
    // Integria can override localtime zone by a user-specified timezone.
    $timestamp = print_mysql_timestamp();
    $sql = sprintf('INSERT INTO tincidencia
			(inicio, actualizacion, titulo, descripcion,
			id_usuario, estado, prioridad,
			id_grupo, id_creator, notify_email, id_task,
			resolution, id_incident_type, sla_disabled, email_copy, epilog)
			VALUES ("%s", "%s", "%s", "%s", "%s", %d, %d, %d, "%s",
			%d, %d, %d, %d, %d, "%s", "%s")', $timestamp, $timestamp, $title, $description, $id_user_responsible, $estado, $priority, $group_id, $id_creator, $email_notify, $id_task, $resolution, $id_incident_type, $sla_disabled, $email_copy, $epilog);
コード例 #2
0
ファイル: incident.php プロジェクト: dsyman2/integriaims
 public function insertIncident($title, $description, $group_id, $id_creator = "", $status = 1, $priority = 2, $resolution = 0, $id_task = 0, $sla_disabled = 0, $id_incident_type = 0, $email_copy = "", $email_notify = -1, $id_parent = 0, $epilog = "")
 {
     $system = System::getInstance();
     if ($id_creator == "") {
         $id_creator = $system->getConfig('id_user');
     }
     if ($email_notify == -1) {
         $email_notify = get_db_value("forced_email", "tgrupo", "id_grupo", $group_id);
     }
     if ($id_parent == 0) {
         $idParentValue = 'NULL';
     } else {
         $idParentValue = sprintf('%d', $id_parent);
     }
     $user_responsible = get_group_default_user($group_id);
     $id_user_responsible = $user_responsible['id_usuario'];
     if ($id_user_responsible === false) {
         $id_user_responsible = $system->getConfig('id_user');
     }
     $id_inventory = get_group_default_inventory($group_id, true);
     // DONT use MySQL NOW() or UNIXTIME_NOW() because
     // Integria can override localtime zone by a user-specified timezone.
     $timestamp = print_mysql_timestamp();
     $sql = "INSERT INTO tincidencia\n\t\t\t\t(inicio, actualizacion, titulo, descripcion, id_usuario,\n\t\t\t\testado, prioridad, id_grupo, id_creator, notify_email, id_task,\n\t\t\t\tresolution, id_incident_type, sla_disabled, email_copy, epilog)\n\t\t\t\tVALUES ('{$timestamp}', '{$timestamp}', '{$title}', '{$description}',\n\t\t\t\t'{$id_user_responsible}', {$status}, {$priority}, {$group_id}, '{$id_creator}',\n\t\t\t\t{$email_notify}, {$id_task}, {$resolution}, {$id_incident_type}, {$sla_disabled},\n\t\t\t\t'{$email_copy}', '{$epilog}')";
     $id_incident = process_sql($sql, 'insert_id');
     if ($id_incident !== false) {
         if (include_once $system->getConfig('homedir') . "/include/functions_incidents.php") {
             /* Update inventory objects in incident */
             update_incident_inventories($id_incident, array($id_inventory));
         }
         audit_db($config["id_user"], $config["REMOTE_ADDR"], "Ticket created", "User " . $config['id_user'] . " created ticket #" . $id_incident);
         incident_tracking($id_incident, INCIDENT_CREATED);
         // Email notify to all people involved in this incident
         if ($email_notify) {
             mail_incident($id_incident, $usuario, "", 0, 1);
         }
         // Insert data of incident type fields
         if ($id_incident_type > 0) {
             $sql_label = "SELECT `label` FROM `tincident_type_field` WHERE id_incident_type = {$id_incident_type}";
             $labels = get_db_all_rows_sql($sql_label);
             if ($labels === false) {
                 $labels = array();
             }
             foreach ($labels as $label) {
                 $id_incident_field = get_db_value_filter('id', 'tincident_type_field', array('id_incident_type' => $id_incident_type, 'label' => $label['label']), 'AND');
                 $values_insert['id_incident'] = $id_incident;
                 $values_insert['data'] = $system->getRequest(base64_encode($label['label']));
                 $values_insert['id_incident_field'] = $id_incident_field;
                 $id_incident_field = get_db_value('id', 'tincident_type_field', 'id_incident_type', $id_incident_type);
                 process_sql_insert('tincident_field_data', $values_insert);
             }
         }
         return $id_incident;
     }
 }