Esempio n. 1
0
 /**
  * Get Request Handler
  *
  * This method is called when a request is a GET
  *
  * @return array
  */
 public function executeGet()
 {
     $valid = $this->hasRequiredParameters($this->requiredParams);
     if ($valid instanceof Frapi_Error) {
         return $valid;
     }
     $username = $this->getParam('username');
     $password = $this->getParam('password');
     $project_id = $this->getParam('project_id', self::TYPE_INT);
     // Attempt to login as user, a little bit of a hack as we currently
     // require the $_POST['login'] var to be set as well as a global AppUI
     $AppUI = new CAppUI();
     $GLOBALS['AppUI'] = $AppUI;
     $_POST['login'] = '******';
     if (!$AppUI->login($username, $password)) {
         throw new Frapi_Error('INVALID_LOGIN');
     }
     $project = new CProject();
     $allowed_projects = $project->getAllowedProjects($AppUI->user_id);
     // Project ID  is the key, so lets get them in to an array so we can
     // easily check
     $allowed_projects = array_keys($allowed_projects);
     if (!in_array($project_id, $allowed_projects)) {
         throw new Frapi_Error('PERMISSION_ERROR');
     }
     // User has permission so load the project for display
     $project = (array) $project->load($project_id);
     $project_departments = CProject::getDepartments($AppUI, $project_id);
     $project_contacts = CProject::getContacts($AppUI, $project_id);
     $project['project_departments'] = array();
     foreach ($project_departments as $key => $value) {
         $project['project_departments'][] = $value['dept_id'];
     }
     $project['project_contacts'] = array();
     foreach ($project_contacts as $key => $value) {
         $project['project_contacts'][] = $value['contact_id'];
     }
     // Remove the data that is not for display
     unset($project['_tbl_prefix'], $project['_tbl'], $project['_tbl_key'], $project['_error'], $project['_query'], $project['_tbl_module']);
     $this->data['project'] = $project;
     $this->data['success'] = true;
     $this->setTemplateFileName('Project');
     return $this->toArray();
 }
Esempio n. 2
0
 /**
  * Get Request Handler
  *
  * This method is called when a request is a GET
  *
  * @return array
  */
 public function executeGet()
 {
     $valid = $this->hasRequiredParameters($this->requiredParams);
     if ($valid instanceof Frapi_Error) {
         return $valid;
     }
     $username = $this->getParam('username');
     $password = $this->getParam('password');
     // Attempt to login as user, a little bit of a hack as we currently
     // require the $_POST['login'] var to be set as well as a global AppUI
     $AppUI = new CAppUI();
     $GLOBALS['AppUI'] = $AppUI;
     $_POST['login'] = '******';
     if (!$AppUI->login($username, $password)) {
         throw new Frapi_Error('INVALID_LOGIN');
     }
     $project = new CProject();
     $this->data['projects'] = $project->getAllowedProjects($AppUI->user_id);
     $this->data['success'] = true;
     $this->setTemplateFileName('ProjectsGet');
     return $this->toArray();
 }
Esempio n. 3
0
    die('You should not access this file directly.');
}
global $caller, $locale_char_set, $showWork, $sortByName, $showLabels;
global $gantt_arr, $showPinned, $showArcProjs, $showHoldProjs, $showDynTasks;
global $showLowTasks, $user_id, $w2Pconfig;
w2PsetExecutionConditions($w2Pconfig);
$showLabels = w2PgetParam($_REQUEST, 'showLabels', false);
$sortByName = w2PgetParam($_REQUEST, 'sortByName', false);
$project_id = w2PgetParam($_REQUEST, 'project_id', 0);
$f = w2PgetParam($_REQUEST, 'f', 0);
// get the prefered date format
$df = $AppUI->getPref('SHDATEFORMAT');
$project = new CProject();
$criticalTasks = $project_id > 0 ? $project->getCriticalTasks($project_id) : null;
// pull valid projects and their percent complete information
$projects = $project->getAllowedProjects($AppUI->user_id, false);
##############################################
/* gantt is called now by the todo page, too.
** there is a different filter approach in todo
** so we have to tweak a little bit,
** also we do not have a special project available
*/
$caller = w2PgetParam($_REQUEST, 'caller', null);
if ($caller == 'todo') {
    $user_id = w2PgetParam($_REQUEST, 'user_id', $AppUI->user_id);
    $projects[$project_id]['project_name'] = $AppUI->_('Todo for') . ' ' . CContact::getContactByUserid($user_id);
    $projects[$project_id]['project_color_identifier'] = 'ff6000';
    $showLabels = w2PgetParam($_REQUEST, 'showLabels', false);
    $showPinned = w2PgetParam($_REQUEST, 'showPinned', false);
    $showArcProjs = w2PgetParam($_REQUEST, 'showArcProjs', false);
    $showHoldProjs = w2PgetParam($_REQUEST, 'showHoldProjs', false);
Esempio n. 4
0
    $showArcProjs = $showArcProjs != '0' ? '1' : $showArcProjs;
    $showHoldProjs = w2PgetParam($_POST, 'showHoldProjs', '0');
    $showHoldProjs = $showHoldProjs != '0' ? '1' : $showHoldProjs;
    $showDynTasks = w2PgetParam($_POST, 'showDynTasks', '0');
    $showDynTasks = $showDynTasks != '0' ? '1' : $showDynTasks;
    $showLowTasks = w2PgetParam($_POST, 'showLowTasks', '0');
    $showLowTasks = $showLowTasks != '0' ? '1' : $showLowTasks;
}
/**
 * prepare the array with the tasks to display in the task filter
 * (for the most part this is code harvested from gantt.php)
 *
 */
