<?php

include 'config.php';
#include 'A/Db/Sqlite.php';
#include 'A/Db/Tabledatagateway.php';
class Projects extends A_Db_Tabledatagateway
{
}
$db = new A_Db_Sqlite3($ConfigArray['DBDSN_SQLITE']);
$db->connect();
if ($db->isError()) {
    die('ERROR: ' . $db->getMessage());
}
$project = new Projects($db);
$rows = $project->find(2);
dump($project->sql);
dump($rows);
$rows = $project->find('clients_id=', 1);
dump($project->sql);
dump($rows);
예제 #2
0
 /**
  * Return projects visible for $user that have $company for client
  *
  * @param User $user
  * @param Company $company
  * @param boolean $all_for_admins_and_pms
  * @return array
  */
 function findByUserAndCompany($user, $company, $all_for_admins_and_pms = false)
 {
     if (!instance_of($user, 'User')) {
         return null;
     }
     // if
     if (instance_of($company, 'Company')) {
         $company_id = $company->getIsOwner() ? 0 : $company->getId();
     } else {
         return null;
     }
     // if
     // Admin or project manager
     if ($all_for_admins_and_pms && ($user->isProjectManager() || $user->isAdministrator())) {
         return Projects::find(array('conditions' => array('company_id = ?', $company_id), 'order' => 'name'));
     }
     // if
     // Clients and other members
     $rows = db_execute_all('SELECT project_id FROM ' . TABLE_PREFIX . 'project_users WHERE user_id = ?', $user->getId());
     if (is_foreachable($rows)) {
         $project_ids = array();
         foreach ($rows as $row) {
             $project_ids[] = (int) $row['project_id'];
         }
         // if
     } else {
         return null;
     }
     // if
     return Projects::find(array('conditions' => array('id IN (?) AND company_id = ?', $project_ids, $company_id), 'order' => 'name'));
 }
예제 #3
0
 /**
  * Return array of active projects that this user created
  *
  * @access public
  * @param void
  * @return array
  */
 function getOwnProjects()
 {
     if (is_null($this->own_projects)) {
         $this->own_projects = Projects::find('`created_by_id` = ' . $this->getId());
     }
     // if
     return $this->own_projects;
 }
<?php

ini_set('date.timezone', 'America/Los_Angeles');
include 'config.php';
// need to set the database type for PDO factory
$ConfigArray['DBDSN']['phptype'] = 'mysql';
//include 'A/Db/Pdo.php';
include 'A/Db/Tabledatagateway.php';
class Projects extends A_Db_Tabledatagateway
{
}
$db = new A_Db_Pdo($ConfigArray['DBDSN']);
$db->connect();
if ($db->isError()) {
    die('ERROR: ' . $db->getMessage());
}
$project = new Projects($db, 'users');
$rows = $project->find(1);
dump($project->sql);
dump($rows);
// Get the current row
dump($rows->current());
// Get all rows
$all = $rows->fetchAll();
dump($all);
// Update some data
$data = array('lastname' => 'testert');
$updated = $project->update($data, 'id = 1');
//dump($updated);
$rows = $project->find(1);
dump($rows->current());
예제 #5
0
        parent::__construct($db);
    }
    public function getFullname()
    {
        return $this->data['title'] . ', ' . $this->data['name'] . ' ' . $this->data['surname'];
    }
}
$db = new A_Db_MySQL($config['db']);
$db->connect();
if ($db->isError()) {
    die('ERROR: ' . $db->getMessage());
}
Projects::setDb($db);
$project = new Projects();
#$project->find("id='3'");
$project->find("client_id='2'");
#$project->set('title', 'Mr');
#$project->set('name', 'Frodo');
#$project->set('surname', 'Baggins');
#$project->set('email', '*****@*****.**');
//User::getInstance();
echo 'table=' . $project->getTable() . '<br/>';
dump($project->toArray());
/*
$project->insert();
$project->unsetAttr();
$rs = $project->getAll();
foreach ( $rs as $result ) {
    echo $result->get('fullname') ."\n";
    // OR
    echo $result->fullname ."\n";
<?php

include 'config.php';
#include 'A/Db/Sqlite.php';
#include 'A/Db/Activerecord.php';
class Projects extends A_Db_Activerecord
{
}
$db = new A_Db_Sqlite3($ConfigArray['DBDSN_SQLITE']);
$db->connect();
if ($db->isError()) {
    die('ERROR: ' . $db->getMessage());
}
$project = new Projects($db);
$project->find(2);
dump($project->sql);
dump($project->toArray());