예제 #1
0
 public static function getBreadcrumbs($breadcrumbs, $dirname, Legroup_GroupObject $group = null)
 {
     //module name set
     $modHandler = xoops_gethandler('module');
     $module = $modHandler->getByDirname($dirname);
     $breadcrumbs[] = array('name' => $module->name(), 'url' => Legacy_Utils::renderUri($dirname, 'group'));
     if (isset($group) && !$group->isNew()) {
         $breadcrumbs[] = array('name' => $group->getShow('title'), 'url' => Legacy_Utils::renderUri($dirname, 'group', $group->getShow('group_id')));
     }
 }
예제 #2
0
function smarty_function_xoops_cooluri($params, &$smarty)
{
	if(! $params['dirname']) return;
	$dirname = $params['dirname'];
	$dataname = isset($params['dataname']) ? $params['dataname'] : null;
	$dataId = isset($params['data_id']) ? $params['data_id'] : 0;
	$action = isset($params['action']) ? $params['action'] : null;
	$query = isset($params['query']) ? $params['query'] : null;

	echo htmlspecialchars(Legacy_Utils::renderUri($dirname, $dataname, $dataId, $action, $query), ENT_QUOTES);
}
예제 #3
0
 public static function getBreadcrumbs(&$breadcrumbs, $dirname, $category = null)
 {
     //module name set
     $modHandler = xoops_gethandler('module');
     $module = $modHandler->getByDirname($dirname);
     $breadcrumbs[] = array('name' => $module->getVar('name'), 'url' => Legacy_Utils::renderUri($dirname));
     //catetgory name set
     if ($category instanceof Lecat_CatObject) {
         $category->loadCatPath();
         //parent page set
         $idArr = array_reverse($category->mCatPath['cat_id']);
         $titleArr = array_reverse($category->mCatPath['title']);
         foreach (array_keys($idArr) as $key) {
             $breadcrumbs[] = array('name' => $titleArr[$key], 'url' => Legacy_Utils::renderUri($dirname, null, $idArr[$key]));
         }
         $breadcrumbs[] = array('name' => $category->getShow('title'), 'url' => Legacy_Utils::renderUri($dirname, null, $category->getShow('cat_id')));
     }
 }
예제 #4
0
 /**
  * executeViewCancel
  *
  * @param   XCube_RenderTarget  &$render
  *
  * @return  void
  **/
 public function executeViewCancel(&$render)
 {
     $url = $this->_isSubtable() ? Legacy_Utils::renderUri($this->mRoot->mContext->mModuleConfig['maintable'], 'page', $this->mObject->getShow('maintable_id')) : $this->_getNextUri('page', 'list');
     $this->mRoot->mController->executeForward($url);
 }
예제 #5
0
 public static function getBreadcrumbs($breadcrumbs, $dirname, $page = null)
 {
     $categoryDirname = null;
     //module name set
     $modHandler = xoops_gethandler('module');
     $module = $modHandler->getByDirname($dirname);
     $breadcrumbs[] = array('name' => $module->getVar('name'), 'url' => Legacy_Utils::renderUri($dirname));
     //catetgory name set
     if ($page instanceof Xcck_PageObject) {
         if ($page->get('category_id') > 0) {
             $accessController = Xcck_Utils::getAccessController($dirname);
             if ($accessController instanceof XoopsModule) {
                 $categoryDirname = $accessController->getVar('dirname');
             }
             switch ($accessController->getInfo('role')) {
                 case 'cat':
                     $catArr = array();
                     XCube_DelegateUtils::call('Legacy_Category.' . $categoryDirname . '.GetCatPath', new XCube_Ref($catArr), $categoryDirname, $page->get('category_id'), 'ASC');
                     foreach (array_keys($catArr['title']) as $key) {
                         $breadcrumbs[] = array('name' => $catArr['title'][$key], 'url' => Legacy_Utils::renderUri($dirname, 'page', 0, null, 'category_id=' . $catArr['cat_id'][$key]));
                     }
                     break;
                 case 'group':
                     $groupName = null;
                     XCube_DelegateUtils::call('Legacy_Category.' . $categoryDirname . '.GetTitle', new XCube_Ref($groupName), $categoryDirname, $page->get('category_id'));
                     $breadcrumbs[] = array('name' => $groupName, 'url' => Legacy_Utils::renderUri($dirname, 'page', 0, null, 'category_id=' . $page->get('category_id')));
                     break;
                 default:
             }
         }
         //parent page set
         $pageIdArr = array_reverse($page->mPath['page_id']);
         $titleArr = array_reverse($page->mPath['title']);
         foreach (array_keys($pageIdArr) as $key) {
             $breadcrumbs[] = array('name' => $titleArr[$key], 'url' => Legacy_Utils::renderUri($dirname, null, $pageIdArr[$key]));
         }
     }
 }
