Esempio n. 1
0
 /**
  * @brief document의 확장 변수 키값을 가져오는 함수
  * $form_include : 글 작성시에 필요한 확장변수의 input form 추가 여부
  **/
 function getExtraKeys($module_srl)
 {
     if (is_null($GLOBALS['XE_EXTRA_KEYS'][$module_srl])) {
         $oExtraVar =& ExtraVar::getInstance($module_srl);
         $obj->module_srl = $module_srl;
         $obj->sort_index = 'var_idx';
         $obj->order = 'asc';
         $output = executeQueryArray('document.getDocumentExtraKeys', $obj);
         $oExtraVar->setExtraVarKeys($output->data);
         $keys = $oExtraVar->getExtraVars();
         if (!$keys) {
             $keys = array();
         }
         $GLOBALS['XE_EXTRA_KEYS'][$module_srl] = $keys;
     }
     return $GLOBALS['XE_EXTRA_KEYS'][$module_srl];
 }
Esempio n. 2
0
 /**
  * Function to retrieve the key values of the extended variable document
  * $Form_include: writing articles whether to add the necessary extensions of the variable input form
  * @param int $module_srl
  * @return array
  */
 function getExtraKeys($module_srl)
 {
     if (!isset($GLOBALS['XE_EXTRA_KEYS'][$module_srl])) {
         $keys = false;
         $oCacheHandler = CacheHandler::getInstance('object', null, true);
         if ($oCacheHandler->isSupport()) {
             $object_key = 'module_document_extra_keys:' . $module_srl;
             $cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key);
             $keys = $oCacheHandler->get($cache_key);
         }
         $oExtraVar = ExtraVar::getInstance($module_srl);
         if ($keys === false) {
             $obj = new stdClass();
             $obj->module_srl = $module_srl;
             $obj->sort_index = 'var_idx';
             $obj->order = 'asc';
             $output = executeQueryArray('document.getDocumentExtraKeys', $obj);
             // correcting index order
             $isFixed = FALSE;
             if (is_array($output->data)) {
                 $prevIdx = 0;
                 foreach ($output->data as $no => $value) {
                     // case first
                     if ($prevIdx == 0 && $value->idx != 1) {
                         $args = new stdClass();
                         $args->module_srl = $module_srl;
                         $args->var_idx = $value->idx;
                         $args->new_idx = 1;
                         executeQuery('document.updateDocumentExtraKeyIdx', $args);
                         executeQuery('document.updateDocumentExtraVarIdx', $args);
                         $prevIdx = 1;
                         $isFixed = TRUE;
                         continue;
                     }
                     // case others
                     if ($prevIdx > 0 && $prevIdx + 1 != $value->idx) {
                         $args = new stdClass();
                         $args->module_srl = $module_srl;
                         $args->var_idx = $value->idx;
                         $args->new_idx = $prevIdx + 1;
                         executeQuery('document.updateDocumentExtraKeyIdx', $args);
                         executeQuery('document.updateDocumentExtraVarIdx', $args);
                         $prevIdx += 1;
                         $isFixed = TRUE;
                         continue;
                     }
                     $prevIdx = $value->idx;
                 }
             }
             if ($isFixed) {
                 $output = executeQueryArray('document.getDocumentExtraKeys', $obj);
             }
             $oExtraVar->setExtraVarKeys($output->data);
             $keys = $oExtraVar->getExtraVars();
             if (!$keys) {
                 $keys = array();
             }
             if ($oCacheHandler->isSupport()) {
                 $oCacheHandler->put($cache_key, $keys);
             }
         }
         $GLOBALS['XE_EXTRA_KEYS'][$module_srl] = $keys;
     }
     return $GLOBALS['XE_EXTRA_KEYS'][$module_srl];
 }
Esempio n. 3
0
 /**
  * Function to retrieve the key values of the extended variable document
  * $Form_include: writing articles whether to add the necessary extensions of the variable input form
  * @param int $module_srl
  * @return array
  */
 function getExtraKeys($module_srl)
 {
     if (is_null($GLOBALS['XE_EXTRA_KEYS'][$module_srl])) {
         $oExtraVar =& ExtraVar::getInstance($module_srl);
         $obj->module_srl = $module_srl;
         $obj->sort_index = 'var_idx';
         $obj->order = 'asc';
         $output = executeQueryArray('document.getDocumentExtraKeys', $obj);
         // correcting index order
         $isFixed = FALSE;
         if (is_array($output->data)) {
             $prevIdx = 0;
             foreach ($output->data as $no => $value) {
                 // case first
                 if ($prevIdx == 0 && $value->idx != 1) {
                     $args = new stdClass();
                     $args->module_srl = $module_srl;
                     $args->var_idx = $value->idx;
                     $args->new_idx = 1;
                     executeQuery('document.updateDocumentExtraKeyIdx', $args);
                     executeQuery('document.updateDocumentExtraVarIdx', $args);
                     $prevIdx = 1;
                     $isFixed = TRUE;
                     continue;
                 }
                 // case others
                 if ($prevIdx > 0 && $prevIdx + 1 != $value->idx) {
                     $args = new stdClass();
                     $args->module_srl = $module_srl;
                     $args->var_idx = $value->idx;
                     $args->new_idx = $prevIdx + 1;
                     executeQuery('document.updateDocumentExtraKeyIdx', $args);
                     executeQuery('document.updateDocumentExtraVarIdx', $args);
                     $prevIdx += 1;
                     $isFixed = TRUE;
                     continue;
                 }
                 $prevIdx = $value->idx;
             }
         }
         if ($isFixed) {
             $output = executeQueryArray('document.getDocumentExtraKeys', $obj);
         }
         $oExtraVar->setExtraVarKeys($output->data);
         $keys = $oExtraVar->getExtraVars();
         if (!$keys) {
             $keys = array();
         }
         $GLOBALS['XE_EXTRA_KEYS'][$module_srl] = $keys;
     }
     return $GLOBALS['XE_EXTRA_KEYS'][$module_srl];
 }