/** * buildQuery * * @param bool $overrideLimits Param * * @return F0FQuery */ public function buildQuery($overrideLimits = false) { $db = $this->getDbo(); $query = F0FQueryAbstract::getNew($db)->select('*')->from($db->quoteName('#__autotweet_feeds')); $fltName = $this->getState('name', null, 'string'); if ($fltName) { $fltName = "%{$fltName}%"; $query->where($db->qn('name') . ' LIKE ' . $db->q($fltName)); } $fltPublished = $this->getState('published', 1, 'cmd'); if ($fltPublished != '') { $query->where($db->qn('published') . ' = ' . $db->q($fltPublished)); } $fltChannel = $this->getState('feedtype', null, 'int'); if ($fltChannel) { $query->where($db->qn('feedtype_id') . ' = ' . $db->q($fltChannel)); } $fltIds = $this->getState('ids', array(), 'array'); if (!empty($fltIds)) { $query->where($db->qn('id') . ' in (' . implode(',', $fltIds) . ')'); } $search = $this->getState('search', null); if ($search) { $search = '%' . $search . '%'; $query->where($db->qn('name') . ' LIKE ' . $db->quote($search)); } $order = $this->getState('filter_order', 'ordering', 'cmd'); if (!in_array($order, array_keys($this->getTable()->getData()))) { $order = 'ordering'; } $dir = $this->getState('filter_order_Dir', 'ASC', 'cmd'); $query->order($order . ' ' . $dir); return $query; }
/** * buildQuery * * @param bool $overrideLimits Param * * @return F0FQuery */ public function buildQuery($overrideLimits = false) { $db = $this->getDbo(); $query = F0FQueryAbstract::getNew($db)->select('*')->from($db->quoteName('#__autotweet_channels')); $fltName = $this->getState('name', null, 'string'); if ($fltName) { $fltName = "%{$fltName}%"; $query->where($db->qn('name') . ' LIKE ' . $db->q($fltName)); } $fltChannelId = $this->getState('channel_id', null, 'int'); if ($fltChannelId) { $query->where($db->qn('id') . ' = ' . $db->q($fltChannelId)); } $fltChannelIds = $this->getState('channel_ids', null, 'array'); if (!empty($fltChannelIds)) { $ids = implode(',', $fltChannelIds); $query->where($db->qn('id') . ' in (' . $ids . ')'); } $fltCreatedBy = $this->getState('created_by', null, 'int'); if ($fltCreatedBy) { $query->where($db->qn('created_by') . ' = ' . $db->q($fltCreatedBy)); } $fltChanneltype = $this->getState('channeltype', null, 'int'); if ($fltChanneltype) { $query->where($db->qn('channeltype_id') . ' = ' . $db->q($fltChanneltype)); } $exclude_channeltypes = $this->getState('exclude_channeltypes', null, 'array'); if ($exclude_channeltypes && !empty($exclude_channeltypes)) { $exclude_channeltypes = implode(',', $exclude_channeltypes); $query->where($db->qn('channeltype_id') . ' not in (' . $exclude_channeltypes . ')'); } $fltPublished = $this->getState('published', 1, 'cmd'); if ($fltPublished != '' && $fltPublished != 'nofilter') { $query->where($db->qn('published') . ' = ' . $db->q($fltPublished)); } $search = $this->getState('search', null); if ($search) { $search = '%' . $search . '%'; $query->where('(' . $db->qn('name') . ' LIKE ' . $db->quote($search) . ' OR ' . $db->qn('description') . ' LIKE ' . $db->quote($search) . ')'); } $fltScope = $this->getState('scope', 'S', 'string'); if ($fltScope && $fltScope != 'N') { $query->where($db->qn('scope') . ' = ' . $db->q($fltScope)); } $fltFrontendChannel = $this->getState('frontendchannel', null, 'int'); if ($fltFrontendChannel) { $fltFrontendChannel = '"frontendchannel":"' . $fltFrontendChannel . '"'; $query->where($db->qn('params') . ' like ' . $db->q('%' . $fltFrontendChannel . '%')); } else { AclPermsHelper::whereOwnership($query); } $order = $this->getState('filter_order', 'id', 'cmd'); if (!in_array($order, array_keys($this->getTable()->getData()))) { $order = 'id'; } $dir = $this->getState('filter_order_Dir', 'ASC', 'cmd'); $query->order($order . ' ' . $dir); return $query; }
/** * buildQuery * * @param bool $overrideLimits Param * * @return F0FQuery */ public function buildQuery($overrideLimits = false) { $db = $this->getDbo(); $query = F0FQueryAbstract::getNew($db)->select('id, title')->from($db->quoteName('#__categories')); $fltName = $this->getState('title', null, 'string'); if ($fltName) { $fltName = "%{$fltName}%"; $query->where($db->qn('title') . ' LIKE ' . $db->q($fltName)); } $fltPublished = $this->getState('published', 1, 'cmd'); if (!empty($fltPublished)) { $query->where($db->qn('published') . ' = ' . $db->q($fltPublished)); } $query->where($db->qn('extension') . ' = ' . $db->q('com_content')); $query->where($db->qn('id') . ' > 1'); $order = $this->getState('filter_order', 'title', 'cmd'); $dir = $this->getState('filter_order_Dir', 'ASC', 'cmd'); $query->order($order . ' ' . $dir); return $query; }
/** * buildQuery / Get all plugins * * @param bool $overrideLimits Param * * @return F0FQuery */ public function buildQuery($overrideLimits = false) { $db = $this->getDbo(); $element_id = $this->getState('element_id', null, 'string'); $extension_plugins_only = $this->getState('extension_plugins_only', false, 'int'); $published_only = $this->getState('published_only', false, 'int'); // Plugins QUERY $query = F0FQueryAbstract::getNew($db)->select($db->quoteName('extension_id') . ' as ' . $db->quoteName('id'))->select($db->quoteName('name'))->select($db->quoteName('element'))->select($db->quoteName('folder'))->from($db->quoteName('#__extensions'))->where($db->quoteName('element') . ' like ' . $db->Quote('%autotweet%'))->where($db->quoteName('type') . ' = ' . $db->Quote('plugin')); if ($extension_plugins_only) { $query->where($db->quoteName('element') . ' <> ' . $db->Quote('autotweetautomator')); $query->where($db->quoteName('element') . ' <> ' . $db->Quote('autotweet')); } if ($published_only) { $query->where($db->quoteName('enabled') . ' = ' . $db->Quote('1')); } if ($element_id) { $query->where($db->quoteName('element') . ' = ' . $db->Quote($element_id)); } $query->order($db->quoteName('element') . ' ASC'); return $query; }
/** * feedZooIsDuplicated. * * @param object &$article Param * @param int $compare_existing Param * @param string $table Param * @param string $fld_xreference Param * @param string $fld_title Param * @param string $fld_alias Param * * @return bool */ private static function _IsDuplicated(&$article, $compare_existing, $table, $fld_xreference, $fld_title, $fld_alias) { $db = JFactory::getDBO(); $id = null; /* if (($fld_xreference) && (isset($article->hash))) { $query = F0FQueryAbstract::getNew($db)->select('id')->from($db->quoteName($table)); $query->where($db->qn($fld_xreference) . ' = ' . $db->q($article->hash)); $db->setQuery($query); $id = $db->loadResult(); if (!empty($id)) { return true; } } */ $query = F0FQueryAbstract::getNew($db)->select('id')->from($db->quoteName($table)); $query->where($db->qn($fld_alias) . ' = ' . $db->q($article->alias)); $db->setQuery($query); $id = $db->loadResult(); if (!empty($id)) { return true; } // Return if ($compare_existing == self::BASIC) { return false; } $query = F0FQueryAbstract::getNew($db)->select('id')->from($db->quoteName($table)); $query->where($db->qn($fld_title) . ' = ' . $db->q($article->title)); $db->setQuery($query); $id = $db->loadResult(); if (!empty($id)) { return true; } return false; }
/** * getStatsTimeline * * @return array */ public function getStatsTimeline() { $db = $this->getDbo(); $query = F0FQueryAbstract::getNew($db)->select('date(postdate) postdate, pubstate, count(*) as counter')->from($db->quoteName('#__autotweet_posts'))->group('date(postdate), pubstate'); $fltAfterDate = $this->getState('after_date', null, 'date'); if ($fltAfterDate) { $query->where($db->qn('postdate') . ' >= ' . $db->q($fltAfterDate)); } $db->setQuery((string) $query); return $db->loadObjectList(); }
/** * buildQuery * * @param bool $overrideLimits Param * * @return F0FQuery */ public function buildQuery($overrideLimits = false) { $db = $this->getDbo(); $query = F0FQueryAbstract::getNew($db)->select('*')->from($db->quoteName('#__autotweet_requests')); $fltPublishup = $this->getState('publish_up', null, 'date'); if ($fltPublishup) { $fltPublishup = $fltPublishup . '%'; $query->where($db->qn('publish_up') . ' LIKE ' . $db->q($fltPublishup)); } $fltUntilDate = $this->getState('until_date', null, 'date'); if ($fltUntilDate) { $query->where($db->qn('publish_up') . ' <= ' . $db->q($fltUntilDate)); } $input = new F0FInput(); $start = $input->get('xtstart'); if ($start) { $date = new JDate($start); $query->where($db->qn('publish_up') . ' >= ' . $db->q($date->toSql())); } $end = $input->get('xtend'); if ($end) { $date = new JDate($end); $query->where($db->qn('publish_up') . ' <= ' . $db->q($date->toSql())); } $fltPlugin = $this->getState('plugin', null, 'string'); if ($fltPlugin) { $query->where($db->qn('plugin') . ' = ' . $db->q($fltPlugin)); } $fltRefId = $this->getState('ref_id', null, 'string'); if ($fltRefId) { $query->where($db->qn('ref_id') . ' = ' . $db->q($fltRefId)); } $fltRids = $this->getState('rids', null); if ($fltRids != '') { if (is_string($fltRids)) { $fltRids = TextUtil::listToArray($fltRids); } $list = array(); foreach ($fltRids as $p) { $list[] = $db->q($p); } $fltRids = implode(',', $list); $query->where($db->qn('id') . ' IN (' . $fltRids . ')'); } $fltTypeinfo = $this->getState('typeinfo', null, 'string'); if ($fltTypeinfo) { $query->where($db->qn('typeinfo') . ' = ' . $db->q($fltTypeinfo)); } $fltPublished = $this->getState('published', 0, 'int'); $query->where($db->qn('published') . ' = ' . $db->q($fltPublished)); $search = $this->getState('search', null); if ($search) { $search = '%' . $search . '%'; $query->where('(' . $db->qn('id') . ' LIKE ' . $db->quote($search) . ' OR ' . $db->qn('ref_id') . ' LIKE ' . $db->quote($search) . ' OR ' . $db->qn('description') . ' LIKE ' . $db->quote($search) . ' OR ' . $db->qn('url') . ' LIKE ' . $db->quote($search) . ')'); } AclPermsHelper::whereOwnership($query); $order = $this->getState('filter_order', 'publish_up', 'cmd'); if (!in_array($order, array_keys($this->getTable()->getData()))) { $order = 'publish_up'; } $dir = $this->getState('filter_order_Dir', 'ASC', 'cmd'); $query->order($order . ' ' . $dir); return $query; }
/** * buildQuery * * @param bool $overrideLimits Param * * @return F0FQuery */ public function buildQuery($overrideLimits = false) { $db = $this->getDbo(); $browse = $this->getState('browse', false); $query = F0FQueryAbstract::getNew($db)->from($db->quoteName('#__autotweet_advanced_attrs') . ' a'); if ($browse) { $query->select('r.*, a.client_id, a.option, a.id as attr_id, a.ref_id attr_ref_id'); } else { $query->select('a.*'); } $fltOption = $this->getState('option-filter', null, 'cmd'); if ($fltOption) { if ($fltOption == 'com_flexicontent') { $fltOption = 'com_content'; } $query->where($db->qn('a.option') . ' = ' . $db->q($fltOption)); } $fltRefId = $this->getState('ref_id'); if ($fltRefId) { $query->where($db->qn('a.ref_id') . ' = ' . $db->q($fltRefId)); } $fltRequestId = $this->getState('request_id', null, 'int'); if ($fltRequestId) { $query->where($db->qn('a.request_id') . ' = ' . $db->q($fltRequestId)); } $fltEvergreen = $this->getState('evergreentype_id'); if ($fltEvergreen) { $query->where($db->qn('a.evergreentype_id') . ' = ' . $db->q($fltEvergreen)); if ($fltEvergreen == PlgAutotweetBase::POSTTHIS_YES) { if ($browse) { $query->leftJoin($db->quoteName('#__autotweet_requests') . ' r ON (a.request_id = r.id)'); } else { $query->from($db->quoteName('#__autotweet_requests') . ' r'); $query->where('a.request_id = r.id'); $query->where('r.published = 1'); } } } $fltNextseq = $this->getState('nextseq'); if ($fltNextseq) { $query->where($db->qn('a.id') . ' < ' . $db->q($fltNextseq)); } $fltPublishup = $this->getState('publish_up', null, 'date'); if ($fltPublishup) { $fltPublishup = $fltPublishup . '%'; $query->where($db->qn('r.publish_up') . ' LIKE ' . $db->q($fltPublishup)); } $search = $this->getState('search', null); if ($search) { $search = '%' . $search . '%'; $query->where('(' . $db->qn('r.id') . ' LIKE ' . $db->quote($search) . ' OR ' . $db->qn('r.ref_id') . ' LIKE ' . $db->quote($search) . ' OR ' . $db->qn('r.description') . ' LIKE ' . $db->quote($search) . ' OR ' . $db->qn('r.url') . ' LIKE ' . $db->quote($search) . ')'); } $fltPlugin = $this->getState('plugin', null, 'string'); if ($fltPlugin) { $query->where($db->qn('r.plugin') . ' = ' . $db->q($fltPlugin)); } $order = $this->getState('filter_order', 'a.id', 'cmd'); $dir = $this->getState('filter_order_Dir', 'DESC', 'cmd'); $query->order($order . ' ' . $dir); return $query; }