<?php
class AdsManagerDatabase extends DictionaryDatabaseHandler {
//put your code here
public $adsMgr;
function __construct(AdsManager $adsMgr) {
parent::__construct($adsMgr->getTG());
$this->adsMgr = $adsMgr;
}
function getAdsManager() : AdsManager{
return $this->adsMgr;
}
function isAdvertised($userid,$adsid){
$sql = "SELECT * FROM `".DatabaseHandler::$databaseName."`.`dic_ads` WHERE userid='".$userid."' and adsid='".$adsid."'";
// $this->connection->query ( "SET NAMES utf8" );
$result = $this->connection->query ( $sql );
$rows = mysqli_fetch_assoc($result);
if(is_array($rows) && count($rows)>0){
return true;
}
else
return false;
}
function insertUserAsAdvertised($userid,$adsid){
$sql = "insert into dic_ads(userid,adsid) values('$userid','$adsid')";
$result = $this->connection->query ( $sql );
}
function increaseAdsSent($adsid){
$sql = "update dic_ads_pool set adsSent = adsSent +1 where adsID like '$adsid'";
$result = $this->connection->query ( $sql );
}
function getActiveAds($botID){
$databaseName = DatabaseHandler::$databaseName;
$sql = "SELECT * FROM `$databaseName`.`dic_ads_pool` WHERE botID='$botID' and adsSent < adsLimit and active = 1";
if($this->connection == null){
$this->getTS()->sendMessage("no connection", $this->getTS()->adminId);
}
$result = $this->connection->query ( $sql );
$resultsAsArray = $result->fetch_all(MYSQLI_ASSOC);
return $resultsAsArray;
}
function getSomeNotAdvertisedUsers($targetNumber, $adsID="",$botID=""){
// $targetNumber = 4;
$sql = "SELECT dicusers.userid FROM `".DatabaseHandler::$databaseName."`.`dicusers` WHERE userid not in (select dic_ads.userid from dic_ads where dic_ads.adsid LIKE '".$adsID."') ORDER BY rand() limit ".$targetNumber;
$sql = "SELECT dicusers.userid FROM `".DatabaseHandler::$databaseName."`.`dicusers` WHERE userid not in (select dic_ads.userid from dic_ads where dic_ads.adsid LIKE '".$adsID."') limit ".$targetNumber;
$sql = "SELECT dicusers.userid FROM `".DatabaseHandler::$databaseName."`.`dicusers` WHERE userid not in (select dic_ads.userid from dic_ads where dic_ads.adsid LIKE '".$adsID."') and userid not in (select dicusers_bots.userID from dicusers_bots where dicusers_bots.botID LIKE '$botID' AND dicusers_bots.active = 0) ORDER BY rand() limit $targetNumber";
$this->connection->query ( "SET NAMES utf8" );
$result = $this->connection->query ( $sql ) or die ( $this->connection->error );
$wordArrayResult = array();
while ($userData = mysqli_fetch_assoc($result)){
$wordArrayResult[] = $userData;
}
return $wordArrayResult;
}
// function isAdFinished(){
// $sql = "SELECT dicusers.userid FROM `".DatabaseHandler::$databaseName."`.`dicusers` WHERE userid not in (select dic_ads.userid from dic_ads where dic_ads.adsid LIKE '$adsID') ORDER BY rand() limit $targetNumber";
// }
}