Ejemplo n.º 1
0
             db_query("INSERT INTO ?:se_queue (`data`, `action`, `company_id`, `lang_code`) VALUES (?s, 'facet_update', '{$company_id}', '{$lang_code}')", serialize($filter_ids));
         }
     }
     db_query("INSERT INTO ?:se_queue (`data`, `action`, `company_id`, `lang_code`) VALUES ('N;', 'pages_update', '{$company_id}', '{$lang_code}')");
     db_query("INSERT INTO ?:se_queue (`data`, `action`, `company_id`, `lang_code`) VALUES ('N;', 'categories_update', '{$company_id}', '{$lang_code}')");
     db_query("INSERT INTO ?:se_queue (`data`, `action`, `company_id`, `lang_code`) VALUES ('N;', 'end_full_import', '{$company_id}', '{$lang_code}')");
     $status = true;
 } elseif ($q['action'] == 'start_full_import') {
     $status = fn_se_send_request('/api/state/update/json', $private_key, array('full_import' => 'start'));
     if ($status == true) {
         fn_se_set_import_status('processing', $company_id, $lang_code);
     }
 } elseif ($q['action'] == 'end_full_import') {
     $status = fn_se_send_request('/api/state/update/json', $private_key, array('full_import' => 'done'));
     if ($status == true) {
         fn_se_set_import_status('sent', $company_id, $lang_code);
         fn_se_set_simple_setting('last_resync', TIME);
     }
 } elseif ($q['action'] == 'categories_update') {
     $data = fn_se_get_categories_data($data, $company_id, $lang_code);
     if (!empty($data)) {
         $data = json_encode(array_merge($json_header, array('categories' => $data)));
         $status = fn_se_send_request('/api/items/update/json', $private_key, array('data' => $data));
     }
 } elseif ($q['action'] == 'pages_update') {
     $data = fn_se_get_pages_data($data, $company_id, $lang_code);
     if (!empty($data)) {
         $data = json_encode(array_merge($json_header, array('pages' => $data)));
         $status = fn_se_send_request('/api/items/update/json', $private_key, array('data' => $data));
     }
 } elseif ($q['action'] == 'facet_update') {
Ejemplo n.º 2
0
function fn_se_check_import_is_done($company_id = NULL, $lang_code = NULL)
{
    $skip_time_check = false;
    $engines_data = fn_se_get_engines_data($company_id, $lang_code);
    if ($engines_data) {
        foreach ($engines_data as $engine_data) {
            $c_id = $engine_data['company_id'];
            $l_code = $engine_data['lang_code'];
            if ($engine_data['import_status'] == 'sent') {
                if (TIME - fn_se_get_simple_setting('last_request') > 10 || fn_se_get_simple_setting('last_request') - 10 > TIME || $skip_time_check == true) {
                    $response = fn_se_send_request('/api/state/get/json', fn_se_get_private_key($c_id, $l_code), array('status' => '', 'full_import' => ''));
                    $variables = fn_se_parse_state_response($response);
                    if (!empty($variables) && isset($variables['status'])) {
                        if ($variables['status'] == 'normal' && $variables['full_import'] == 'done') {
                            $skip_time_check = true;
                            fn_se_set_import_status('done', $c_id, $l_code);
                        } elseif ($variables['status'] == 'disabled') {
                            fn_se_set_import_status('none', $c_id, $l_code);
                            //disable status check for disabled engine
                        }
                    }
                }
            }
        }
    }
}