/components/com_weblinks/models/weblink.php
https://bitbucket.org/eternaware/joomus · PHP · 108 lines · 48 code · 13 blank · 47 comment · 7 complexity · 4f905709171cbfaeb52c64a763c16977 MD5 · raw file
- <?php
- /**
- * @package Joomla.Site
- * @subpackage com_weblinks
- *
- * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
- * @license GNU General Public License version 2 or later; see LICENSE.txt
- */
- defined('_JEXEC') or die;
- /**
- * Weblinks Component Model for a Weblink record
- *
- * @package Joomla.Site
- * @subpackage com_weblinks
- * @since 1.5
- */
- class WeblinksModelWeblink extends JModelItem
- {
- /**
- * Model context string.
- *
- * @access protected
- * @var string
- */
- protected $_context = 'com_weblinks.weblink';
- /**
- * Method to auto-populate the model state.
- *
- * Note. Calling getState in this method will result in recursion.
- *
- * @since 1.6
- */
- protected function populateState()
- {
- $app = JFactory::getApplication();
- $params = $app->getParams();
- // Load the object state.
- $id = $app->input->getInt('id');
- $this->setState('weblink.id', $id);
- // Load the parameters.
- $this->setState('params', $params);
- }
- /**
- * Method to get an object.
- *
- * @param integer The id of the object to get.
- *
- * @return mixed Object on success, false on failure.
- */
- public function &getItem($id = null)
- {
- if ($this->_item === null)
- {
- $this->_item = false;
- if (empty($id)) {
- $id = $this->getState('weblink.id');
- }
- // Get a level row instance.
- $table = JTable::getInstance('Weblink', 'WeblinksTable');
- // Attempt to load the row.
- if ($table->load($id))
- {
- // Check published state.
- if ($published = $this->getState('filter.published'))
- {
- if ($table->state != $published) {
- return $this->_item;
- }
- }
- // Convert the JTable to a clean JObject.
- $properties = $table->getProperties(1);
- $this->_item = JArrayHelper::toObject($properties, 'JObject');
- }
- elseif ($error = $table->getError()) {
- $this->setError($error);
- }
- }
- return $this->_item;
- }
- /**
- * Method to increment the hit counter for the weblink
- *
- * @param int Optional ID of the weblink.
- * @return boolean True on success
- * @since 1.5
- */
- public function hit($id = null)
- {
- if (empty($id)) {
- $id = $this->getState('weblink.id');
- }
- $weblink = $this->getTable('Weblink', 'WeblinksTable');
- return $weblink->hit($id);
- }
- }