Example #1
0
 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/");
     }
 }
Example #2
0
 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);
 }
Example #3
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));
     }
 }
Example #4
0
 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";
 }
Example #5
0
 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);
 }
Example #6
0
 /**
  * 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;
 }