当前位置: 首页>>代码示例>>PHP>>正文


PHP Overlay::bind方法代码示例

本文整理汇总了PHP中Overlay::bind方法的典型用法代码示例。如果您正苦于以下问题:PHP Overlay::bind方法的具体用法?PHP Overlay::bind怎么用?PHP Overlay::bind使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Overlay的用法示例。


在下文中一共展示了Overlay::bind方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: elseif

    $anchor = Anchors::get($_REQUEST['anchor']);
} elseif (isset($context['arguments'][1])) {
    $anchor = Anchors::get($context['arguments'][0] . ':' . $context['arguments'][1]);
}
// reflect access rights from anchor
if (!isset($item['active']) && is_object($anchor)) {
    $item['active'] = $anchor->get_active();
}
// get the related overlay, if any -- overlay_type will be considered later on
$overlay = NULL;
if (isset($item['overlay']) && $item['overlay']) {
    $overlay = Overlay::load($item, 'file:' . $item['id']);
} elseif (isset($_REQUEST['variant']) && $_REQUEST['variant']) {
    $overlay = Overlay::bind($_REQUEST['variant']);
} elseif (isset($_SESSION['pasted_variant']) && $_SESSION['pasted_variant']) {
    $overlay = Overlay::bind($_SESSION['pasted_variant']);
    unset($_SESSION['pasted_variant']);
    // set a new overlay instance, except if some template has been defined for this anchor
} elseif (!isset($item['id']) && is_object($anchor)) {
    $overlay = $anchor->get_overlay('file_overlay');
}
// get parent of the anchor too
$parent = NULL;
if (is_object($anchor) && ($parent = $anchor->get_parent())) {
    $parent = Anchors::get($parent);
}
// we are allowed to add a new file
if (!isset($item['id']) && is_object($anchor) && Files::allow_creation($anchor->get_values(), $parent, $anchor->get_type())) {
    $permitted = TRUE;
} elseif (isset($item['id']) && Files::allow_modification($item, $anchor)) {
    $permitted = TRUE;
开发者ID:rair,项目名称:yacs,代码行数:31,代码来源:edit.php

示例2: get_overlay

 /**
  * get the default overlay type for anchored items, if any
  *
  * This function is mainly used to associate overlays with sections.
  *
  * @param string name of the attribute that contains overlay class
  * @return a string
  */
 function get_overlay($name = 'content_overlay')
 {
     $overlay = NULL;
     if ($this->item && isset($this->item[$name])) {
         $overlay = Overlay::bind($this->item[$name]);
     }
     return $overlay;
 }
开发者ID:rair,项目名称:yacs,代码行数:16,代码来源:anchor.php

示例3: layout

 /**
  * list sections
  *
  * @param resource the SQL result
  * @return string the rendered text
  *
  * @see layouts/layout.php
  **/
 function layout($result)
 {
     global $context;
     // we return some text
     $text = '';
     // empty list
     if (!SQL::count($result)) {
         return $text;
     }
     // maximum number of items
     if (isset($this->layout_variant) && $this->layout_variant > 3) {
         $maximum_items = $this->layout_variant;
     } elseif (defined('YAHOO_LIST_SIZE')) {
         $maximum_items = YAHOO_LIST_SIZE;
     } else {
         $maximum_items = 7;
     }
     // clear flows
     $text .= '<br style="clear: left" />';
     // process all items in the list
     $family = '';
     while ($item = SQL::fetch($result)) {
         // change the family
         if ($item['family'] != $family) {
             $family = $item['family'];
             $text .= '<h2><span>' . $family . '&nbsp;</span></h2>' . "\n";
         }
         // get the anchor
         $anchor = Anchors::get($item['anchor']);
         // the url to view this item
         $url = Sections::get_permalink($item);
         // initialize variables
         $prefix = $label = $suffix = $icon = $hover = '';
         // signal restricted and private sections
         if ($item['active'] == 'N') {
             $prefix .= PRIVATE_FLAG;
         } elseif ($item['active'] == 'R') {
             $prefix .= RESTRICTED_FLAG;
         }
         // flag sections that are draft, dead, or created or updated very recently
         if ($item['activation_date'] >= $context['now']) {
             $prefix .= DRAFT_FLAG;
         } elseif ($item['expiry_date'] > NULL_DATE && $item['expiry_date'] <= $context['now']) {
             $prefix .= EXPIRED_FLAG;
         } elseif ($item['create_date'] >= $context['fresh']) {
             $suffix .= NEW_FLAG;
         } elseif ($item['edit_date'] >= $context['fresh']) {
             $suffix .= UPDATED_FLAG;
         }
         // display introduction field on hovering
         if ($item['introduction']) {
             $hover .= strip_tags(Codes::beautify_introduction($item['introduction']));
         }
         // details and content
         $details = array();
         $content = array();
         // count related sub-elements
         $related_count = 0;
         // info on related articles
         if ($count = Articles::count_for_anchor('section:' . $item['id'])) {
             if ($count > $maximum_items) {
                 $details[] = sprintf(i18n::ns('%d page', '%d pages', $count), $count);
             } elseif (Surfer::is_empowered()) {
                 $details[] = sprintf(i18n::ns('%d page', '%d pages', $count), $count);
             }
             $related_count += $count;
             // get the overlay for content of this section, if any
             $content_overlay = NULL;
             if (isset($item['content_overlay'])) {
                 $content_overlay = Overlay::bind($item['content_overlay']);
             }
             // no room to list articles
             if (count($content) >= $maximum_items) {
             } elseif (is_object($content_overlay) && is_callable(array($content_overlay, 'render_list_for_anchor'))) {
                 if ($related = $content_overlay->render_list_for_anchor('section:' . $item['id'], $maximum_items - count($content))) {
                     foreach ($related as $sub_url => $label) {
                         $sub_prefix = $sub_suffix = $sub_hover = '';
                         if (is_array($label)) {
                             $sub_prefix = $label[0];
                             $sub_suffix = $label[2];
                             if (@$label[5]) {
                                 $sub_hover = $label[5];
                             }
                             $label = $label[1];
                         }
                         $content[] = $sub_prefix . $label . $sub_suffix;
                     }
                 }
                 // regular rendering of related articles
             } else {
                 if (preg_match('/\\barticles_by_([a-z_]+)\\b/i', $item['options'], $matches)) {
                     $order = $matches[1];
//.........这里部分代码省略.........
开发者ID:rair,项目名称:yacs,代码行数:101,代码来源:layout_sections_as_titles.php

示例4: sprintf

         $text .= sprintf(i18n::s('A section "%s" has been created.'), $fields['nick_name']) . BR . "\n";
     } else {
         $text .= Logger::error_pop() . BR . "\n";
     }
 }
 // 'bugzilla_page' article
 if (Articles::get('bugzilla_page')) {
     $text .= sprintf(i18n::s('A page "%s" already exists.'), 'bugzilla_page') . BR . "\n";
 } elseif ($anchor = Sections::lookup('bugzilla')) {
     $fields = array();
     $fields['anchor'] = $anchor;
     $fields['nick_name'] = 'bugzilla_page';
     $fields['title'] = i18n::c('I need help');
     $fields['introduction'] = i18n::c('Sample support request');
     $fields['publish_date'] = gmstrftime('%Y-%m-%d %H:%M:%S');
     $overlay = Overlay::bind('issue');
     $fields['overlay'] = $overlay->save();
     $fields['overlay_id'] = $overlay->get_id();
     if (Articles::post($fields)) {
         $text .= sprintf(i18n::s('A page "%s" has been created.'), $fields['nick_name']) . BR . "\n";
         $overlay->remember('insert', $fields, 'article:' . $fields['id']);
     } else {
         $text .= Logger::error_pop() . BR . "\n";
     }
 }
 // add sample comments to 'bugzilla_page'
 if ($anchor = Articles::lookup('bugzilla_page')) {
     // add a bunch of comments
     $stats = Comments::stat_for_anchor($anchor);
     if ($stats['count'] < 50) {
         for ($index = 1; $index <= 10; $index++) {
开发者ID:rair,项目名称:yacs,代码行数:31,代码来源:populate.php

示例5: load

 /**
  * restore an instance
  *
  * This function unserializes piggy-back data and uses it to populate an overlay instance.
  *
  * [php]
  * // get the record from the database
  * $item = Articles::get($id);
  *
  * // extract overlay data from $item['overlay']
  * $overlay = Overlay::load($item, 'article:'.$item['id']);
  * [/php]
  *
  * @see articles/delete.php
  * @see articles/edit.php
  * @see articles/view.php
  *
  * @param array the hosting array
  * @param string reference of the containing page (e.g., 'article:123')
  * @return a restored instance, or NULL
  */
 public static final function load($host, $reference = '')
 {
     global $context;
     if (is_object($host)) {
         $data = $host->item;
     } else {
         $data = $host;
     }
     // no overlay yet
     if (!isset($data['overlay']) || !$data['overlay']) {
         return NULL;
     }
     // retrieve the content of the overlay
     if (($attributes = Safe::unserialize($data['overlay'])) === FALSE) {
         return NULL;
     }
     // restore unicode entities
     foreach ($attributes as $name => $value) {
         if (is_string($value)) {
             $attributes[$name] = utf8::from_unicode($value);
         }
     }
     // we need a type
     if (!is_array($attributes) || !isset($attributes['overlay_type'])) {
         return NULL;
     }
     // bind this to current page
     if (isset($data['id'])) {
         $attributes['id'] = $data['id'];
     }
     // use one particular overlay instance
     $overlay = Overlay::bind($attributes['overlay_type']);
     if (is_object($overlay)) {
         $overlay->attributes = $attributes;
         // expose all of the anchor interface to the contained overlay
         if (!is_object($host)) {
             $overlay->anchor = Anchors::get($reference);
         } else {
             $overlay->anchor = $host;
         }
         // ready to use!
         return $overlay;
     }
     // unknown overlay type or empty overlay
     return NULL;
 }
开发者ID:rair,项目名称:yacs,代码行数:67,代码来源:overlay.php

示例6: array

     $embedded = NULL;
 } else {
     $embedded = Codes::list_embedded($item['description']);
 }
 // build a complete box
 $box = array('bar' => array(), 'text' => '');
 // count the number of files in this section
 //if($count = Files::count_for_anchor('section:'.$item['id'], FALSE, $embedded)) {
 $count = Files::count_for_anchor('section:' . $item['id'], FALSE, $embedded);
 if ($count > 20) {
     $box['bar'] += array('_count' => sprintf(i18n::ns('%d file', '%d files', $count), $count));
 }
 // get overlay for files if any
 $file_overlay = NULL;
 if (isset($item['file_overlay'])) {
     $file_overlay = Overlay::bind($item['file_overlay']);
 }
 // delegate rendering to the overlay, where applicable
 if (is_object($file_overlay) && ($overlaid = $file_overlay->render('files', 'section:' . $item['id'], $zoom_index))) {
     $box['text'] .= $overlaid;
 } elseif ($count) {
     // list files by date (default) or by title (option 'files_by_title')
     $offset = ($zoom_index - 1) * FILES_PER_PAGE;
     if (preg_match('/\\bfiles_by_title\\b/i', $item['options'])) {
         $items = Files::list_by_title_for_anchor('section:' . $item['id'], $offset, FILES_PER_PAGE, 'section:' . $item['id'], $embedded);
     } else {
         $items = Files::list_by_date_for_anchor('section:' . $item['id'], $offset, FILES_PER_PAGE, 'section:' . $item['id'], $embedded);
     }
     // actually render the html
     if (is_array($items)) {
         $box['text'] .= Skin::build_list($items, 'decorated');
开发者ID:rair,项目名称:yacs,代码行数:31,代码来源:view.php

示例7: layout

 /**
  * list sections
  *
  * @param resource the SQL result
  * @return string the rendered text
  *
  * @see layouts/layout.php
  **/
 function layout($result)
 {
     global $context;
     // empty list
     if (!SQL::count($result)) {
         $output = array();
         return $output;
     }
     // we return some text
     $text = '';
     // maximum number of items
     if (isset($this->layout_variant) && $this->layout_variant > 3) {
         $maximum_items = $this->layout_variant;
     } elseif (defined('YAHOO_LIST_SIZE')) {
         $maximum_items = YAHOO_LIST_SIZE;
     } else {
         $maximum_items = 7;
     }
     // stack of items
     $items = array();
     // process all items in the list
     include_once $context['path_to_root'] . 'comments/comments.php';
     include_once $context['path_to_root'] . 'links/links.php';
     $family = '';
     while ($item = SQL::fetch($result)) {
         // change the family
         if ($item['family'] != $family) {
             // flush current stack, if any
             if (count($items)) {
                 $text .= Skin::build_list($items, '2-columns');
             }
             $items = array();
             // show the family
             $family = $item['family'];
             $text .= '<h2><span>' . $family . '&nbsp;</span></h2>' . "\n";
         }
         // the url to view this item
         $url = Sections::get_permalink($item);
         // initialize variables
         $prefix = $label = $suffix = $icon = '';
         // signal restricted and private sections
         if ($item['active'] == 'N') {
             $prefix .= PRIVATE_FLAG;
         } elseif ($item['active'] == 'R') {
             $prefix .= RESTRICTED_FLAG;
         }
         // flag sections that are draft, dead, or created or updated very recently
         if ($item['activation_date'] >= $context['now']) {
             $prefix .= DRAFT_FLAG;
         } elseif ($item['expiry_date'] > NULL_DATE && $item['expiry_date'] <= $context['now']) {
             $prefix .= EXPIRED_FLAG;
         } elseif ($item['create_date'] >= $context['fresh']) {
             $suffix .= NEW_FLAG;
         } elseif ($item['edit_date'] >= $context['fresh']) {
             $suffix .= UPDATED_FLAG;
         }
         // details and content
         $details = array();
         $content = array();
         // count related sub-elements
         $related_count = 0;
         // info on related articles
         if ($count = Articles::count_for_anchor('section:' . $item['id'])) {
             if ($count > $maximum_items) {
                 $details[] = sprintf(i18n::ns('%d page', '%d pages', $count), $count);
             } elseif (Surfer::is_empowered()) {
                 $details[] = sprintf(i18n::ns('%d page', '%d pages', $count), $count);
             }
             $related_count += $count;
             // get the overlay for content of this section, if any
             $content_overlay = NULL;
             if (isset($item['content_overlay'])) {
                 $content_overlay = Overlay::bind($item['content_overlay']);
             }
             // no room to list articles
             if (count($content) >= $maximum_items) {
             } elseif (is_object($content_overlay) && is_callable(array($content_overlay, 'render_list_for_anchor'))) {
                 if ($related = $content_overlay->render_list_for_anchor('section:' . $item['id'], $maximum_items - count($content))) {
                     foreach ($related as $sub_url => $label) {
                         $sub_prefix = $sub_suffix = $sub_hover = '';
                         if (is_array($label)) {
                             $sub_prefix = $label[0];
                             $sub_suffix = $label[2];
                             if (@$label[5]) {
                                 $sub_hover = $label[5];
                             }
                             $label = $label[1];
                         }
                         $content[] = $sub_prefix . Skin::build_link($sub_url, $label, 'basic', $sub_hover) . $sub_suffix;
                     }
                 }
                 // regular rendering of related articles
//.........这里部分代码省略.........
开发者ID:rair,项目名称:yacs,代码行数:101,代码来源:layout_sections_as_yahoo.php

示例8: unset

 if (isset($_REQUEST['overlay_type']) && $_REQUEST['overlay_type']) {
     // associates are allowed to change overlay types -- see overlays/select.php
     if (!Surfer::is_associate()) {
         unset($_REQUEST['overlay_type']);
     } elseif (is_object($overlay) && $overlay->get_type() == $_REQUEST['overlay_type']) {
         unset($_REQUEST['overlay_type']);
     }
 }
 // new overlay type
 if (isset($_REQUEST['overlay_type']) && $_REQUEST['overlay_type']) {
     // delete the previous version, if any
     if (is_object($overlay)) {
         $overlay->remember('delete', $_REQUEST, 'section:' . $_REQUEST['id']);
     }
     // new version of page overlay
     $overlay = Overlay::bind($_REQUEST['overlay_type']);
 }
 // when the page has been overlaid
 if (is_object($overlay)) {
     // allow for change detection
     $overlay->snapshot();
     // update the overlay from form content
     $overlay->parse_fields($_REQUEST);
     // save content of the overlay in this item
     $_REQUEST['overlay'] = $overlay->save();
     $_REQUEST['overlay_id'] = $overlay->get_id();
 }
 // branch to another script to save data
 if (isset($_REQUEST['options']) && preg_match('/\\bedit_as_[a-zA-Z0-9_\\.]+?\\b/i', $_REQUEST['options'], $matches) && is_readable($matches[0] . '.php')) {
     include $matches[0] . '.php';
     return;
开发者ID:rair,项目名称:yacs,代码行数:31,代码来源:edit.php

示例9: sprintf

 if (!Surfer::is_associate() && ($overlay->attributes['user_status'] == 'donotdisturb' || $overlay->attributes['user_status'] == 'anonymous' || $item['without_alerts'] == 'Y')) {
     $context['text'] .= sprintf(i18n::s('Sorry, %s wish not to receive private message'), $item['nick_name']);
     render_skin();
     finalize_page(TRUE);
 }
 // the new thread
 $article = array();
 $article['anchor'] = $anchor;
 $article['title'] = isset($_REQUEST['title']) ? $_REQUEST['title'] : utf8::transcode(Skin::build_date(gmstrftime('%Y-%m-%d %H:%M:%S GMT'), 'full'));
 $article['active_set'] = 'N';
 // this is private
 $article['publish_date'] = gmstrftime('%Y-%m-%d %H:%M:%S');
 // no review is required
 $article['options'] = 'view_as_zic_pm';
 // include some overlay
 $overlay = Overlay::bind('thread');
 $article['overlay'] = $overlay->save();
 $article['overlay_id'] = $overlay->get_id();
 // ensure everything is positioned as expected
 Surfer::empower();
 // post the new thread
 if (!($article['id'] = Articles::post($article))) {
     Logger::error(i18n::s('Impossible to add a page.'));
 } else {
     //get full article
     $article = Articles::get($article['id']);
     // attach some file
     if (isset($_FILES['upload']) && ($file = Files::upload($_FILES['upload'], 'files/article/' . $article['id'], 'article:' . $article['id']))) {
         $_REQUEST['message'] .= $file;
     }
     // make a new comment out of received message, if any
开发者ID:rair,项目名称:yacs,代码行数:31,代码来源:contact.php

示例10: parse_tag_close

 function parse_tag_close($parser, $tag)
 {
     global $context;
     global $in_overlay, $overlay_class, $overlay_parameters;
     global $parsed_cdata, $parsed_item, $parsed_overlay, $parsing_report;
     // save gathered data if necessary
     switch ($tag) {
         case 'article':
             // end of article
             // transcode owner id
             $parsed_item['owner_id'] = Surfer::get_id();
             if (isset($parsed_item['owner_nick_name']) && ($user = Users::get($parsed_item['owner_nick_name']))) {
                 $parsed_item['owner_id'] = $user['id'];
             }
             // transcode creator id
             $parsed_item['create_id'] = Surfer::get_id();
             if (isset($parsed_item['create_nick_name']) && ($user = Users::get($parsed_item['create_nick_name']))) {
                 $parsed_item['create_id'] = $user['id'];
             }
             // transcode editor id
             $parsed_item['edit_id'] = Surfer::get_id();
             if (isset($parsed_item['edit_nick_name']) && ($user = Users::get($parsed_item['edit_nick_name']))) {
                 $parsed_item['edit_id'] = $user['id'];
             }
             // transcode publisher id
             $parsed_item['publish_id'] = Surfer::get_id();
             if (isset($parsed_item['publish_nick_name']) && ($user = Users::get($parsed_item['publish_nick_name']))) {
                 $parsed_item['publish_id'] = $user['id'];
             }
             // bind to given overlay
             $overlay = NULL;
             if ($overlay_class) {
                 $overlay = Overlay::bind($overlay_class . ' ' . $overlay_parameters);
             }
             // when the page has been overlaid
             if (is_object($overlay)) {
                 // update the overlay from content
                 foreach ($parsed_overlay as $label => $value) {
                     $overlay->attributes[$label] = $value;
                 }
                 // save content of the overlay in this item
                 $parsed_item['overlay'] = $overlay->save();
                 $parsed_item['overlay_id'] = $overlay->get_id();
             }
             // find anchor from handle
             if (isset($parsed_item['anchor_handle']) && ($reference = Sections::lookup($parsed_item['anchor_handle']))) {
                 $parsed_item['anchor'] = $reference;
             }
             // update an existing page
             if (isset($parsed_item['handle']) && ($item = Articles::get($parsed_item['handle']))) {
                 // transcode page id
                 $parsed_item['id'] = $item['id'];
                 // stop on error
                 if (!Articles::put($parsed_item) || is_object($overlay) && !$overlay->remember('update', $parsed_item, 'article:' . $item['id'])) {
                     Logger::error(sprintf('Unable to save article %s', $parsed_item['title'] . ' (' . $parsed_item['id'] . ')'));
                 }
                 // create a new page
             } else {
                 unset($parsed_item['id']);
                 // stop on error
                 if (!($parsed_item['id'] = Articles::post($parsed_item))) {
                     Logger::error(sprintf('Unable to save article %s', $parsed_item['title']));
                 } else {
                     // save overlay content
                     if (is_object($overlay)) {
                         $overlay->remember('insert', $parsed_item, 'article:' . $parsed_item['id']);
                     }
                 }
             }
             // report to surfer
             $parsing_report .= '<li>' . Skin::build_link(Articles::get_permalink($parsed_item), $parsed_item['title']) . "</li>\n";
             // ready for next item
             $overlay_class = NULL;
             $overlay_parameters = '';
             $parsed_overlay = array();
             $parsed_item = array();
             Safe::set_time_limit(30);
             break;
         case 'overlay':
             // end of overlay data
             $in_overlay = FALSE;
             break;
         case 'section':
             // end of section
             // transcode owner id
             $parsed_item['owner_id'] = Surfer::get_id();
             if (isset($parsed_item['owner_nick_name']) && ($user = Users::get($parsed_item['owner_nick_name']))) {
                 $parsed_item['owner_id'] = $user['id'];
             }
             // transcode creator id
             $parsed_item['create_id'] = Surfer::get_id();
             if (isset($parsed_item['create_nick_name']) && ($user = Users::get($parsed_item['create_nick_name']))) {
                 $parsed_item['create_id'] = $user['id'];
             }
             // transcode editor id
             $parsed_item['edit_id'] = Surfer::get_id();
             if (isset($parsed_item['edit_nick_name']) && ($user = Users::get($parsed_item['edit_nick_name']))) {
                 $parsed_item['edit_id'] = $user['id'];
             }
             // bind to given overlay
//.........这里部分代码省略.........
开发者ID:rair,项目名称:yacs,代码行数:101,代码来源:import.php

示例11: layout

 /**
  * list sections
  *
  * @param resource the SQL result
  * @return a string to be displayed
  *
  * @see layouts/layout.php
  **/
 function layout($result)
 {
     global $context;
     // we return some text
     $text = '';
     // empty list
     if (!SQL::count($result)) {
         return $text;
     }
     // no hovering label
     $href_title = '';
     // we build an array for the skin::build_tabs() function
     $panels = array();
     // process all items in the list
     while ($item = SQL::fetch($result)) {
         // get the main anchor
         $anchor = Anchors::get($item['anchor']);
         // get the related overlay, if any
         $overlay = Overlay::load($item, 'section:' . $item['id']);
         // get the overlay for content of this section, if any
         $content_overlay = NULL;
         if (isset($item['content_overlay'])) {
             $content_overlay = Overlay::bind($item['content_overlay']);
         }
         // panel content
         $text = '';
         // insert anchor prefix
         if (is_object($anchor)) {
             $text .= $anchor->get_prefix();
         }
         // the introduction text, if any
         if (is_object($overlay)) {
             $text .= Skin::build_block($overlay->get_text('introduction', $item), 'introduction');
         } elseif (isset($item['introduction']) && trim($item['introduction'])) {
             $text .= Skin::build_block($item['introduction'], 'introduction');
         }
         // get text related to the overlay, if any
         if (is_object($overlay)) {
             $text .= $overlay->get_text('view', $item);
         }
         // filter description, if necessary
         if (is_object($overlay)) {
             $description = $overlay->get_text('description', $item);
         } else {
             $description = $item['description'];
         }
         // the beautified description, which is the actual page body
         if ($description) {
             // use adequate label
             if (is_object($overlay) && ($label = $overlay->get_label('description'))) {
                 $text .= Skin::build_block($label, 'title');
             }
             // beautify the target page
             $text .= Skin::build_block($description, 'description', '', $item['options']);
         }
         // delegate rendering to the overlay, where applicable
         if (is_object($content_overlay) && ($overlaid = $content_overlay->render('articles', 'section:' . $item['id'], 1))) {
             $text .= $overlaid;
             // regular rendering
         } elseif (!isset($item['articles_layout']) || $item['articles_layout'] != 'none') {
             // select a layout
             if (!isset($item['articles_layout']) || !$item['articles_layout']) {
                 include_once '../articles/layout_articles.php';
                 $layout = new Layout_articles();
             } else {
                 $layout = Layouts::new_($item['articles_layout'], 'article');
             }
             // avoid links to this page
             if (is_object($layout) && is_callable(array($layout, 'set_variant'))) {
                 $layout->set_focus('section:' . $item['id']);
             }
             // the maximum number of articles per page
             if (is_object($layout)) {
                 $items_per_page = $layout->items_per_page();
             } else {
                 $items_per_page = ARTICLES_PER_PAGE;
             }
             // sort and list articles
             $offset = 0;
             if (preg_match('/\\barticles_by_([a-z_]+)\\b/i', $item['options'], $matches)) {
                 $order = $matches[1];
             } elseif (is_callable(array($layout, 'items_order'))) {
                 $order = $layout->items_order();
             } else {
                 $order = 'edition';
             }
             // create a box
             $box = array('top_bar' => array(), 'text' => '', 'bottom_bar' => array());
             // the command to post a new page
             //if(Articles::allow_creation($item, $anchor)) {
             if ($anchor->allows('creation', 'article')) {
                 Skin::define_img('ARTICLES_ADD_IMG', 'articles/add.gif');
//.........这里部分代码省略.........
开发者ID:rair,项目名称:yacs,代码行数:101,代码来源:layout_sections_as_tabs.php


注:本文中的Overlay::bind方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。