• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP FinderIndexer类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中FinderIndexer的典型用法代码示例。如果您正苦于以下问题:PHP FinderIndexer类的具体用法?PHP FinderIndexer怎么用?PHP FinderIndexer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



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

示例1: index

 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     $item->body = FinderIndexerHelper::prepareContent($item->getElement('body'));
     $item->summary = FinderIndexerHelper::prepareContent($item->getElement('body'));
     $item->addTaxonomy('Type', 'FSF_FINDER_GLOSSARY');
     $word = $item->title;
     $anchor = strtolower(preg_replace("/[^A-Za-z0-9]/", '-', $word));
     $letter = strtolower(substr($word, 0, 1));
     $item->url = 'index.php?option=com_fsf&view=glossary&letter=' . $letter . '#' . $anchor;
     $item->route = $item->url;
     $item->state = $item->published;
     $item->access = 1;
     // Get content extras.
     FinderIndexerHelper::getContentExtras($item);
     // Index the item.
     if (FSFJ3Helper::IsJ3()) {
         $this->indexer->index($item);
     } else {
         FinderIndexer::index($item);
     }
 }
开发者ID:sansandeep143,项目名称:av,代码行数:25,代码来源:fsf_glossary.php


示例2: _index

 /**
  * Method to index an item. The item must be a FinderIndexerResult object.
  *
  * @param	object		The item to index as an FinderIndexerResult object.
  * @throws	Exception on database error.
  */
 protected function _index(FinderIndexerResult $item)
 {
     // Build the necessary route and path information.
     $item->url = $this->_getURL($item->topic);
     $item->itemid = '100065';
     $item->route = $item->url . '&post=' . $item->id . '&Itemid=' . $item->itemid . '#p' . $item->id;
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     // Add the meta-data processing instructions.
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'display_name');
     // Strip slashes!
     $item->title = stripslashes($item->title);
     $item->summary = stripslashes($item->summary);
     $item->display_name = stripslashes($item->display_name);
     $item->text = FinderIndexerHelper::prepareContent($item->summary);
     // Translate the access group to an access level.
     //$item->cat_access = $this->_getAccessLevel($item->cat_access);
     // Inherit state and access form the category.
     $item->state = 1;
     $item->access = 0;
     // Set the language.
     $item->language = FinderIndexerHelper::getDefaultLanguage();
     // Add the type taxonomy data.
     $item->addTaxonomy('Type', 'Forum Post');
     // Add the author taxonomy data.
     if (!empty($item->author)) {
         $item->addTaxonomy('Forum User', $item->display_name);
     }
     // Index the item.
     FinderIndexer::index($item);
 }
开发者ID:ravenlife,项目名称:Ninjaboard,代码行数:36,代码来源:ninjaboard_posts.php


示例3: index

 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     $item->body = FinderIndexerHelper::prepareContent($item->getElement('body'));
     $item->summary = FinderIndexerHelper::prepareContent($item->getElement('body'));
     $item->addTaxonomy('Type', 'FSS_FINDER_KB_ARTICLE');
     $item->url = 'index.php?option=com_fss&view=kb&kbartid=' . $item->getElement('id');
     $item->route = $item->url;
     $item->state = $item->getElement('pub');
     // Get content extras.
     FinderIndexerHelper::getContentExtras($item);
     // Index the item.
     if (FSSJ3Helper::IsJ3()) {
         $this->indexer->index($item);
     } else {
         FinderIndexer::index($item);
     }
 }
开发者ID:vstorm83,项目名称:propertease,代码行数:21,代码来源:fss_kb.php


示例4: index

 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false || !$item->id) {
         return;
     }
     if (!($zoo_item = $this->app->table->item->get($item->id, true))) {
         return;
     }
     $registry = new JRegistry();
     $registry->loadArray($zoo_item->getParams()->get("metadata."));
     $item->metadata = $registry;
     $item->metaauthor = $zoo_item->getParams()->get("metadata.author");
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'link');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metakey');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metadesc');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metaauthor');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'author');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'created_by_alias');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'element_data');
     $item->summary = $this->renderer->render('item.default', array('item' => $zoo_item));
     $item->url = $this->getURL($item->id, $this->extension, $this->layout);
     $item->route = $this->app->route->item($zoo_item, false);
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     $item->state = $zoo_item->searchable == 1 && $zoo_item->state == 1;
     $item->element_data = $this->app->database->queryResultArray('SELECT value FROM ' . ZOO_TABLE_SEARCH . ' WHERE item_id = ' . (int) $item->id);
     $item->addTaxonomy('Type', $zoo_item->getType()->name);
     foreach ($zoo_item->getRelatedCategories(true) as $category) {
         $item->addTaxonomy('Category', $category->name);
     }
     foreach ($zoo_item->getTags() as $tag) {
         $item->addTaxonomy('Tag', $tag);
     }
     FinderIndexerHelper::getContentExtras($item);
     if ($this->app->joomla->version->isCompatible('3.0')) {
         $this->indexer->index($item);
     } else {
         FinderIndexer::index($item);
     }
 }
