Ejemplo n.º 1
0
 /**
  * @param TranslationProxy_Service $service
  * @param bool                     $force
  *
  * @throw TranslationProxy_Project
  * @return TranslationProxy_Project
  */
 public static function create_project($service, $force = false)
 {
     // Recover existing project on the service
     $icl_translation_projects = self::get_translation_projects();
     $delivery_method = self::get_delivery_method();
     $delivery = $delivery_method == ICL_PRO_TRANSLATION_PICKUP_XMLRPC ? "xmlrpc" : "polling";
     $project_index = TranslationProxy_Project::generate_service_index($service);
     if (!$force && isset($icl_translation_projects[$project_index])) {
         $project = self::load_existing_project($service, $delivery);
     } else {
         $url = get_option('siteurl');
         $name = get_option('blogname');
         $description = get_option('blogdescription');
         $blog_id = get_current_blog_id();
         $affiliate_id = defined('ICL_AFFILIATE_ID') ? ICL_AFFILIATE_ID : '';
         $affiliate_key = defined('ICL_AFFILIATE_KEY') ? ICL_AFFILIATE_KEY : '';
         $project = new TranslationProxy_Project($service);
         $result = $project->create($url, $name, $description, $blog_id, $delivery, $affiliate_key, $affiliate_id);
         if (!$result || count($project->errors)) {
             self::append_errors($project->errors);
             return false;
         }
     }
     return $project;
 }
 /**
  * @param TranslationProxy_Service $service
  * @param bool                     $force
  *
  * @throw TranslationProxy_Project
  * @return TranslationProxy_Project
  */
 private static function create_project($service, $force = false)
 {
     $icl_translation_projects = self::get_translation_projects();
     $delivery_method = self::get_delivery_method();
     $delivery = $delivery_method == ICL_PRO_TRANSLATION_PICKUP_XMLRPC ? "xmlrpc" : "polling";
     $project_index = TranslationProxy_Project::generate_service_index($service);
     if (!$force && isset($icl_translation_projects[$project_index])) {
         $project = self::load_existing_project($service, $delivery);
     } else {
         $url = get_option('siteurl');
         $name = get_option('blogname');
         $description = get_option('blogdescription');
         $project = new TranslationProxy_Project($service);
         $site_key = WP_Installer()->get_site_key('wpml');
         $result = $project->create($url, $name, $description, $delivery, $site_key);
         if (!$result || count($project->errors)) {
             self::append_errors($project->errors);
             $project = false;
         }
     }
     return $project;
 }