Ejemplo n.º 1
0
 /**
  * Method collects and stores extension version details into the database.
  *
  * @param SplSubject &$subject a subject notifying this observer
  * @return void
  */
 protected function loadIntoDatabase(\SplSubject &$subject)
 {
     // flush every 50 rows to database
     if ($this->sumRecords !== 0 && $this->sumRecords % 50 === 0) {
         $GLOBALS['TYPO3_DB']->exec_INSERTmultipleRows('tx_extensionmanager_domain_model_extension', self::$fieldNames, $this->arrRows, self::$fieldIndicesNoQuote);
         $this->arrRows = array();
     }
     $versionRepresentations = \TYPO3\CMS\Core\Utility\VersionNumberUtility::convertVersionStringToArray($subject->getVersion());
     // order must match that of self::$fieldNamses!
     $this->arrRows[] = array($subject->getExtkey(), $subject->getVersion(), $versionRepresentations['version_int'], intval($subject->getAlldownloadcounter()), intval($subject->getDownloadcounter()), !is_null($subject->getTitle()) ? $subject->getTitle() : '', $subject->getOwnerusername(), !is_null($subject->getAuthorname()) ? $subject->getAuthorname() : '', !is_null($subject->getAuthoremail()) ? $subject->getAuthoremail() : '', !is_null($subject->getAuthorcompany()) ? $subject->getAuthorcompany() : '', intval($subject->getLastuploaddate()), $subject->getT3xfilemd5(), $this->repositoryUid, $this->extensionModel->getDefaultState($subject->getState() ? $subject->getState() : ''), intval($subject->getReviewstate()), $this->extensionModel->getDefaultCategory($subject->getCategory() ? $subject->getCategory() : ''), $subject->getDescription() ? $subject->getDescription() : '', $subject->getDependencies() ? $subject->getDependencies() : '', $subject->getUploadcomment() ? $subject->getUploadcomment() : '');
     ++$this->sumRecords;
 }