开发者ID:unrealprojects,项目名称:journal,代码行数:40,代码来源:zoosmartsearch.php


示例5: index

 /**
  * Main index function run when indexing happens
  *
  * @param FinderIndexerResult $item
  * @return bool|void
  */
 protected function index(FinderIndexerResult $item)
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     //Add the instructions
     foreach ($this->instructions as $type => $instructions) {
         foreach ($instructions as $instruction) {
             $item->addInstruction($type, $instruction);
         }
     }
     // Add the type taxonomy data.
     $item->addTaxonomy('Type', $this->type_title);
     FinderIndexerHelper::getContentExtras($item);
     // Index the item.
     if (method_exists('FinderIndexer', 'getInstance')) {
         FinderIndexer::getInstance()->index($item);
     } else {
         FinderIndexer::index($item);
     }
 }
开发者ID:daodaoliang,项目名称:nooku-framework,代码行数:28,代码来源:finder.php


示例6: testResetState

 /**
  * Tests the resetState method
  *
  * @return  void
  *
  * @since   3.0
  */
 public function testResetState()
 {
     // Reset the state
     FinderIndexer::resetState();
     // Test we get a null object
     $this->assertNull(JFactory::getSession()->get('_finder.state', null));
 }
开发者ID:Rai-Ka,项目名称:joomla-cms,代码行数:14,代码来源:FinderIndexerTest.php


示例7: optimize

 /**
  * Method to optimize the index and perform any necessary cleanup.
  *
  * @return  void
  *
  * @since   2.5
  */
 public function optimize()
 {
     // We don't want this form to be cached.
     header('Pragma: no-cache');
     header('Cache-Control: no-cache');
     header('Expires: -1');
     // Check for a valid token. If invalid, send a 403 with the error message.
     JSession::checkToken('request') or $this->sendResponse(new Exception(JText::_('JINVALID_TOKEN'), 403));
     // Put in a buffer to silence noise.
     ob_start();
     // Import the finder plugins.
     JPluginHelper::importPlugin('finder');
     try {
         // Optimize the index
         FinderIndexer::getInstance()->optimize();
         // Get the indexer state.
         $state = FinderIndexer::getState();
         $state->start = 0;
         $state->complete = 1;
         // Send the response.
         $this->sendResponse($state);
     } catch (Exception $e) {
         $this->sendResponse($e);
     }
 }
开发者ID:grlf,项目名称:eyedock,代码行数:32,代码来源:indexer.json.php


示例8: index

 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     // Initialize the item parameters.
     $registry = new JRegistry();
     $registry->loadString($item->params);
     $item->params = JComponentHelper::getParams('com_k2', true);
     $item->params->merge($registry);
     $registry = new JRegistry();
     $registry->loadString($item->metadata);
     $item->metadata = $registry;
     // Trigger the onContentPrepare event.
     $item->summary = FinderIndexerHelper::prepareContent($item->summary, $item->params);
     $item->body = FinderIndexerHelper::prepareContent($item->body, $item->params);
     // Build the necessary route and path information.
     $item->url = $this->getURL($item->id, $this->extension, $this->layout);
     $item->route = K2HelperRoute::getItemRoute($item->slug, $item->catslug);
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     // Get the menu title if it exists.
     $title = $this->getItemMenuTitle($item->url);
     // Adjust the title if necessary.
     if (!empty($title) && $this->params->get('use_menu_title', true)) {
         $item->title = $title;
     }
     // Add the meta-author.
     $item->metaauthor = $item->metadata->get('author');
     // Add the meta-data processing instructions.
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metakey');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metadesc');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metaauthor');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'author');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'created_by_alias');
     // Translate the state. Articles should only be published if the category is published.
     $item->state = $this->translateState($item->state, $item->cat_state);
     // Translate the trash state. Articles should only be accesible if the category is accessible.
     if ($item->trash || $item->cat_trash) {
         $item->state = 0;
     }
     // Add the type taxonomy data.
     $item->addTaxonomy('Type', 'K2 Item');
     // Add the author taxonomy data.
     if (!empty($item->author) || !empty($item->created_by_alias)) {
         $item->addTaxonomy('Author', !empty($item->created_by_alias) ? $item->created_by_alias : $item->author);
     }
     // Add the category taxonomy data.
     $item->addTaxonomy('K2 Category', $item->category, $item->cat_state, $item->cat_access);
     // Add the language taxonomy data.
     $item->addTaxonomy('Language', $item->language);
     // Get content extras.
     FinderIndexerHelper::getContentExtras($item);
     // Index the item.
     FinderIndexer::index($item);
 }