$filter_task_list = array();
$projectObject = new CProject();
$projects = $projectObject->getAllowedProjects($AppUI->user_id);
$q = new w2p_Database_Query();
$q->addTable('tasks', 't');
$q->addJoin('projects', 'p', 'p.project_id = t.task_project');
$q->addQuery('t.task_id, task_parent, task_name, task_start_date, task_end_date' . ', task_duration, task_duration_type, task_priority, task_percent_complete' . ', task_order, task_project, task_milestone, project_name, task_dynamic');
$q->addWhere('project_status != 7 AND task_dynamic = 1');
if ($project_id) {
    $q->addWhere('task_project = ' . $project_id);
}
$task =& new CTask();
$task->setAllowedSQL($AppUI->user_id, $q);
$proTasks = $q->loadHashList('task_id');
$q->clear();
$filter_task_list = array();
$orrarr[] = array('task_id' => 0, 'order_up' => 0, 'order' => '');
foreach ($proTasks as $row) {
Esempio n. 5
0
$obj = $AppUI->restoreObject();
if ($obj) {
    $forum = $obj;
    $forum_id = $forum->forum_id;
} else {
    $forum->load($AppUI, $forum_id);
}
if (!$forum && $forum_id > 0) {
    $AppUI->setMsg('Forum');
    $AppUI->setMsg('invalidID', UI_MSG_ERROR, true);
    $AppUI->redirect();
}
$status = isset($forum->forum_status) ? $forum->forum_status : -1;
$prj = new CProject();
if ($forum_id) {
    $projects = $prj->getAllowedProjects($AppUI->user_id, false);
} else {
    $projects = $prj->getAllowedProjects($AppUI->user_id, true);
}
foreach ($projects as $project_id => $project_info) {
    $projects[$project_id] = $project_info['project_name'];
}
$projects = arrayMerge(array(0 => $all_projects), $projects);
$users = $perms->getPermittedUsers('forums');
$ttl = $forum_id > 0 ? 'Edit Forum' : 'Add Forum';
$titleBlock = new CTitleBlock($ttl, 'support.png', $m, $m . '.' . $a);
$titleBlock->addCrumb('?m=forums', 'forums list');
if ($canDelete && $forum_id > 0) {
    $titleBlock->addCrumbRight('<table cellspacing="0" cellpadding="0" border="0"?<tr><td><a class="delete" href="javascript:delIt()"><span>' . $AppUI->_('delete forum') . '</span></a></td></tr></table>');
}
$titleBlock->show();
Esempio n. 6
0
<?php

/* $Id: index.php 1522 2010-12-08 05:08:07Z caseydk $ $URL: https://web2project.svn.sourceforge.net/svnroot/web2project/trunk/modules/reports/index.php $ */
if (!defined('W2P_BASE_DIR')) {
    die('You should not access this file directly.');
}
$project_id = (int) w2PgetParam($_REQUEST, 'project_id', 0);
$report_type = w2PgetParam($_REQUEST, 'report_type', '');
$canReport = canView('reports');
$canRead = canView('projects', $project_id);
if (!$canReport || !$canRead) {
    $AppUI->redirect('m=public&a=access_denied');
}
$project_list = array('0' => $AppUI->_('All', UI_OUTPUT_RAW));
$projectObj = new CProject();
$projectList = $projectObj->getAllowedProjects($AppUI->user_id, false);
$company = new CCompany();
$companyList = $company->getCompanies($AppUI);
foreach ($projectList as $pr) {
    if ($pr['project_id'] == $project_id) {
        $display_project_name = '(' . $companyList[$pr['project_company']]['company_name'] . ') ' . $pr['project_name'];
    }
    $project_list[$pr['project_id']] = '(' . $companyList[$pr['project_company']]['company_name'] . ') ' . $pr['project_name'];
}
// get the prefered date format
$df = $AppUI->getPref('SHDATEFORMAT');
$reports = $AppUI->readFiles(W2P_BASE_DIR . '/modules/reports/reports', '\\.php$');
// setup the title block
if (!$suppressHeaders) {
    $titleBlock = new CTitleBlock('Project Reports', 'printer.png', $m, $m . '.' . $a);
    $titleBlock->addCrumb('?m=projects', 'projects list');
Esempio n. 7
0
?>
        </td>
    </tr>
    <?php 
if (countFiles($folder) > 0) {
    echo displayFiles($AppUI, $folder_id, $task_id, $project_id, $company_id);
} elseif (!$limited or $folder_id != 0) {
    echo '<tr><td colspan="20">' . $AppUI->_('no files') . '</td></tr>';
}
echo getFolders($folder_id);
//Lets add our bulk form
$folders_avail = getFolderSelectList();
//used O (uppercase 0)instead of 0 (zero) to keep things in place
$folders = array('-1' => array(0 => 'O', 1 => '(Move to Folder)', 2 => -1)) + array('0' => array(0 => 0, 1 => 'Root', 2 => -1)) + $folders_avail;
$project = new CProject();
$sprojects = $project->getAllowedProjects($AppUI, false);
foreach ($sprojects as $prj_id => $proj_info) {
    $sprojects[$prj_id] = $idx_companies[$prj_id] . ': ' . $proj_info['project_name'];
}
asort($sprojects);
$sprojects = array('O' => '(' . $AppUI->_('Move to Project', UI_OUTPUT_RAW) . ')') + array('0' => '(' . $AppUI->_('All Projects', UI_OUTPUT_RAW) . ')') + $sprojects;
?>
	<tr>
	    <td colspan="50" align="right">
            <form name="frm_bulk" method="post" action="?m=files&a=do_files_bulk_aed" accept-charset="utf-8">
                <input type="hidden" name="redirect" value="<?php 
echo $current_uri;
?>
" />
                <?php 
echo arraySelect($sprojects, 'bulk_file_project', 'style="width:180px" class="text"', 'O');