Example #1
0
 /**
  * @return bool
  */
 public function isPatchesAvailable()
 {
     if ($this->_presentVersion->isLessThan($this->_pm->getEnv()->getVersion()) && $this->hasPatches()) {
         return true;
     }
     return false;
 }
Example #2
0
 /**
  * @param $updateData
  * @return mixed
  */
 public function getUpdateData($updateData)
 {
     // slug
     $pluginSlug = $this->_pm->getSlugFilenamePath();
     if (!is_plugin_active($pluginSlug) || !$this->_pm->isPremium() || !property_exists($updateData, 'checked') || empty($updateData->checked)) {
         return $updateData;
     }
     if (!empty($this->_pm->getConfig()->debug->update)) {
         $this->_pm->getLogger()->debug(' --- Update check data ' . $pluginSlug . ' --- ');
         $this->_pm->getLogger()->debug(var_export($updateData, true));
     }
     if ((!property_exists($updateData, 'checked') || empty($updateData->checked)) && (int) $this->_pm->getConfig()->plugin->updateTest == 0) {
         return $updateData;
     }
     if (apply_filters('ifw_woocommerce_is_slug_activated-' . $pluginSlug, false)) {
         $activationData = apply_filters('ifw_woocommerce_get_activation_data-' . $pluginSlug, array());
         $localVersion = $updateData->checked[$pluginSlug];
         $request = $this->_getRequest('upgrade-api');
         if ($request instanceof IfwPsn_Wp_Http_Request) {
             $request->addData('request', 'pluginupdatecheck')->addData('plugin_name', $pluginSlug)->addData('version', $localVersion)->addData('software_version', $localVersion)->addData('activation_email', $activationData['email'])->addData('api_key', $activationData['license'])->addData('domain', $this->_getPlatform())->addData('instance', $this->_getInstance($activationData['license'], $activationData['email']));
         }
         $response = $request->send();
         if ($response->isSuccess()) {
             $responseBody = $response->getBody();
             $remoteData = unserialize($responseBody);
             if (!empty($this->_pm->getConfig()->debug->update)) {
                 $this->_pm->getLogger()->debug('Update check response:');
                 $this->_pm->getLogger()->debug(var_export($remoteData, true));
             }
             if (is_object($remoteData) && !empty($remoteData) && isset($remoteData->new_version) && !empty($remoteData->new_version)) {
                 $remoteVersion = new IfwPsn_Util_Version((string) $remoteData->new_version);
                 if ($remoteVersion->isGreaterThan($localVersion)) {
                     // Feed the update data into WP updater
                     $updateData->response[$pluginSlug] = $remoteData;
                 }
             }
         }
     }
     return $updateData;
 }