开发者ID:vuchannguyen,项目名称:dayhoc,代码行数:56,代码来源:k2.php


示例9: index

	/**
	 * Method to index an item. The item must be a FinderIndexerResult object.
	 *
	 * @param   FinderIndexerResult  $item    The item to index as an FinderIndexerResult object.
	 * @param   string               $format  The item format
	 *
	 * @return  void
	 *
	 * @throws  Exception on database error.
	 */
	protected function index(FinderIndexerResult $item, $format = 'html')
	{
		// Check if the extension is enabled
		if (JComponentHelper::isEnabled($this->extension) == false)
		{
			return;
		}

		if ($this->jVer == 3) {
			$item->setLanguage();
		}

		// Initialize the item parameters.
		$registry = new JRegistry;
		$registry->loadString($item->params);
		$item->params = JComponentHelper::getParams('com_jem', true);
		$item->params->merge($registry);

		$registry = new JRegistry;
		$registry->loadString($item->metadata);
		$item->metadata = $registry;

		// Trigger the onContentPrepare event.
		$item->summary = FinderIndexerHelper::prepareContent($item->summary, $item->params);
		$item->body = FinderIndexerHelper::prepareContent($item->fulltext, $item->params);

		// Build the necessary route and path information.
		$item->url = $this->getURL($item->id, $this->extension, $this->layout);
		$item->route = JEMHelperRoute::getEventRoute($item->slug, $item->catslug);
		$item->path = FinderIndexerHelper::getContentPath($item->route);

		// Get the menu title if it exists.
		$title = $this->getItemMenuTitle($item->url);

		// Adjust the title if necessary.
		if (!empty($title) && $this->params->get('use_menu_title', true))
		{
			$item->title = $title;
		}

		// Add the meta-author.
		$item->metaauthor = $item->metadata->get('author');

		// Add the meta-data processing instructions.
		// TODO:
// 		$item->addInstruction(FinderIndexer::META_CONTEXT, 'meta_description');

		// Translate the state. Articles should only be published if the category is published.
		$item->state = $this->translateState($item->state, $item->cat_state);

		// Add the type taxonomy data.
		$item->addTaxonomy('Type', 'Event');

		// Add the author taxonomy data.
		if (!empty($item->author) || !empty($item->created_by_alias))
		{
			$item->addTaxonomy('Author', !empty($item->created_by_alias) ? $item->created_by_alias : $item->author);
		}

		// Add the category taxonomy data.
		$item->addTaxonomy('Category', $item->category, $item->cat_state, $item->cat_access);

		// Add the language taxonomy data.
		$item->addTaxonomy('Language', $item->language);

		// Add the venue taxonomy data.
		if(!empty($item->venue)) {
			$item->addTaxonomy('Venue', $item->venue, $item->loc_published);
		}

		// Get content extras.
		FinderIndexerHelper::getContentExtras($item);

		// Index the item.
		// On J! 3.x we must use indexer member which doesn't exist on J! 2.5
		if ($this->jVer == 3) {
			$this->indexer->index($item);
		} else {
			FinderIndexer::index($item);
		}
	}
开发者ID:BillVGN,项目名称:PortalPRP,代码行数:91,代码来源:jem.php