예제 #6
0
 /**
  * executeViewSuccess
  * 
  * @param   XCube_RenderTarget  &$render
  * 
  * @return  void
  **/
 public function executeViewSuccess(&$render)
 {
     $url = null;
     XCube_DelegateUtils::call('Module.' . $this->mAsset->mDirname . '.Event.GetForwardUri.Success', new XCube_Ref($url), $this->mObject);
     if (isset($url)) {
         $this->mRoot->mController->executeForward($url);
     }
     if ($this->mRoot->mContext->mModuleConfig['forward_action'] === 'list') {
         $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mAsset->mDirname));
     }
     if ($this->mRoot->mContext->mModuleConfig['forward_action'] === 'search') {
         $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mAsset->mDirname, 'page', 0, 'search'));
     } else {
         $this->mRoot->mController->executeForward($this->_getNextUri('page'));
     }
 }
예제 #7
0
 /**
  * _getBaseUrl
  * 
  * @param    void
  * 
  * @return    string
  **/
 protected function _getBaseUrl()
 {
     return Legacy_Utils::renderUri($this->mAsset->mDirname, 'member');
 }
 /**
  * save workflow
  *
  * @param XoopsSimpleObject	$obj
  *
  * @return	void
  */
 protected function _saveWorkflow($obj)
 {
     XCube_DelegateUtils::call('Legacy_Workflow.AddItem', $obj->getShow($this->mPrimary), $obj->getDirname(), $this->getDataname(), $obj->get($obj->getPrimary()), Legacy_Utils::renderUri($obj->getDirname(), $this->getDataname(), $obj->get($this->mPrimary)));
 }
예제 #9
0
 /**
  * _getIncSearchScript
  * 
  * @param	void
  * 
  * @return	string
  **/
 protected function _getIncSearchScript()
 {
     $searchList = Playermap_Utils::getSearchList('group');
     $base = rtrim(Legacy_Utils::renderUri($this->mAsset->mDirname, 'group', 1), 1);
     $idString = implode(',', $searchList['id']);
     $titleString = '"' . implode('","', $searchList['title']) . '"';
     $searchString = '"' . implode('","', $searchList['search']) . '"';
     return sprintf('var arr={"title":[%s],"search":[%s],"id":[%s]};$("#incsearch").add_incsearch_on($("#searchList"),arr,"%s");', $titleString, $searchString, $idString, $base);
 }
예제 #10
0
 /**
  * executeViewCancel
  * 
  * @param	XCube_RenderTarget	&$render
  * 
  * @return	void
  **/
 public function executeViewCancel(&$render)
 {
     $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mAsset->mDirname, 'cat', $this->mCatId));
 }
예제 #11
0
 /**
  * _getBaseUrl
  * 
  * @param	void
  * 
  * @return	string
  **/
 protected function _getBaseUrl()
 {
     return Legacy_Utils::renderUri($this->mAsset->mDirname, $this->_getConst('DATANAME'));
 }
