本文整理汇总了PHP中common_node::detail方法的典型用法代码示例。如果您正苦于以下问题:PHP common_node::detail方法的具体用法?PHP common_node::detail怎么用?PHP common_node::detail使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类common_node
的用法示例。
在下文中一共展示了common_node::detail方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: mainAction
/**
* main action
*/
public function mainAction()
{
if (isset($this->GET['search'])) {
$searchQuery = $this->GET['search']['query'];
$count = strlen(trim($searchQuery));
if ($count > 2) {
require_once 'models/common/common_node.php';
$Node = new common_node();
$result = $Node->search($searchQuery);
$added = array();
foreach ($result as $r) {
if ($r['node_group'] != 'page') {
$active_pages = $Node->getActivePages($r['id']);
$r = $Node->detail($active_pages[0]);
}
if (!in_array($r['id'], $added) && $r['node_group'] == 'page') {
$this->tpl->assign('RESULT', $r);
$this->tpl->parse('content.result.item');
$added[] = $r['id'];
}
}
$this->tpl->parse('content.result');
} else {
msg("Please specify at least 3 characters", "error");
}
}
return true;
}
示例2: mainAction
/**
* main action
*/
public function mainAction()
{
require_once 'models/common/common_node.php';
require_once 'models/ecommerce/ecommerce_product.php';
$Node = new common_node();
$Product = new ecommerce_product();
$product_id = $this->GET['id'];
//listing
if (is_numeric($product_id)) {
$current = $Product->findProductInNode($product_id);
$this->tpl->assign('NODE', $Node->detail($current[0]['id']));
foreach ($current as $key => $node_data) {
//don't display homepage
if ($key > 0) {
if ($node_data['publish'] == 0) {
$node_data['class'] = "class='disabled'";
}
$this->tpl->assign("ITEM", $node_data);
$_Onxshop_Request = new Onxshop_Request("component/breadcrumb~id={$node_data['id']}:create_last_link=1~");
$this->tpl->assign('BREADCRUMB', $_Onxshop_Request->getContent());
$this->tpl->parse("content.multiple.item");
}
}
if (count($current) > 1) {
$this->tpl->parse('content.multiple');
}
}
return true;
}
示例3: mainAction
/**
* main action
*/
public function mainAction()
{
parent::mainAction();
$node_id = (int) $this->GET['id'];
// display Dublin district menu when in Dublin county
if (is_numeric($node_id) && $node_id > 0) {
$Node = new common_node();
$node = $Node->detail($node_id);
if ($node_id == 1536 || $node['parent'] == 1536) {
$this->tpl->parse("content.dublin_menu");
}
}
return true;
}
示例4: mainAction
/**
* main action
*/
public function mainAction()
{
require_once 'models/common/common_node.php';
require_once 'models/ecommerce/ecommerce_recipe.php';
$Node = new common_node();
$Recipe = new ecommerce_recipe();
$recipe_id = $this->GET['id'];
/**
* find recipe homepage
*/
$recipe_homepage = $Recipe->getRecipeHomepage($recipe_id);
/**
* allow to insert new
*/
if (!is_array($recipe_homepage) && !is_numeric($this->GET['add_to_parent'])) {
$this->tpl->parse('content.not_exists');
}
/**
* move page if requested
*/
if (is_numeric($this->GET['add_to_parent'])) {
if (is_array($recipe_homepage)) {
//moving
$recipe_homepage = $this->moveRecipeNode($recipe_id, $this->GET['add_to_parent']);
} else {
//insert new
$recipe_homepage = $this->insertNewRecipeToNode($recipe_id, $this->GET['add_to_parent']);
}
}
/**
* display recipe homepage detail
*/
if (is_array($recipe_homepage)) {
//parent detail
$parent_detail = $Node->detail($recipe_homepage['parent']);
$this->tpl->assign("PARENT_DETAIL", $parent_detail);
//breadcrumb
$_Onxshop_Request = new Onxshop_Request("component/breadcrumb~id={$recipe_homepage['id']}:create_last_link=1~");
$this->tpl->assign('BREADCRUMB', $_Onxshop_Request->getContent());
//children node list
$_Onxshop_Request = new Onxshop_Request("bo/component/node_list~id={$recipe_homepage['id']}:node_group=content~");
$this->tpl->assign('NODE_LIST', $_Onxshop_Request->getContent());
//parse
$this->tpl->parse('content.recipe_node');
}
return true;
}
示例5: mainAction
/**
* main action
*/
public function mainAction()
{
// get selected store for detail
$node_id = (int) $this->GET['node_id'];
if ($node_id > 0) {
$Node = new common_node();
$node = $Node->detail($node_id);
$siblings = $Node->listing("node_group = 'page' AND node_controller = 'store' AND content ~ '[0-9]+' AND parent = {$node['parent']}");
if (count($siblings) > 0) {
foreach ($siblings as $i => $sibling) {
$column = $i % 3 + 1;
$this->tpl->assign("STORE", $sibling);
$this->tpl->parse("content.list.column{$column}");
}
$this->tpl->parse("content.list");
}
}
return true;
}
示例6: mainAction
/**
* main action
*/
public function mainAction()
{
if (is_numeric($this->GET['id'])) {
$node_id = $this->GET['id'];
} else {
msg('node_edit: node_id is not numeric', 'error');
return false;
}
require_once 'models/common/common_node.php';
$Node = new common_node();
$node_data = $Node->detail($node_id);
$this->tpl->assign("NODE", $node_data);
$_SESSION['active_pages'] = $Node->getActiveNodes($node_id, array('page', 'container'));
$_SESSION['full_path'] = $Node->getFullPath($node_id);
if ($_POST['node']['node_controller'] != '') {
$node_controller = $_POST['node']['node_controller'];
} else {
$node_controller = $node_data['node_controller'];
}
$controller = "bo/node/{$node_data['node_group']}/{$node_controller}";
if (getTemplateDir($controller . ".html") == '') {
$controller_html = "bo/node/{$node_data['node_group']}/default";
} else {
$controller_html = $controller;
}
if (file_exists(ONXSHOP_DIR . "controllers/{$controller}.php") || file_exists(ONXSHOP_PROJECT_DIR . "controllers/{$controller}.php")) {
$controller_php = $controller;
} else {
$controller_php = "bo/node/{$node_data['node_group']}/default";
}
$_Onxshop_Request = new Onxshop_Request("{$controller_php}@{$controller_html}&id={$node_id}&orig={$this->GET['orig']}&popup={$this->GET['popup']}", $this);
$this->setContent($_Onxshop_Request->getContent());
$this->tpl->assign("SUB_CONTENT", $this->content);
if ($this->GET['ajax'] == 0) {
$this->tpl->parse('content.form');
}
return true;
}
示例7: mainAction
/**
* main action
*/
public function mainAction()
{
/**
* create objects
*/
require_once 'models/common/common_node.php';
require_once 'models/ecommerce/ecommerce_product_to_product.php';
$Node = new common_node();
$PtP = new ecommerce_product_to_product();
/**
* Set variables
*/
if (is_numeric($this->GET['product_node_id'])) {
$product_node_data = $Node->detail($this->GET['product_node_id']);
$product_id = $product_node_data['content'];
} else {
if (is_numeric($this->GET['id'])) {
$product_id = $this->GET['id'];
}
}
if (is_numeric($this->GET['limit'])) {
$limit = $this->GET['limit'];
} else {
$limit = 5;
}
/**
* relation type
*/
switch ($this->GET['type']) {
case 'static':
$type = 'static';
$this->tpl->assign("TITLE", I18N_RELATED_PRODUCTS_STATIC);
break;
case 'dynamic':
default:
$type = 'dynamic';
$this->tpl->assign("TITLE", I18N_RELATED_PRODUCTS_DYNAMIC);
break;
}
/**
* template
*/
switch ($this->GET['product_list_template']) {
case '2columns':
$product_list_template = 'product_list_2columns';
break;
case '4columns':
$product_list_template = 'product_list_4columns';
break;
case '3columns':
default:
$product_list_template = 'product_list_3columns';
break;
}
/**
* listing
*/
if (is_numeric($product_id)) {
$related = $PtP->getRelatedProduct($product_id, $limit, $type);
/**
* Pass product_id_list to product_list controller
*/
if (is_array($related) && count($related) > 0) {
/**
* prepare HTTP query for product_list component
*/
$related_list['product_id_list'] = $related;
$query = http_build_query($related_list, '', ':');
/**
* check request for image width and customize query in that case
*/
if (is_numeric($this->GET['image_width'])) {
$image_width = $this->GET['image_width'];
$query = $query . ":image_width={$image_width}";
}
/**
* call controller
*/
$_Onxshop_Request = new Onxshop_Request("component/ecommerce/{$product_list_template}~{$query}~");
$this->tpl->assign('ITEMS', $_Onxshop_Request->getContent());
$this->tpl->parse('content.product_related');
}
}
return true;
}
示例8: mainAction
/**
* main action
*/
public function mainAction()
{
require_once 'models/common/common_node.php';
$Node = new common_node();
if (is_numeric($this->GET['id'])) {
$delete_id = $this->GET['id'];
} else {
return false;
}
//delete
if ($this->GET['delete'] && is_numeric($delete_id)) {
$id_map = $Node->getIdMap();
/**
* create confirmation code
*/
$confirmation_code = md5($delete_id . session_id());
$this->tpl->assign('CONFIRMATION_CODE', $confirmation_code);
/**
* safety check we are not trying to delete some core page
*/
if (!array_search($delete_id, $id_map)) {
$node_data = $Node->detail($delete_id);
if (!is_array($node_data)) {
msg("Content ID {$delete_id} does not exists", 'error');
return false;
}
if ($this->GET['confirm']) {
//delete only if confirmation code match
if ($this->GET['confirm'] === $confirmation_code) {
if ($Node->moveToBin($delete_id)) {
msg("{$node_data['node_group']} \"{$node_data['title']}\" (id={$node_data['id']}) has been deleted");
//if it was a "page", than go to parent page
if ($this->GET['ajax'] == 0) {
if ($node_data['node_group'] == 'page') {
onxshopGoTo("/page/{$node_data['parent']}");
} else {
onxshopGoTo($_SESSION['last_diff'], 2);
}
}
} else {
msg("Can't delete!", 'error');
}
} else {
msg("node_delete: incorrect confirmation code", 'error');
}
} else {
//get children
$children = $Node->listing("parent = {$delete_id}");
foreach ($children as $child) {
$this->tpl->assign("CHILD", $child);
$this->tpl->parse('content.confirm.children.item');
}
if (count($children) > 0) {
$this->tpl->parse('content.confirm.children');
}
//get linked as shared content
$node_data = $Node->detail($delete_id);
$this->tpl->assign("NODE", $node_data);
$shared_linked = $Node->getShared($delete_id);
foreach ($shared_linked as $linked) {
$this->tpl->assign("LINKED", $linked);
$this->tpl->parse('content.confirm.linked.item');
}
if (count($shared_linked) > 0) {
$this->tpl->parse('content.confirm.linked');
}
$this->tpl->parse('content.confirm');
}
} else {
msg("This can't be deleted", 'error');
}
}
return true;
}
示例9: displayNodeInfo
/**
* display detail for node
*/
function displayNodeInfo($relations_list)
{
require_once 'models/common/common_node.php';
$Node = new common_node();
foreach ($relations_list as $image_detail) {
$node_detail = $Node->detail($image_detail['node_id']);
if ($node_detail['node_group'] != 'page') {
$image_detail['page_id'] = $Node->getParentPageId($image_detail['node_id']);
} else {
$image_detail['page_id'] = $image_detail['node_id'];
}
$this->tpl->assign('NODE_DETAIL', $node_detail);
$this->tpl->assign('IMAGE_DETAIL', $image_detail);
$this->tpl->parse('content.usage.node');
}
}
示例10: getRequest
/**
* get request
*/
function getRequest($node_id)
{
require_once 'models/common/common_node.php';
$Node = new common_node();
if ($Node->detail($node_id)) {
$append = ".node~id={$node_id}~";
if ($node_id == $this->conf['404_id']) {
$append = "{$append}.sys/404";
}
} else {
$append = ".node~id=" . $this->conf['404_id'] . "~.sys/404";
}
if (Onxshop_Bo_Authentication::getInstance()->isAuthenticated()) {
//hack to pass _SESSION.fe_edit_mode even before it's called again from fe_edit
//consider moving this to $Bootstrap->initPreAction
//probably this whole block, _GET shouldn't be here!
$_Onxshop_Request = new Onxshop_Request('bo/component/fe_edit_mode');
$request = ONXSHOP_DEFAULT_TYPE . "~id={$node_id}~.bo/fe_edit~id={$node_id}~." . ONXSHOP_MAIN_TEMPLATE . "~id={$node_id}~{$append}";
} else {
$request = ONXSHOP_DEFAULT_LAYOUT . "~id={$node_id}~" . "{$append}";
}
return $request;
}