示例10: _index

 /**
  * Run the indexer
  *
  * @return  void
  *
  * @since   2.5
  */
 private function _index()
 {
     // initialize the time value
     $this->_time = microtime(true);
     // import library dependencies
     require_once JPATH_ADMINISTRATOR . '/components/com_finder/helpers/indexer/indexer.php';
     jimport('joomla.application.component.helper');
     // fool the system into thinking we are running as JSite with Finder as the active component
     JFactory::getApplication('site');
     $_SERVER['HTTP_HOST'] = 'domain.com';
     define('JPATH_COMPONENT_ADMINISTRATOR', JPATH_ADMINISTRATOR . '/components/com_finder');
     // Disable caching.
     $config = JFactory::getConfig();
     $config->set('caching', 0);
     $config->set('cache_handler', 'file');
     // Reset the indexer state.
     FinderIndexer::resetState();
     // Import the finder plugins.
     JPluginHelper::importPlugin('finder');
     // Starting Indexer.
     $this->out(JText::_('FINDER_CLI_STARTING_INDEXER'), true);
     // Trigger the onStartIndex event.
     JDispatcher::getInstance()->trigger('onStartIndex');
     // Remove the script time limit.
     @set_time_limit(0);
     // Get the indexer state.
     $state = FinderIndexer::getState();
     // Setting up plugins.
     $this->out(JText::_('FINDER_CLI_SETTING_UP_PLUGINS'), true);
     // Trigger the onBeforeIndex event.
     JDispatcher::getInstance()->trigger('onBeforeIndex');
     // Startup reporting.
     $this->out(JText::sprintf('FINDER_CLI_SETUP_ITEMS', $state->totalItems, round(microtime(true) - $this->_time, 3)), true);
     // Get the number of batches.
     $t = (int) $state->totalItems;
     $c = (int) ceil($t / $state->batchSize);
     $c = $c === 0 ? 1 : $c;
     // Process the batches.
     for ($i = 0; $i < $c; $i++) {
         // Set the batch start time.
         $this->_qtime = microtime(true);
         // Reset the batch offset.
         $state->batchOffset = 0;
         // Trigger the onBuildIndex event.
         JDispatcher::getInstance()->trigger('onBuildIndex');
         // Batch reporting.
         $this->out(JText::sprintf('FINDER_CLI_BATCH_COMPLETE', $i + 1, round(microtime(true) - $this->_qtime, 3)), true);
     }
     // Total reporting.
     $this->out(JText::sprintf('FINDER_CLI_PROCESS_COMPLETE', round(microtime(true) - $this->_time, 3)), true);
     // Reset the indexer state.
     FinderIndexer::resetState();
 }
开发者ID:raeldc,项目名称:joomla-cms,代码行数:60,代码来源:run.php


示例11: index

 /**
  * Method to index an item. The item must be a FinderIndexerResult object.
  *
  * @param   FinderIndexerResult  $item    The item to index as an FinderIndexerResult object.
  * @param   string               $format  The item format
  *
  * @return  void
  *
  * @since   2.5
  * @throws  Exception on database error.
  */
 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     // Initialize the item parameters.
     $registry = new JRegistry();
     $registry->loadString($item->params);
     $item->params = JComponentHelper::getParams('com_jshopping', true);
     $item->params->merge($registry);
     // Trigger the onContentPrepare event.
     $item->summary = FinderIndexerHelper::prepareContent($item->summary, $item->params);
     $item->body = FinderIndexerHelper::prepareContent($item->body, $item->params);
     // Build the necessary route and path information.
     $item->url = 'index.php?option=com_jshopping&controller=product&task=view&category_id=' . $item->category_id . '&product_id=' . $item->product_id;
     $item->route = 'index.php?option=com_jshopping&controller=product&task=view&category_id=' . $item->category_id . '&product_id=' . $item->product_id;
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     // Get the menu title if it exists.
     $title = $this->getItemMenuTitle($item->url);
     // Adjust the title if necessary.
     if (!empty($title) && $this->params->get('use_menu_title', true)) {
         $item->title = $title;
     }
     // Add the meta-author.
     // Add the meta-data processing instructions.
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metakey');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metadesc');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'link');
     // Add the type taxonomy data.
     $item->addTaxonomy('Type', 'Product');
     // Add the category taxonomy data.
     $item->addTaxonomy('Category', $item->category, $item->cat_state, $item->cat_access);
     // Get content extras.
     FinderIndexerHelper::getContentExtras($item);
     // Index the item.
     if (version_compare(JVERSION, '3.0.0', 'ge')) {
         $this->indexer->index($item);
     } else {
         FinderIndexer::index($item);
     }
 }
开发者ID:Tommar,项目名称:vino2,代码行数:53,代码来源:jshopping.php