예제 #12
0
 /**
  * getClientFeed    Legacy_ActivityClient.{dirname}.GetClientFeed
  *
  * @param mixed     &$list
  *  string[]    $list['title']  entry's title
  *  string[]    $list['link']   link to entry
  *  string[]    $list['id']     entry's id(=permalink to entry)
  *  int[]       $list['updated']    unixtime
  *  int[]       $list['published']  unixtime
  *  string[]    $list['author']
  *  string[]    $list['content']
  * @param string    $dirname    client module's dirname
  * @param string    $dataname   client module's dataname(tablename)
  * @param int       $dataId     client module's primary key
  *
  * @return  void
  */
 public static function getClientFeed(&$list, $dirname, $dataname, $dataId)
 {
     $handler = Legacy_Utils::getModuleHandler($dataname, $dirname);
     if (!$handler) {
         return;
     }
     //setup client module info
     $obj = $handler->get($dataId);
     $list['title'] = $obj->get('title');
     $list['link'] = Legacy_Utils::renderUri($dirname, $dataname, $dataId);
     $list['id'] = Legacy_Utils::renderUri($dirname, $dataname, $dataId);
     $list['published'] = $obj->get('posttime');
     $list['updated'] = $obj->get('updatetime');
     $list['author'] = Legacy_Utils::getUserName($obj->get('uid'));
     $list['content'] = null;
 }
예제 #13
0
 public function showField($obj, $key, $option = 0)
 {
     if ($option == Xcck_ActionType::NONE || $option == Xcck_ActionType::VIEW) {
         $fileManager = new Xcck_File($obj);
         if ($fileManager->existFile($key) === true) {
             $unit = $this->getOption($obj->mDef[$key], 'unit');
             $value = sprintf('<a href="%s">%s (%s%s)</a>', Legacy_Utils::renderUri($obj->getDirname(), $obj->getDataname(), $obj->getShow('page_id'), 'download', 'field_name=' . $key), $obj->getShow($key), $fileManager->getFileSize($key, $unit), $unit);
         }
     } elseif ($option == Xcck_ActionType::EDIT) {
         $value = $obj->get($key);
     }
     return $value;
 }
예제 #14
0
 /**
  * executeViewSuccess
  * 
  * @param	XCube_RenderTarget	&$render
  * 
  * @return	void
  **/
 public function executeViewSuccess(&$render)
 {
     if ($this->mObject->isNew()) {
         $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mAsset->mDirname, 'entry', 0, 'edit', 'log_id=' . $this->mObject->get('log_id')));
     } else {
         $this->mRoot->mController->executeForward($this->_getNextUri('log'));
     }
 }
예제 #15
0
 /**
  * executeViewCancel
  * 
  * @param    XCube_RenderTarget    &$render
  * 
  * @return    void
  **/
 public function executeViewCancel(&$render)
 {
     $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mAsset->mDirname, 'group', $this->mObject->getShow('group_id')));
 }
예제 #16
0
 /**
  * _getNextUri
  * 
  * @param    void
  * 
  * @return    string
  **/
 protected function _getNextUri($tableName, $actionName = null)
 {
     $handler = $this->_getHandler();
     if ($this->mObject) {
         return Legacy_Utils::renderUri($this->mAsset->mDirname, $tableName, intval($this->mRoot->mContext->mRequest->getRequest('group_id')), $actionName);
     } else {
         return Legacy_Utils::renderUri($this->mAsset->mDirname, $tableName, 0, $actionName);
     }
 }
예제 #17
0
 /**
  * _getNextUri
  * 
  * @param	void
  * 
  * @return	string
  **/
 protected function _getNextUri($tableName, $actionName = null)
 {
     $handler = $this->_getHandler();
     if ($this->mObject->get($handler->mPrimary) > 0) {
         return Legacy_Utils::renderUri($this->mAsset->mDirname, $tableName, $this->mObject->get($handler->mPrimary), $actionName);
     } else {
         return Legacy_Utils::renderUri($this->mAsset->mDirname, $tableName, 0, $actionName);
     }
 }
예제 #18
0
 /**
  * renderUri
  * 
  * @param   string  $action ex) 'edit', 'delete', 'view'
  * 
  * @return  string
  */
 public function renderUri($action = null)
 {
     $dataname = $this->_mMainTable == $this->getDataname() ? null : $this->getDataname();
     return Legacy_Utils::renderUri($this->getDirname(), $dataname, $this->get($this->getPrimary()), $action);
 }
예제 #19
0
 /**
  * _getBaseUrl
  * 
  * @param	void
  * 
  * @return	string
  **/
 protected function _getBaseUrl()
 {
     return Legacy_Utils::renderUri($this->mAsset->mDirname, 'page', null, 'search');
 }
