public function editAction() { //rechercher projet + users $identity = Zend_Auth::getInstance()->getIdentity(); $user_table = new USVN_Db_Table_Users(); $users = $user_table->fetchRow(array('users_login = ?' => $identity['username'])); $table = new USVN_Db_Table_Projects(); $this->view->project = $table->fetchRow(array('projects_name = ?' => str_replace(USVN_URL_SEP, '/', $this->getRequest()->getParam('name')))); $table = new USVN_Db_Table_UsersToProjects(); $UserToProject = $table->fetchRow(array('users_id = ?' => $users->users_id, 'projects_id = ?' => $this->view->project->projects_id)); if ($UserToProject !== null) { $this->view->AdminProject = 1; } if ($this->view->project === null) { $this->_redirect("/admin/project/"); } }
public function testInsertUserToProjects() { $table = new USVN_Db_Table_Users(); $obj = $table->fetchNew(); $obj->setFromArray(array('users_login' => 'TestOk', 'users_password' => 'password', 'users_firstname' => 'firstname', 'users_lastname' => 'lastname', 'users_email' => '*****@*****.**')); $obj->save(); $users = $table->findByName("TestOk"); $table = new USVN_Db_Table_Projects(); $project = $table->fetchNew(); $project->setFromArray(array('projects_name' => 'InsertProjectOk', 'projects_start_date' => '1984-12-03 00:00:00')); $project->save(); $projects = $table->findByName("InsertProjectOk"); $table->AddUserToProject($users, $projects); $UserToProject = new USVN_Db_Table_UsersToProjects(); $this->assertEquals(count($UserToProject->fetchRow(array('users_id = ?' => $users->users_id, 'projects_id = ?' => $projects->projects_id))), 1); $table->DeleteUserToProject($users, $projects); $this->assertEquals(count($UserToProject->fetchRow(array('users_id = ?' => $users->users_id, 'projects_id = ?' => $projects->projects_id))), 0); }
/** * Delete a row in users_to_project * * @param int $user * @param int $project */ public function DeleteUserToProject($user, $project) { $table = new USVN_Db_Table_UsersToProjects(); $check = count($table->fetchRow(array('users_id = ?' => $user->users_id, 'projects_id = ?' => $project->projects_id))); if ($check == 1) { $table->delete(array('users_id = ?' => $user->users_id, 'projects_id = ?' => $project->projects_id)); } }
public function completionAction() { echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"; $table = "<table width=100%>"; $nb = 0; echo "<files>\n"; if ($_GET['idx'] == 1) { if (isset($_GET['grp']) && $_GET['grp'] != "") { $table_groups = new USVN_Db_Table_Groups(); $res_groups = $table_groups->findByGroupsName($_GET['grp']); $table_userstogroups = new USVN_Db_Table_UsersToGroups(); $res_usersspe = $table_userstogroups->findByGroupId($res_groups->groups_id); } else { if (isset($_GET['prj']) && $_GET['prj'] != "") { $table_project = new USVN_Db_Table_Projects(); $res_project = $table_project->findByName($_GET['prj']); $table_userstoprojects = new USVN_Db_Table_UsersToProjects(); $res_usersspe = $table_userstoprojects->findByProjectId($res_project->projects_id); } } $table_users = new USVN_Db_Table_Users(); $res_users = $table_users->allUsersLike($_GET['txt']); foreach ($res_users as $user) { $find = false; foreach ($res_usersspe as $tmpuser) { if ($tmpuser->users_id == $user->users_id) { $find = true; } } if ($find == false) { $table .= "<tr id='user" . $nb . "' class='comp'>"; $table .= "<td align=left onclick='javascript:dumpInput(" . "\"" . $user->users_login . "\"" . "," . "\"" . $_GET['input'] . "\"" . ", \"completion\")'>"; $table .= "<label id='luser" . $nb . "'>" . $user->users_login . "</label>"; $table .= "</td></tr>"; $nb++; } } } if ($_GET['idx'] == 2) { $table_project = new USVN_Db_Table_Projects(); $res_project = $table_project->findByName($_GET['prj']); $table_groupstoprojects = new USVN_Db_Table_GroupsToProjects(); $res_groupstoprojects = $table_groupstoprojects->findByProjectId($res_project->projects_id); $table_groups = new USVN_Db_Table_Groups(); $res_groups = $table_groups->allGroupsLike($_GET['txt']); foreach ($res_groups as $group) { $find = false; foreach ($res_groupstoprojects as $tmpgrp) { if ($tmpgrp->groups_id == $group->groups_id) { $find = true; } } if ($find == false) { $table .= "<tr id='grp" . $nb . "' class='comp'>"; $table .= "<td align=left onclick='javascript:dumpInput(" . "\"" . $group->groups_name . "\"" . "," . "\"" . $_GET['input'] . "\"" . ", \"completion1\")'>"; $table .= "<label id='lgrp" . $nb . "'>" . $group->groups_name . "</label>"; $table .= "</td></tr>"; $nb++; } } } if ($_GET['idx'] == 3) { $table_users = new USVN_Db_Table_Users(); $res_users = $table_users->allUsersLike($_GET['txt']); $table_groups = new USVN_Db_Table_Groups(); $res_groups = $table_groups->findByGroupsName($_GET['grp']); $res_usersspe = $table_users->allLeader($res_groups->groups_id); foreach ($res_users as $user) { $find = false; foreach ($res_usersspe as $tmpuser) { if ($tmpuser->users_id == $user->users_id) { $find = true; } } if ($find == false) { $table .= "<tr id='user" . $nb . "' class='comp'>"; $table .= "<td align=left onclick='javascript:dumpInput(" . "\"" . $user->users_login . "\"" . "," . "\"" . $_GET['input'] . "\"" . ", \"completionleader\")'>"; $table .= "<label id='luser" . $nb . "'>" . $user->users_login . "</label>"; $table .= "</td></tr>"; $nb++; } } } if ($_GET['idx'] == 4) { $table_groups = new USVN_Db_Table_Groups(); $res_groups = $table_groups->findByGroupsName($_GET['grp']); $table_userstogroups = new USVN_Db_Table_UsersToGroups(); $res_usersspe = $table_userstogroups->noleaderFindByGroupId($res_groups->groups_id); $table_users = new USVN_Db_Table_Users(); $res_users = $table_users->allUsersLike($_GET['txt']); foreach ($res_users as $user) { $find = false; foreach ($res_usersspe as $tmpuser) { if ($tmpuser->users_id == $user->users_id) { $find = true; } } if ($find == false) { $table .= "<tr id='user" . $nb . "' class='comp'>"; $table .= "<td align=left onclick='javascript:dumpInput(" . "\"" . $user->users_login . "\"" . "," . "\"" . $_GET['input'] . "\"" . ", \"completion\")'>"; $table .= "<label id='luser" . $nb . "'>" . $user->users_login . "</label>"; $table .= "</td></tr>"; $nb++; } } } $table .= "</table>"; echo "<nbcomp>" . $nb . "</nbcomp>\n"; echo "<tableau><![CDATA[" . $table . "]]></tableau>\n"; echo "</files>\n"; }
public function timelineAction() { // $project = $this->getRequest()->getParam('project'); // $table = new USVN_Db_Table_Projects(); // $project = $table->fetchRow(array("projects_name = ?" => $project)); // /* @var $project USVN_Db_Table_Row_Project */ // if ($project === null) { // $this->_redirect("/"); // } // $this->_project = $project; $project = $this->_project; //get the identity of the user $identity = Zend_Auth::getInstance()->getIdentity(); $user_table = new USVN_Db_Table_Users(); $user = $user_table->fetchRow(array('users_login = ?' => $identity['username'])); // $table = new USVN_Db_Table_Projects(); // $this->view->project = $table->fetchRow(array('projects_name = ?' => $project->name)); $table = new USVN_Db_Table_UsersToProjects(); $userToProject = $table->fetchRow(array('users_id = ?' => $user->users_id, 'projects_id = ?' => $project->projects_id)); if ($userToProject == null) { //search project // $this->view->project = $project; // $this->view->user = $user; // $this->render('accesdenied'); // return; } $this->view->project = $project; $SVN = new USVN_SVN($this->_project->name); $this->view->log = $SVN->log(100); }
/** * Check if an user is in the project * * @param USVN_Db_Table_Row_User or string User * @return boolean */ public function userIsAdmin($user) { if (!is_object($user)) { $table = new USVN_Db_Table_Users(); $user = $table->fetchRow(array('users_login = ?' => $user)); } $table = new USVN_Db_Table_UsersToProjects(); $res = $table->fetchRow(array("users_id = ?" => $user->id, "projects_id = ?" => $this->id)); if ($res === null) { return false; } return true; }