示例12: index

 /**
  * Indexes a post on the site
  *
  * @since	5.0
  * @access	public
  * @param	FinderIndexerResult		The item to index
  * @param	string	The item's format
  * @return	void
  */
 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (!$this->exists()) {
         return;
     }
     // Build the necessary route and path information.
     $item->url = 'index.php?option=com_easyblog&view=entry&id=' . $item->id;
     $item->route = EBR::getRoutedURL($item->url, false, true);
     // Remove any /administrator/ segments from the url since the indexer could be executed from the back end
     $item->route = $this->removeAdminSegment($item->route);
     // Get the content path
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     // If there is access defined, just set it to 2 which is special privileges.
     if (!$item->access || $item->access == 0) {
         $item->access = 1;
     } else {
         if ($item->access > 0) {
             $item->access = 2;
         }
     }
     // Load up the post item
     $post = EB::post();
     $post->load($item->id);
     // Get the intro text of the content
     $item->summary = $post->getIntro();
     // Get the contents
     $item->body = $post->getContent('entry', false);
     // If the post is password protected, we do not want to display the contents
     if ($post->isPasswordProtected()) {
         $item->summary = JText::_('PLG_FINDER_EASYBLOG_PASSWORD_PROTECTED');
     } else {
         // we want to get custom fields values.
         $fields = $post->getCustomFields();
         $fieldlib = EB::fields();
         $customfields = array();
         if ($fields) {
             foreach ($fields as $field) {
                 if ($field->group->hasValues($post)) {
                     foreach ($field->fields as $customField) {
                         $eachField = $fieldlib->get($customField->type);
                         $customfields[] = $eachField->text($customField, $post);
                     }
                 }
             }
             $customfieldvalues = implode(' ', $customfields);
             $item->body = $item->body . ' ' . $customfieldvalues;
         }
     }
     // Add the author's meta data
     $item->metaauthor = !empty($item->created_by_alias) ? $item->created_by_alias : $item->author;
     $item->author = !empty($item->created_by_alias) ? $item->created_by_alias : $item->author;
     // If the post has an image, use it
     $image = $post->getImage('thumbnail', false, true);
     // If there's no image, try to scan the contents for an image to be used
     if (!$image && $post->isLegacy()) {
         $image = EB::string()->getImage($item->body);
     }
     // If we still can't locate any images, use the placeholder image
     if (!$image) {
         $image = EB::getPlaceholderImage();
     }
     $registry = new JRegistry();
     $registry->set('image', $image);
     $item->params = $registry;
     // Add the meta-data processing instructions.
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metakey');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metadesc');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metaauthor');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'author');
     // Add the type taxonomy data.
     $item->addTaxonomy('Type', 'EasyBlog');
     // Add the author taxonomy data.
     if (!empty($item->author) || !empty($item->created_by_alias)) {
         $item->addTaxonomy('Author', !empty($item->created_by_alias) ? $item->created_by_alias : $item->author);
     }
     // Add the category taxonomy data.
     $item->addTaxonomy('Category', $item->category, $item->cat_state, $item->cat_access);
     // Add the language taxonomy data.
     if (empty($item->language)) {
         $item->language = '*';
     }
     $item->addTaxonomy('Language', $item->language);
     // Get content extras.
     FinderIndexerHelper::getContentExtras($item);
     // For Joomla 3.0, the indexer is assigned to the property
     // Index the item.
     if (EB::isJoomla30()) {
         return $this->indexer->index($item);
     }
     return FinderIndexer::index($item);
//.........这里部分代码省略.........
开发者ID:knigherrant,项目名称:decopatio,代码行数:101,代码来源:easyblog.php


示例13: index

 /**
  * Method to index an item. The item must be a FinderIndexerResult object.
  *
  * @param   FinderIndexerResult  $item    The item to index as an FinderIndexerResult object.
  * @param   string               $format  The item format
  *
  * @return  void
  *
  * @since   2.5
  * @throws  Exception on database error.
  */
 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     // Initialize the item parameters.
     $registry = new JRegistry();
     $registry->loadString($item->params);
     $item->params = JComponentHelper::getParams('com_jevents', true);
     $item->params->merge($registry);
     $registry = new JRegistry();
     $registry->loadString($item->metadata);
     $item->metadata = $registry;
     // Trigger the onContentPrepare event.
     $item->summary = FinderIndexerHelper::prepareContent($item->summary, $item->params);
     $item->body = FinderIndexerHelper::prepareContent($item->body, $item->params);
     // Build the necessary route and path information.
     $itemid = $this->params->get("target_itemid", 0);
     $item->url = "index.php?option=com_jevents&task=icalevent.detail&evid=" . $item->eventid . "&Itemid=" . $itemid;
     //$this->getURL($item->id, $this->extension, $this->layout);
     $item->route = "index.php?option=com_jevents&task=icalevent.detail&evid=" . $item->eventid . "&Itemid=" . $itemid;
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     // title is already set
     //$item->title;
     // Events should only be published if the category is published.etc. - do this later
     //$item->state;
     // Add the type taxonomy data.
     $item->addTaxonomy('Type', 'Event');
     // Add the creator taxonomy data.
     if (!empty($item->creator) || !empty($item->created_by_alias)) {
         $item->addTaxonomy('Creator', !empty($item->created_by_alias) ? $item->created_by_alias : $item->creator);
     }
     // Add the category taxonomy data. - can we do multiple categories?
     $item->addTaxonomy('Category', $item->category, $item->cat_state, $item->cat_access);
     // Add the language taxonomy data.
     //$item->addTaxonomy('Language', $item->language);
     // Get jevents extras.
     FinderIndexerHelper::getContentExtras($item);
     // Index the item.
     if (JevJoomlaVersion::isCompatible("3.0.0")) {
         $this->indexer->index($item);
     } else {
         FinderIndexer::index($item);
     }
 }
