public function unblock($token, $logger)
 {
     // prune old tokens:
     $this->_db->setQuery('DELETE FROM #__bfstop_unblock_token ' . 'WHERE DATE_ADD(crdate, INTERVAL ' . self::TokenValidDays . ' DAY) < ' . $this->_db->quote(date('Y-m-d H:i:s')));
     $this->_db->execute();
     BFStopDBHelper::checkDBError($this->_db, $logger);
     // get token:
     $this->_db->setQuery('SELECT * FROM #__bfstop_unblock_token WHERE token=' . $this->_db->quote($token));
     $unblockTokenEntry = $this->_db->loadObject();
     BFStopDBHelper::checkDBError($this->_db, $logger);
     if ($unblockTokenEntry == null) {
         $logger->log("com_bfstop-tokenunblock: Token not found.", JLog::ERROR);
         return false;
     }
     BFStopUnblockHelper::unblock($this->_db, array($unblockTokenEntry->block_id), 1, $logger);
     $sql = 'DELETE FROM #__bfstop_unblock_token WHERE token=' . $this->_db->quote($token);
     $this->_db->setQuery($sql);
     $success = $this->_db->execute();
     BFStopDBHelper::checkDBError($this->_db, $logger);
     if (!$success) {
         $logger->log("com_bfstop-tokenunblock: Could not delete unblock_token.", JLog::ERROR);
     } else {
         $logger->log("com_bfstop-tokenunblock: Successfully unblocked with token.", JLog::INFO);
     }
     return $success;
 }
Exemplo n.º 2
0
 public static function unblock($db, $ids, $source, $logger)
 {
     if (!is_array($ids) || sizeof($ids) == 0) {
         $logger->log("com_bfstop unblock: Invalid parameter IDs given!", JLog::ERROR);
         return false;
     }
     $sql = 'SELECT * FROM #__bfstop_unblock WHERE ' . 'block_id IN (' . implode(", ", $ids) . ')';
     $db->setQuery($sql);
     $unblockEntry = $db->loadObject();
     BFStopDBHelper::checkDBError($db, $logger);
     if ($unblockEntry != null) {
         $logger->log("com_bfstop unblock: Unblock already exists!", JLog::ERROR);
         return false;
     }
     $unblockResult = true;
     $unblockDate = date('Y-m-d H:i:s');
     foreach ($ids as $id) {
         $unblock = new stdClass();
         $unblock->block_id = $id;
         $unblock->source = $source;
         // source of 1 indicates unblock via email
         $unblock->crdate = $unblockDate;
         $unblockResult = $db->insertObject('#__bfstop_unblock', $unblock);
         BFStopDBHelper::checkDBError($db, $logger);
         if (!$unblockResult) {
             $logger->log("com_bfstop-tokenunblock: Inserting unblock failed!", JLog::ERROR);
         }
     }
     return $unblockResult;
 }
Exemplo n.º 3
0
 public function remove($ids, $logger)
 {
     $db = JFactory::getDBO();
     $query = $db->getQuery(true);
     $conditions = array($db->quoteName('id') . ' IN (' . implode(", ", $ids) . ')');
     $query->delete($db->quoteName('#__bfstop_whitelist'));
     $query->where($conditions);
     $db->setQuery($query);
     $db->query();
     BFStopDBHelper::checkDBError($db, $logger);
 }
Exemplo n.º 4
0
 public function myCheckDBError()
 {
     BFStopDBHelper::checkDBError($this->db, $this->logger);
 }