Example #1
0
                 unset($_POST['icl_trid']);
                 $item_updated = true;
             }
         }
         if ($item_updated) {
             $updated_items++;
         }
         if ($updated_items >= 20) {
             break;
         }
     }
     echo json_encode(array('updated' => $updated_items));
     exit;
 case 'sync_cancelled':
     $iclq = new ICanLocalizeQuery($sitepress_settings['site_id'], $sitepress_settings['access_key']);
     $requests = $iclq->cms_requests_all();
     if ($requests === false) {
         echo json_encode(array('errors' => 1, 'message' => 'Failed fetching jobs list from the server.'));
         exit;
     }
     $cms_ids = array();
     if (!empty($requests)) {
         foreach ($requests as $request) {
             $cms_ids[] = $request['cms_id'];
         }
     }
     // get jobs that are in progress
     $translations = $wpdb->get_results("\n                SELECT t.element_id, t.element_type, t.language_code, t.source_language_code, t.trid, \n                    s.rid, s._prevstate, s.translation_id \n                FROM {$wpdb->prefix}icl_translation_status s \n                JOIN {$wpdb->prefix}icl_translations t\n                    ON t.translation_id = s.translation_id    \n                WHERE s.translation_service='icanlocalize'\n                AND s.status = " . ICL_TM_IN_PROGRESS . "\n            ");
     $job2delete = $rids2cancel = array();
     foreach ($translations as $t) {
         $original_id = $wpdb->get_var($wpdb->prepare("SELECT element_id FROM {$wpdb->prefix}icl_translations\n                    WHERE trid=%d AND source_language_code IS NULL", $t->trid));