开发者ID:madcsaba,项目名称:li-de,代码行数:57,代码来源:jevents.php


示例14: index

 /**
  * Method to index an item. The item must be a FinderIndexerResult object.
  *
  * @param   FinderIndexerResult  $item    The item to index as an FinderIndexerResult object.
  * @param   string               $format  The item format
  *
  * @return  void
  *
  * @since   2.5
  * @throws  Exception on database error.
  */
 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     $access = 1;
     if (is_null($item->privacy)) {
         $privacy = FD::privacy($item->user_id);
         $privacyValue = $privacy->getValue('albums', 'view');
         $item->privacy = $privacyValue;
     }
     if ($item->privacy == SOCIAL_PRIVACY_PUBLIC) {
         $access = 1;
     } else {
         if ($item->privacy == SOCIAL_PRIVACY_MEMBER) {
             $access = 2;
         } else {
             // this is not public / member items. do not index this item
             return;
         }
     }
     // $sql->select('a.id, a.title, a.alias, a.introtext AS summary, a.fulltext AS body');
     // $sql->select('a.state, a.catid, a.created AS start_date, a.created_by');
     // $sql->select('a.created_by_alias, a.modified, a.modified_by, a.attribs AS params');
     // $sql->select('a.metakey, a.metadesc, a.metadata, a.language, a.access, a.version, a.ordering');
     // $sql->select('a.publish_up AS publish_start_date, a.publish_down AS publish_end_date');
     // $sql->select('c.title AS category, c.published AS cat_state, c.access AS cat_access');
     // album onwer
     $user = FD::user($item->user_id);
     $userAlias = $user->getAlias(false);
     $album = FD::table('Album');
     $album->load($item->id);
     $albumAlias = $album->getAlias();
     // Build the necessary route and path information.
     // we need to pass in raw url so that smart search will not create another duplicate item.
     // index.php?option=com_easysocial&view=albums&id=171:collection&layout=item&uid=84:jenny-siew&type=user
     $item->url = 'index.php?option=com_easysocial&view=albums&id=' . $albumAlias . '&layout=item&uid=' . $userAlias . '&type=' . $album->type;
     $item->route = $album->getPermalink();
     $item->route = $this->removeAdminSegment($item->route);
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     $category = '';
     if ($album->core == SOCIAL_ALBUM_PROFILE_PHOTOS) {
         $category = 'avatar album';
     } else {
         if ($album->core == SOCIAL_ALBUM_PROFILE_COVERS) {
             $category = 'cover album';
         } else {
             if ($album->core == SOCIAL_ALBUM_STORY_ALBUM) {
                 $category = 'story album';
             } else {
                 $category = 'user album';
             }
         }
     }
     $item->access = $access;
     $item->alias = $albumAlias;
     $item->state = 1;
     $item->catid = $album->core;
     $item->start_date = $album->created;
     $item->created_by = $album->user_id;
     $item->created_by_alias = $userAlias;
     $item->modified = $album->assigned_date;
     $item->modified_by = $album->user_id;
     $item->params = '';
     $item->metakey = $category . ' ' . $album->title;
     $item->metadesc = $album->title . ' ' . $album->caption;
     $item->metadata = '';
     $item->publish_start_date = $album->assigned_date;
     $item->category = $category;
     $item->cat_state = 1;
     $item->cat_access = 0;
     $item->summary = empty($album->caption) ? $album->title : $album->caption;
     $item->body = $album->title . ' ' . $album->caption;
     // Add the meta-author.
     $item->metaauthor = $userAlias;
     $item->author = $userAlias;
     // add image param
     $registry = FD::registry();
     $registry->set('image', $album->getCover());
     $item->params = $registry;
     // Add the meta-data processing instructions.
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metakey');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metadesc');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'metaauthor');
     $item->addInstruction(FinderIndexer::META_CONTEXT, 'author');
     // Add the type taxonomy data.
     $item->addTaxonomy('Type', 'EasySocial.Albums');
     // Add the author taxonomy data.
//.........这里部分代码省略.........
开发者ID:knigherrant,项目名称:decopatio,代码行数:101,代码来源:easysocialalbums.php


