本文整理汇总了PHP中Context::isAllowRewrite方法的典型用法代码示例。如果您正苦于以下问题:PHP Context::isAllowRewrite方法的具体用法?PHP Context::isAllowRewrite怎么用?PHP Context::isAllowRewrite使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Context
的用法示例。
在下文中一共展示了Context::isAllowRewrite方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: triggerRssUrlInsert
/**
* Check whether to use RSS rss url by adding
*
* @return Object
*/
function triggerRssUrlInsert()
{
$oModuleModel = getModel('module');
$total_config = $oModuleModel->getModuleConfig('rss');
$current_module_srl = Context::get('module_srl');
$site_module_info = Context::get('site_module_info');
if (is_array($current_module_srl)) {
unset($current_module_srl);
}
if (!$current_module_srl) {
$current_module_info = Context::get('current_module_info');
$current_module_srl = $current_module_info->module_srl;
}
if (!$current_module_srl) {
return new Object();
}
// Imported rss settings of the selected module
$oRssModel = getModel('rss');
$rss_config = $oRssModel->getRssModuleConfig($current_module_srl);
if ($rss_config->open_rss != 'N') {
Context::set('rss_url', $oRssModel->getModuleFeedUrl(Context::get('vid'), Context::get('mid'), 'rss'));
Context::set('atom_url', $oRssModel->getModuleFeedUrl(Context::get('vid'), Context::get('mid'), 'atom'));
}
if (Context::isInstalled() && $site_module_info->mid == Context::get('mid') && $total_config->use_total_feed != 'N') {
if (Context::isAllowRewrite() && !Context::get('vid')) {
$request_uri = Context::getRequestUri();
Context::set('general_rss_url', $request_uri . 'rss');
Context::set('general_atom_url', $request_uri . 'atom');
} else {
Context::set('general_rss_url', getUrl('', 'module', 'rss', 'act', 'rss'));
Context::set('general_atom_url', getUrl('', 'module', 'rss', 'act', 'atom'));
}
}
return new Object();
}
示例2: getModuleFeedUrl
/**
* Create the Feed url.
*
* @param string $vid Vid
* @param string $mid mid
* @param string $format Feed format. ef)xe, atom, rss1.0
* @return string
**/
function getModuleFeedUrl($vid = null, $mid, $format)
{
if (Context::isAllowRewrite()) {
$request_uri = Context::getRequestUri();
// If the virtual site variable exists and it is different from mid (vid and mid should not be the same)
if ($vid && $vid != $mid) {
return $request_uri . $vid . '/' . $mid . '/' . $format;
} else {
return $request_uri . $mid . '/' . $format;
}
} else {
return getUrl('', 'mid', $mid, 'act', $format);
}
}
示例3: triggerRssUrlInsert
/**
* @brief RSS 사용 유무를 체크하여 rss url 추가
**/
function triggerRssUrlInsert()
{
$oModuleModel =& getModel('module');
$total_config = $oModuleModel->getModuleConfig('rss');
$current_module_srl = Context::get('module_srl');
$site_module_info = Context::get('site_module_info');
if (!$current_module_srl) {
$current_module_info = Context::get('current_module_info');
$current_module_srl = $current_module_info->module_srl;
}
if (!$current_module_srl) {
return new Object();
}
// 선택된 모듈의 rss설정을 가져옴
$oRssModel =& getModel('rss');
$rss_config = $oRssModel->getRssModuleConfig($current_module_srl);
if ($rss_config->open_rss != 'N') {
if (Context::isAllowRewrite()) {
$request_uri = Context::getRequestUri();
// 가상 사이트 변수가 있고 이 변수가 mid와 다를때. (vid와 mid는 같을 수 없다고 함)
if (Context::get('vid') && Context::get('vid') != Context::get('mid')) {
Context::set('rss_url', Context::getRequestUri() . Context::get('vid') . '/' . Context::get('mid') . '/rss');
Context::set('atom_url', Context::getRequestUri() . Context::get('vid') . '/' . Context::get('mid') . '/atom');
} else {
Context::set('rss_url', $request_uri . Context::get('mid') . '/rss');
Context::set('atom_url', $request_uri . Context::get('mid') . '/atom');
}
} else {
Context::set('rss_url', getUrl('', 'mid', Context::get('mid'), 'act', 'rss'));
Context::set('atom_url', getUrl('', 'mid', Context::get('mid'), 'act', 'atom'));
}
}
if (Context::isInstalled() && $site_module_info->mid == Context::get('mid') && $total_config->use_total_feed != 'N') {
if (Context::isAllowRewrite() && !Context::get('vid')) {
$request_uri = Context::getRequestUri();
Context::set('general_rss_url', $request_uri . 'rss');
Context::set('general_atom_url', $request_uri . 'atom');
} else {
Context::set('general_rss_url', getUrl('', 'module', 'rss', 'act', 'rss'));
Context::set('general_atom_url', getUrl('', 'module', 'rss', 'act', 'atom'));
}
}
return new Object();
}
示例4: prepareToPrint
/**
* when display mode is HTML, prepare code before print.
* @param string $output compiled template string
* @return void
*/
function prepareToPrint(&$output)
{
if (Context::getResponseMethod() != 'HTML') {
return;
}
if (__DEBUG__ == 3) {
$start = getMicroTime();
}
// move <style ..></style> in body to the header
$output = preg_replace_callback('!<style(.*?)>(.*?)<\\/style>!is', array($this, '_moveStyleToHeader'), $output);
// move <link ..></link> in body to the header
$output = preg_replace_callback('!<link(.*?)/>!is', array($this, '_moveLinkToHeader'), $output);
// move <meta ../> in body to the header
$output = preg_replace_callback('!<meta(.*?)(?:\\/|)>!is', array($this, '_moveMetaToHeader'), $output);
// change a meta fine(widget often put the tag like <!--Meta:path--> to the content because of caching)
$output = preg_replace_callback('/<!--(#)?Meta:([a-z0-9\\_\\-\\/\\.\\@]+)-->/is', array($this, '_transMeta'), $output);
// handles a relative path generated by using the rewrite module
if (Context::isAllowRewrite()) {
$url = parse_url(Context::getRequestUri());
$real_path = $url['path'];
$pattern = '/src=("|\'){1}(\\.\\/)?(files\\/attach|files\\/cache|files\\/faceOff|files\\/member_extra_info|modules|common|widgets|widgetstyle|layouts|addons)\\/([^"\']+)\\.(jpg|jpeg|png|gif)("|\'){1}/s';
$output = preg_replace($pattern, 'src=$1' . $real_path . '$3/$4.$5$6', $output);
$pattern = '/href=("|\'){1}(\\?[^"\']+)/s';
$output = preg_replace($pattern, 'href=$1' . $real_path . '$2', $output);
if (Context::get('vid')) {
$pattern = '/\\/' . Context::get('vid') . '\\?([^=]+)=/is';
$output = preg_replace($pattern, '/?$1=', $output);
}
}
// prevent the 2nd request due to url(none) of the background-image
$output = preg_replace('/url\\((["\']?)none(["\']?)\\)/is', 'none', $output);
if (is_array(Context::get('INPUT_ERROR'))) {
$INPUT_ERROR = Context::get('INPUT_ERROR');
$keys = array_keys($INPUT_ERROR);
$keys = '(' . implode('|', $keys) . ')';
$output = preg_replace_callback('@(<input)([^>]*?)\\sname="' . $keys . '"([^>]*?)/?>@is', array(&$this, '_preserveValue'), $output);
$output = preg_replace_callback('@<select[^>]*\\sname="' . $keys . '".+</select>@isU', array(&$this, '_preserveSelectValue'), $output);
$output = preg_replace_callback('@<textarea[^>]*\\sname="' . $keys . '".+</textarea>@isU', array(&$this, '_preserveTextAreaValue'), $output);
}
if (__DEBUG__ == 3) {
$GLOBALS['__trans_content_elapsed__'] = getMicroTime() - $start;
}
// Remove unnecessary information
$output = preg_replace('/member\\_\\-([0-9]+)/s', 'member_0', $output);
// set icon
$oAdminModel = getAdminModel('admin');
$favicon_url = $oAdminModel->getFaviconUrl();
$mobicon_url = $oAdminModel->getMobileIconUrl();
Context::set('favicon_url', $favicon_url);
Context::set('mobicon_url', $mobicon_url);
// convert the final layout
Context::set('content', $output);
$oTemplate = TemplateHandler::getInstance();
if (Mobile::isFromMobilePhone()) {
$this->_loadMobileJSCSS();
$output = $oTemplate->compile('./common/tpl', 'mobile_layout');
} else {
$this->_loadJSCSS();
$output = $oTemplate->compile('./common/tpl', 'common_layout');
}
// replace the user-defined-language
$oModuleController = getController('module');
$oModuleController->replaceDefinedLangCode($output);
}
示例5: dispTextyleToolPostManageWrite
/**
* @brie display textule tool post manage write
**/
function dispTextyleToolPostManageWrite()
{
// set filter
Context::addJsFilter($this->module_path . 'tpl/filter', 'save_post.xml');
$oDocumentModel =& getModel('document');
$document_srl = Context::get('document_srl');
$material_srl = Context::get('material_srl');
if ($document_srl) {
$oDocument = $oDocumentModel->getDocument($document_srl, false, false);
} else {
$document_srl = 0;
$oDocument = $oDocumentModel->getDocument(0);
if ($material_srl) {
$oMaterialModel =& getModel('material');
$output = $oMaterialModel->getMaterial($material_srl);
if ($output->data) {
$material_content = $output->data[0]->content;
Context::set('material_content', $material_content);
}
}
}
$category_list = $oDocumentModel->getCategoryList($this->module_srl);
Context::set('category_list', $category_list);
$oTagModel =& getModel('tag');
$args->module_srl = $this->module_srl;
$args->list_count = 20;
$output = $oTagModel->getTagList($args);
Context::set('tag_list', $output->data);
$oEditorModel =& getModel('editor');
$option->skin = $this->textyle->getPostEditorSkin();
$option->primary_key_name = 'document_srl';
$option->content_key_name = 'content';
$option->allow_fileupload = true;
$option->enable_autosave = true;
$option->enable_default_component = true;
$option->enable_component = $option->skin == 'dreditor' ? false : true;
$option->resizable = true;
$option->height = 500;
$option->content_font = $this->textyle->getFontFamily();
$option->content_font_size = $this->textyle->getFontSize();
$editor = $oEditorModel->getEditor($document_srl, $option);
Context::set('editor', $editor);
Context::set('editor_skin', $option->skin);
// permalink
$permalink = '';
if (isSiteID($this->textyle->domain)) {
if (Context::isAllowRewrite()) {
$permalink = getFullSiteUrl($this->textyle->domain, '') . '/entry/';
} else {
$permalink = getFullSiteUrl($this->textyle->domain) . '?vid=' . $this->textyle->domain . '&mid=' . Context::get('mid') . '&entry=';
}
} else {
if (Context::isAllowRewrite()) {
$permalink = getFullSiteUrl($this->textyle->domain, '') . 'entry/';
} else {
$premalink = getFullSiteUrl($this->textyle->domain, '', 'mid', Context::get('mid')) . '&entry=';
}
}
Context::set('permalink', $permalink);
$oTextyleModel =& getModel('textyle');
$alias = $oDocumentModel->getAlias($document_srl);
Context::set('alias', $alias);
$output = $oTextyleModel->getSubscriptionByDocumentSrl($document_srl);
if ($output->data) {
$publish_date = $output->data[0]->publish_date;
$publish_date = sscanf($publish_date, '%04d%02d%02d%02d%02d');
Context::set('publish_date_yyyymmdd', sprintf("%s-%02d-%02d", $publish_date[0], $publish_date[1], $publish_date[2]));
Context::set('publish_date_hh', sprintf("%02d", $publish_date[3]));
Context::set('publish_date_ii', sprintf("%02d", $publish_date[4]));
Context::set('subscription', 'Y');
}
if ($oDocument->get('module_srl') != $this->module_srl && !$document_srl) {
Context::set('from_saved', true);
}
$oPublish = $oTextyleModel->getPublishObject($this->module_srl, $oDocument->document_srl);
if (count($oPublish->trackbacks)) {
$trackbacks = $oPublish->getTrackbacks();
}
if (count($oPublish->blogapis)) {
$_apis = $oPublish->getApis();
}
Context::set('oDocument', $oDocument);
Context::set('oTextyle', $oTextyleModel->getTextyle($this->module_srl));
Context::set('oPublish', $oPublish);
Context::set('category_list', $oDocumentModel->getCategoryList($this->module_srl));
Context::set('trackbacks', $trackbacks);
Context::set('_apis', $_apis);
}
示例6: printContent
/**
* @brief 모듈객체를 받아서 content 출력
**/
function printContent(&$oModule)
{
// gzip encoding 지원 여부 체크
if (defined('__OB_GZHANDLER_ENABLE__') && __OB_GZHANDLER_ENABLE__ == 1 && strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== false && function_exists('ob_gzhandler') && extension_loaded('zlib')) {
$this->gz_enabled = true;
}
// request method에 따른 컨텐츠 결과물 추출
if (Context::get('xeVirtualRequestMethod') == 'xml') {
$output = $this->_toVirtualXmlDoc($oModule);
} else {
if (Context::getRequestMethod() == 'XMLRPC') {
$output = $this->_toXmlDoc($oModule);
} else {
if (Context::getRequestMethod() == 'JSON') {
$output = $this->_toJSON($oModule);
} else {
$output = $this->_toHTMLDoc($oModule);
}
}
}
// HTML 출력 요청일 경우 레이아웃 컴파일과 더블어 완성된 코드를 제공
if (Context::getResponseMethod() == "HTML") {
// 관리자 모드일 경우 #xeAdmin id를 가지는 div 추가
if (Context::get('module') != 'admin' && strpos(Context::get('act'), 'Admin') > 0) {
$output = '<div id="xeAdmin">' . $output . '</div>';
}
// 내용을 content라는 변수로 설정 (layout에서 {$output}에서 대체됨)
Context::set('content', $output);
// 레이아웃을 컴파일
$oTemplate =& TemplateHandler::getInstance();
// layout이라는 변수가 none으로 설정되면 기본 레이아웃으로 변경
if (Context::get('layout') != 'none') {
if (__DEBUG__ == 3) {
$start = getMicroTime();
}
$layout_path = $oModule->getLayoutPath();
$layout_file = $oModule->getLayoutFile();
$edited_layout_file = $oModule->getEditedLayoutFile();
// 현재 요청된 레이아웃 정보를 구함
$oLayoutModel =& getModel('layout');
$current_module_info = Context::get('current_module_info');
$layout_srl = $current_module_info->layout_srl;
// 레이아웃과 연결되어 있으면 레이아웃 컴파일
if ($layout_srl > 0) {
$layout_info = Context::get('layout_info');
// faceoff 레이아웃일 경우 별도 처리
if ($layout_info && $layout_info->type == 'faceoff') {
$oLayoutModel->doActivateFaceOff($layout_info);
Context::set('layout_info', $layout_info);
}
// 관리자 레이아웃 수정화면에서 변경된 CSS가 있는지 조사
$edited_layout_css = $oLayoutModel->getUserLayoutCss($layout_srl);
if (file_exists($edited_layout_css)) {
Context::addCSSFile($edited_layout_css, true, 'all', '', 100);
}
}
if (!$layout_path) {
$layout_path = "./common/tpl";
}
if (!$layout_file) {
$layout_file = "default_layout";
}
$output = $oTemplate->compile($layout_path, $layout_file, $edited_layout_file);
if (__DEBUG__ == 3) {
$GLOBALS['__layout_compile_elapsed__'] = getMicroTime() - $start;
}
}
}
// 출력하기 전에 trigger 호출 (before)
ModuleHandler::triggerCall('display', 'before', $output);
// 애드온 실행
$called_position = 'before_display_content';
$oAddonController =& getController('addon');
$addon_file = $oAddonController->getCacheFilePath();
if (file_exists($addon_file)) {
@(include $addon_file);
}
// HTML 출력일 경우 최종적으로 common layout을 씌워서 출력
if (Context::getResponseMethod() == "HTML") {
if (__DEBUG__ == 3) {
$start = getMicroTime();
}
// body 내의 <style ..></style>를 header로 이동
$output = preg_replace_callback('!<style(.*?)<\\/style>!is', array($this, 'moveStyleToHeader'), $output);
// 메타 파일 변경 (캐싱기능등으로 인해 위젯등에서 <!--Meta:경로--> 태그를 content에 넣는 경우가 있음
$output = preg_replace_callback('/<!--Meta:([a-z0-9\\_\\/\\.\\@]+)-->/is', array($this, 'transMeta'), $output);
// rewrite module 사용시 생기는 상대경로에 대한 처리를 함
if (Context::isAllowRewrite()) {
$url = parse_url(Context::getRequestUri());
$real_path = $url['path'];
$pattern = '/src=("|\'){1}(\\.\\/)?(files\\/attach|files\\/cache|files\\/faceOff|files\\/member_extra_info|modules|common|widgets|widgetstyle|layouts|addons)\\/([^"\']+)\\.(jpg|jpeg|png|gif)("|\'){1}/s';
$output = preg_replace($pattern, 'src=$1' . $real_path . '$3/$4.$5$6', $output);
if (Context::get('vid')) {
$pattern = '/\\/' . Context::get('vid') . '\\?([^=]+)=/is';
$output = preg_replace($pattern, '/?$1=', $output);
}
}
//.........这里部分代码省略.........