예제 #20
0
 /**
  * executeViewSuccess
  * 
  * @param   XCube_RenderTarget  &$render
  * 
  * @return  void
  **/
 public function executeViewSuccess(&$render)
 {
     $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mAsset->mDirname, 'definition'));
 }
예제 #21
0
 /**
  * _getForwardUrl
  * 
  * @param	void
  * 
  * @return	string
  **/
 protected function _getForwardUrl()
 {
     return Legacy_Utils::renderUri($this->mAsset->mDirname);
 }
예제 #22
0
 /**
  * getImageTag
  * 
  * @param	XoopsSimpleObject	$obj
  * @param	int		$tsize
  * @param	string	$link
  * 
  * @return	XoopsSimpleObject[]
  **/
 public static function getImageTag($obj, $tsize = 1, $link = null)
 {
     $tag = null;
     $image = $obj->getImage();
     if ($image) {
         switch ($link) {
             case 'original':
                 $html = '<a href="%s">%s</a>';
                 $tag = sprintf($html, $image->getFileUrl(), $image->makeImageTag($tsize));
                 break;
             case 'source':
                 $html = '<a href="%s">%s</a>';
                 $tag = sprintf($html, Legacy_Utils::renderUri($image->getShow('dirname'), $image->getShow('dataname'), $image->getShow('data_id')), $image->makeImageTag($tsize));
                 break;
             default:
                 $tag = $image->makeImageTag($tsize);
                 break;
         }
     } else {
         switch ($tsize) {
             case 1:
                 $noimage = 'noimage120.gif';
                 break;
             case 2:
                 $noimage = 'noimage80.gif';
                 break;
         }
         switch ($link) {
             case 'source':
                 $html = '<a href="%s"><img src="%s%s" alt="noimage" /></a>';
                 $tag = sprintf($html, Legacy_Utils::renderUri($obj->getDirname(), $obj->getDataname(), $obj->getShow($obj->getPrimary())), XOOPS_MODULE_URL . '/playermap/images/', $noimage);
                 break;
             default:
                 $tag = sprintf('<img src="%s%s" alt="noimage" />', XOOPS_MODULE_URL . '/playermap/images/', $noimage);
                 break;
         }
     }
     return $tag;
 }
예제 #23
0
 /**
  * executeViewCancel
  * 
  * @param   XCube_RenderTarget  &$render
  * 
  * @return  void
  **/
 public function executeViewCancel(&$render)
 {
     $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mRoot->mContext->mModuleConfig['maintable'], 'page', $this->mObject->getShow('maintable_id')));
 }
예제 #24
0
 /**
  * renderUri
  * 
  * @param	void
  * 
  * @return	string
  */
 public function renderUri()
 {
     return Legacy_Utils::renderUri($this->getDirname(), null, $this->get(self::PRIMARY));
 }
예제 #25
0
 /**
  * executeViewSuccess
  * 
  * @param	XCube_RenderTarget	&$render
  * 
  * @return	void
  **/
 public function executeViewSuccess(&$render)
 {
     $this->mRoot->mController->executeForward(Legacy_Utils::renderUri($this->mAsset->mDirname, 'log', $this->mObject->get('log_id')));
 }
 /**
  * renderUri
  * 
  * @param	string	$action
  * 
  * @return	string
  */
 public function renderUri($action = null)
 {
     return Legacy_Utils::renderUri($this->getDirname(), $this->getDataname(), $this->get($this->getPrimary()), $action);
 }
예제 #27
0
 /**
  * getGroupListByIds
  * 
  * @param	int[]	$list
  * 
  * @return	int[]
  **/
 public function getGroupListByIds($list)
 {
     $objs = $this->getObjects(new Criteria($this->mPrimary, $list, 'IN'));
     $ret = array('group_id' => array(), 'title' => array(), 'url' => array());
     foreach (array_keys($objs) as $key) {
         $ret['group_id'][] = $objs[$key]->getShow('group_id');
         $ret['title'][] = $objs[$key]->getShow('title');
         $ret['url'][] = Legacy_Utils::renderUri($this->getDirname(), 'group', $objs[$key]->getShow('group_id'));
     }
     return $ret;
 }