示例15: index

 /**
  * Run the indexer.
  *
  * @return  void
  *
  * @since   2.5
  */
 private function index()
 {
     require_once JPATH_ADMINISTRATOR . '/components/com_finder/helpers/indexer/indexer.php';
     // Disable caching.
     $config = JFactory::getConfig();
     $config->set('caching', 0);
     $config->set('cache_handler', 'file');
     // Reset the indexer state.
     FinderIndexer::resetState();
     // Import the finder plugins.
     JPluginHelper::importPlugin('finder');
     // Starting Indexer.
     $this->out(JText::_('FINDER_CLI_STARTING_INDEXER'), true);
     // Trigger the onStartIndex event.
     JFactory::getApplication()->triggerEvent('onStartIndex');
     // Remove the script time limit.
     @set_time_limit(0);
     // Get the indexer state.
     $state = FinderIndexer::getState();
     // Setting up plugins.
     $this->out(JText::_('FINDER_CLI_SETTING_UP_PLUGINS'), true);
     // Trigger the onBeforeIndex event.
     JFactory::getApplication()->triggerEvent('onBeforeIndex');
     // Startup reporting.
     $this->out(JText::sprintf('FINDER_CLI_SETUP_ITEMS', $state->totalItems, round(microtime(true) - $this->time, 3)), true);
     // Get the number of batches.
     $t = (int) $state->totalItems;
     $c = (int) ceil($t / $state->batchSize);
     $c = $c === 0 ? 1 : $c;
     try {
         // Process the batches.
         for ($i = 0; $i < $c; $i++) {
             // Set the batch start time.
             $this->qtime = microtime(true);
             // Reset the batch offset.
             $state->batchOffset = 0;
             // Trigger the onBuildIndex event.
             JFactory::getApplication()->triggerEvent('onBuildIndex');
             // Batch reporting.
             $this->out(JText::sprintf('FINDER_CLI_BATCH_COMPLETE', $i + 1, round(microtime(true) - $this->qtime, 3)), true);
         }
     } catch (Exception $e) {
         // Display the error
         $this->out($e->getMessage(), true);
         // Reset the indexer state.
         FinderIndexer::resetState();
         // Close the app
         $this->close($e->getCode());
     }
     // Reset the indexer state.
     FinderIndexer::resetState();
 }
开发者ID:Rai-Ka,项目名称:joomla-cms,代码行数:59,代码来源:finder_indexer.php


