/** * @expectedException \bmtmgr\utils\DuplicateEntryException */ public function testSeasonDuplicates() { Model::connect(); $s = Season::create('dup', false, 'http://example.org/foo3'); $s->save(); $s2 = Season::create('dup', true, 'http://example.org/foo4'); $s2->save(); }
public static function set_database_for($username) { if ($username == '' || $username == 'www') { return; } $data_file = "app/data/users/{$username}.db"; if (!file_exists($data_file)) { $user_file = 'app/data/new_user.db'; copy($user_file, $data_file); } parent::connect($data_file, TRUE); }
public static function getPfById($id) { $conn = parent::connect(); $ssql = "SELECT * FROM portfolios WHERE id = :id"; $sst = $conn->prepare($ssql); if ($sst->execute(array(":id" => $id))) { $row = $sst->fetch(PDO::FETCH_ASSOC); if (!empty($row)) { return new Portfolio($row); } //return "Failed to get result"; return false; } return false; }
public static function getAppFor($jobId, $page, $limit) { $conn = parent::connect(); $sql = "SELECT * FROM applications WHERE jobID = :id ORDER BY id DESC"; $pager = new OKPager($sql, $limit); $pager->conn = $conn; $params = array(':id' => $jobId); $totalRows = $pager->countTotalRows($params); $resultSet = $pager->fetchData($page, $params); $rs = array(); $rs['num_rows'] = $totalRows; foreach ($resultSet as $result) { $rs['result'][] = $result; } return $rs; }
public static function getSkillsFor($userId) { $conn = parent::connect(); $sql = "SELECT skills.skill, skills.skill_id FROM skills LEFT JOIN user_skills ON user_skills.skill_id = skills.skill_id WHERE user_skills.user_id = :id"; $param = array(":id" => $userId); $st = $conn->prepare($sql); if ($st->execute($param)) { $skills = array(); while ($rows = $st->fetch(PDO::FETCH_ASSOC)) { if (!empty($rows)) { $skills[] = $rows; } } return $skills; } return null; }
public function testEntryCreation() { Model::connect(); $club1 = User::create('entry_test1', 'entry_test1', '*****@*****.**', []); $club1->save(); $club2 = User::create('entry_test2', 'entry_test2', '*****@*****.**', []); $club2->save(); $s = Season::create('foobar', true, 'http://base/url'); $this->assertEquals($s->id, null); $this->assertEquals($s->_is_new, true); $this->assertEquals($s->name, 'foobar'); $this->assertEquals($s->visible, true); $this->assertEquals($s->baseurl, 'http://base/url'); $s->save(); $id = $s->id; $this->assertNotEquals($s->id, null); $this->assertEquals($s->_is_new, false); $this->assertEquals($s->name, 'foobar'); $this->assertEquals($s->visible, true); $s->save(); $this->assertEquals($s->id, $id); $this->assertEquals($s->_is_new, false); }
<?php namespace bmtmgr; \set_error_handler(function ($errno, $errstr, $errfile, $errline) { throw new \ErrorException($errstr, 0, $errno, $errfile, $errline); }); // All modules can assume access to the following modules and the timezone being set correctly. require_once __DIR__ . '/utils.php'; require_once __DIR__ . '/model.php'; require_once __DIR__ . '/config.php'; config\Config::load(); require_once __DIR__ . '/db.php'; Model::connect(); require_once __DIR__ . '/user.php'; // These should be autoloaded later require_once \dirname(__DIR__) . '/models/discipline.php'; require_once \dirname(__DIR__) . '/models/entry.php'; require_once \dirname(__DIR__) . '/models/player.php'; require_once \dirname(__DIR__) . '/models/season.php'; require_once \dirname(__DIR__) . '/models/tournament.php'; require_once \dirname(__DIR__) . '/models/user.php'; require_once \dirname(__DIR__) . '/models/publication.php'; \date_default_timezone_set(config\get('timezone'));
public function &getConnection() { static $instance = array(); if (!isset($instance[0]) || !$instance[0]) { $instance[0] = Model::connect(); } return $instance[0]; }
public function exeDatabaseConnect($ignoreCheckForm = false) { // Iniciar banco de dados se houver instancia, inicia classes Token, Data, SaveData e SelectData //Run::$DEBUG_PRINT = 1; // Debug::print_r("dataForm", $this->dataForm); if ($ignoreCheckForm === false || ((int) $this->dataIntern[$this->settings['ref']] > 0 || isset($this->dataForm['form_id']) && $this->dataForm['form_id'] == $this->settings['form_id'] && count($this->dataErrors) <= 0)) { $this->database = Model::connect($this->settings['database_id']); if (!$this->database) { Error::show(5200, "Model-> A conexão com o banco não foi iniciada. " . __FUNCTION__, __FILE__, __LINE__, ''); $this->settings['auto_load'] = false; $this->settings['auto_save'] = false; } $this->query = Model::$query; $this->orderData = new orderData($this); $this->saveData = new SaveData($this, $this->database, $this->query); $this->selectData = new selectData($this); } }
public function checkReadMail($pk = 0) { $image = imagecreatefromstring(file_get_contents(RUN_PATH . 'helpers/mailManager/blank.gif')); header('Content-Type: image/gif'); imagepng($image); if (!$this->database) { $this->database = Model::connect($this->connectionID); } $pk = (int) $pk; $query = Model::$query; $result = $query->update("mail_manager")->set(" mail_read = mail_read+1, date_read = '" . Run::$control->date->getDateUs() . "'")->where(" pk_mail = '" . $pk . "'")->execute()->getResult(); if ((is_integer($result) || $warMsg != "") && $this->database->getError() != "00000") { // Error::show(5200, "Model-> Erro ao atualizar mailManager/checkReadMail:\n ".$warMsg."\n ". $this->database->getError() ." \n$sql_query ".__FUNCTION__, __FILE__, __LINE__, ''); } exit; }
public static function findJobWithSkills($page, $skills = array()) { $skill_list = implode(", ", $skills); //trying to figure out how on earth this can't be on searchBySkills() //it is actually supposed to pick all jobs matching a given skill array $sql = "SELECT DISTINCT jobs.jobID, jobs.title, jobs.posted_by, jobs.description, jobs.posted_date, jobs.status\n FROM jobs LEFT JOIN job_skills ON job_skills.job = jobs.jobID\n WHERE job_skills.skill IN({$skill_list}) ORDER BY posted_date DESC"; $conn = parent::connect(); $pp = new OKPager($sql); $pp->conn = $conn; $totalRows = $pp->countTotalRows(); $listings = array(); $listings['num_rows'] = $totalRows; foreach ($pp->fetchData($page) as $result) { $listings['result'][] = new Job($result); } return $listings; }