/**
  * Construction function.
  *
  * @param array $duplicationData
  * @param array $duplicationSettings
  * @param array $fieldsValues
  */
 public function __construct(array $duplicationData = array(), array $duplicationSettings = array(), $fieldsValues = array())
 {
     $this->objectManager = Core::getObjectManager();
     $this->database = Core::getDatabase();
     $this->extensionConfiguration = Core::getExtensionConfiguration();
     $this->result = $this->objectManager->get('TYPO3\\CMS\\Extbase\\Error\\Result');
     $this->setDuplicationData($duplicationData);
     $this->setDuplicationSettings($duplicationSettings);
     $this->initializeFields($fieldsValues);
 }
 /**
  * Construction function.
  *
  * @param array $duplicationData
  * @param array $duplicationSettings
  * @param array $fieldsValues
  */
 public function __construct(array $duplicationData = [], array $duplicationSettings = [], $fieldsValues = [])
 {
     $this->objectManager = Core::getObjectManager();
     $this->database = Core::getDatabase();
     $this->extensionConfiguration = Core::getExtensionConfiguration();
     $this->result = $this->objectManager->get(Result::class);
     $this->setDuplicationData($duplicationData);
     $this->setDuplicationSettings($duplicationSettings);
     $this->initializeFields($fieldsValues);
 }
 /**
  * Returns a select containing all the Backend users.
  *
  * @param    array $options Current options of the field.
  * @return    string                The HTML code containing the <select> tag with filled options.
  */
 public function getBackendUsersSelect($options)
 {
     $html = '<select name="' . $options['fieldName'] . '">';
     $backendUserGroups = GeneralUtility::array_merge([0 => ['uid' => -1, 'title' => '']], Core::getDatabase()->exec_SELECTgetRows('uid, username', 'be_users', '1=1'));
     foreach ($backendUserGroups as $group) {
         $selected = $group['uid'] == $options['fieldValue'] ? ' selected="selected"' : '';
         $uidLabel = $group['uid'] != -1 ? ' [' . $group['uid'] . ']' : '';
         $html .= '<option value="' . $group['uid'] . '"' . $selected . '>' . $group['username'] . $uidLabel . '</option>';
     }
     $html .= '</select>';
     return $html;
 }
 /**
  * If no template exists for the given page, a new one is created.
  *
  * @param	int	$pageUid	The page uid.
  */
 public static function createPageTemplateIfNone($pageUid)
 {
     if (self::getPageTemplate($pageUid) === false) {
         Core::getDatabase()->exec_INSERTquery('sys_template', array('pid' => intval($pageUid), 'title' => 'Site Factory Template', 'tstamp' => time(), 'crdate' => time()));
     }
 }