示例16: index

 /**
  * Method to index an item. The item must be a FinderIndexerResult object.
  *
  * @param   FinderIndexerResult  $item    The item to index as an FinderIndexerResult object.
  * @param   string               $format  The item format
  *
  * @return  void
  *
  * @since   2.5
  * @throws  Exception on database error.
  */
 protected function index(FinderIndexerResult $item, $format = 'html')
 {
     // Check if the extension is enabled
     if (JComponentHelper::isEnabled($this->extension) == false) {
         return;
     }
     // load foundry config
     $config = FD::config();
     $privacy = FD::privacy($item->user_id);
     //default access
     $access = 1;
     if ($config->get('users.indexer.privacy', 1)) {
         $privacyValue = $privacy->getValue('profiles', 'search');
         $item->privacy = $privacyValue;
         if ($item->privacy == SOCIAL_PRIVACY_PUBLIC) {
             $access = 1;
         } else {
             if ($item->privacy == SOCIAL_PRIVACY_MEMBER) {
                 $access = 2;
             } else {
                 // this is not public / member items. let set the access to 'special'
                 $access = 3;
             }
         }
     }
     $user = FD::user($item->user_id);
     $userAlias = $user->getAlias(false);
     $contentSnapshot = array();
     $userName = $user->getName($config->get('users.indexer.name'));
     $userEmail = $config->get('users.indexer.email') ? $user->email : '';
     $contentSnapshot[] = $userName;
     if ($userEmail) {
         // we need to check for the email field privacy
         if ($config->get('users.indexer.privacy', 1)) {
             $privacyModel = FD::model('Privacy');
             $fieldPrivacyValue = $privacyModel->getFieldValue('field.joomla_email', $user->id);
             if ($fieldPrivacyValue == SOCIAL_PRIVACY_PUBLIC || $fieldPrivacyValue == SOCIAL_PRIVACY_MEMBER) {
                 $contentSnapshot[] = $userEmail;
             } else {
                 $userEmail = '';
             }
         } else {
             $contentSnapshot[] = $userEmail;
         }
     }
     // get data from customfields
     // get customfields.
     // $fieldsLib		= FD::fields();
     // $fieldModel  	= FD::model( 'Fields' );
     // $fieldsResult 	= array();
     // $options = array();
     // $options['data'] 		= true;
     // $options['dataId'] 		= $user->user_id;
     // $options['dataType'] 	= SOCIAL_TYPE_USER;
     // $options['searchable'] 	= 1;
     // //todo: get customfields.
     // $fields = $fieldModel->getCustomFields( $options );
     // if( count( $fields ) > 0 )
     // {
     // 	//foreach( $fields as $item )
     // 	foreach( $fields as $field )
     // 	{
     // 		$userFieldData = isset( $field->data ) ? $field->data : '';
     // 		$args 			= array( $userFieldData );
     // 		$f 				= array( &$field );
     // 		$dataResult 	= @$fieldsLib->trigger( 'onIndexer' , SOCIAL_FIELDS_GROUP_USER , $f , $args );
     // 		if( $dataResult !== false && count( $dataResult ) > 0 )
     // 			$fieldsResult[]  	= $dataResult[0];
     // 	}
     // 	if( $fieldsResult )
     // 	{
     // 		$customFieldsContent 	= implode( ' ', $fieldsResult );
     // 		$contentSnapshot[] 		= $customFieldsContent;
     // 	}
     // }
     $content = implode(' ', $contentSnapshot);
     // Build the necessary route and path information.
     // we need to pass in raw url so that if the site on sef, smart serach will not create new item.
     // index.php?option=com_easysocial&view=profile&id=84:jenny-siew
     // $item->url		= 'index.php?option=com_easysocial&view=profile&id=' . $userAlias;
     $item->url = 'index.php?option=com_easysocial&view=profile&id=' . $user->id;
     $item->route = $user->getPermalink();
     $item->route = $this->removeAdminSegment($item->route);
     $item->path = FinderIndexerHelper::getContentPath($item->route);
     $userProfile = $user->getProfile();
     $metaKey = $userName;
     if ($userEmail) {
         $metaKey .= ', ' . $userEmail;
     }
//.........这里部分代码省略.........
开发者ID:ppantilla,项目名称:bbninja,代码行数:101,代码来源:easysocialusers.php


示例17: remove

 /**
  * Method to remove an item from the index.
  *
  * @param   string  $id  The ID of the item to remove.
  *
  * @return  boolean  True on success.
  *
  * @since   2.5
  * @throws  Exception on database error.
  */
 protected function remove($id)
 {
     JLog::add('FinderIndexerAdapter::remove', JLog::INFO);
     // Get the item's URL
     $url = $this->db->quote($this->getUrl($id, $this->extension, $this->layout));
     // Get the link ids for the content items.
     $query = $this->db->getQuery(true);
     $query->select($this->db->quoteName('link_id'));
     $query->from($this->db->quoteName('#__finder_links'));
     $query->where($this->db->quoteName('url') . ' = ' . $url);
     $this->db->setQuery($query);
     $items = $this->db->loadColumn();
     // Check for a database error.
     if ($this->db->getErrorNum()) {
         // Throw database error exception.
         throw new Exception($this->db->getErrorMsg(), 500);
     }
     // Check the items.
     if (empty($items)) {
         return true;
     }
     // Remove the items.
     foreach ($items as $item) {
         FinderIndexer::remove($item);
     }
     return true;
 }
开发者ID:vuchannguyen,项目名称:hoctap,代码行数:37,代码来源:adapter.php


示例18: optimize

 /**
  * Method to optimize the index and perform any necessary cleanup.
  *
  * @return  void
  *
  * @since   2.5
  */
 public function optimize()
 {
     // We don't want this form to be cached.
     $app = JFactory::getApplication();
     $app->setHeader('Expires', 'Mon, 1 Jan 2001 00:00:00 GMT', true);
     $app->setHeader('Last-Modified', gmdate('D, d M Y H:i:s') . ' GMT', true);
     $app->setHeader('Cache-Control', 'no-store, no-cache, must-revalidate, post-check=0, pre-check=0', false);
     $app->setHeader('Pragma', 'no-cache');
     // Check for a valid token. If invalid, send a 403 with the error message.
     JSession::checkToken('request') or $this->sendResponse(new Exception(JText::_('JINVALID_TOKEN'), 403));
     // Put in a buffer to silence noise.
     ob_start();
     // Import the finder plugins.
     JPluginHelper::importPlugin('finder');
     try {
         // Optimize the index
         FinderIndexer::getInstance()->optimize();
         // Get 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP FinderIndexerHelper类代码示例发布时间:2022-05-23
下一篇:
PHP FinderHelperLanguage类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap