Пример #1
0
 public static function conduitUpdate($id)
 {
     $getConduit = DB::table('conduit_api')->where('id', '=', $id)->first();
     $curlParams = array('apiPublic' => $getConduit->api_public_key, 'apiPrivate' => $getConduit->api_private_key);
     $curlParamString = '';
     foreach ($curlParams as $key => $value) {
         $curlParamString .= $key . '=' . $value . '&';
     }
     $conduit = APIController::conduitSend($getConduit->url_to_api_file, count($curlParams), $curlParamString);
     if ($conduit->output !== 'CONDUIT_CONNECTED') {
         if ($conduit->output === 'INVALID_PUB_OR_PRI') {
             echo 'Incorrect API keys provided for Conduit';
         } else {
             echo 'Unknown error occurred, Conduit may be inaccessible';
         }
         exit;
     }
     $performUpdate = $curlParamString . 'do=conduitUpdate';
     $conduit = APIController::conduitSend($getConduit->url_to_api_file, 4, $performUpdate);
     $params = array('id' => $getConduit->id, 'conduitUri' => $getConduit->url_to_api_file);
     if ($conduit->output === 'CONDUIT_UPDATE_NOT_REQUIRED') {
         $params['updateOutput'] = 'Conduit is already up to date.';
     } else {
         if ($conduit->output === 'CONDUIT_UPDATE_ERROR') {
             $params['updateOutput'] = 'Conduit failed to update - may not be able to write files.';
         } else {
             if ($conduit->output === 'CONDUIT_UPDATE_SUCCESS') {
                 $params['updateOutput'] = 'Conduit update successful.';
             } else {
                 $params['updateOutput'] = 'Unknown error occurred: ' . $conduit->output;
             }
         }
     }
     return ViewController::show('conduit.update', 'Conduit@' . $getConduit->url_to_api_file, $params, 'conduit');
 }