Example #1
0
$not_overdue_limit = 5;
$overdue_limit = 20;
$show_more = false;
// Not due tasks
$not_due_tasks = ProjectTasks::getUpcomingWithoutDate($not_overdue_limit + 1);
if (count($not_due_tasks) > $not_overdue_limit) {
    $show_more = true;
    array_pop($not_due_tasks);
}
// Due Tasks
$overdue_upcoming_objects = ProjectTasks::getOverdueAndUpcomingObjects($overdue_limit + 1);
// FIXME: performance Killer
if (count($overdue_upcoming_objects) > $overdue_limit) {
    $show_more = true;
    array_pop($overdue_upcoming_objects);
}
$overdue_upcoming_objects = array_merge($not_due_tasks, $overdue_upcoming_objects);
$users = array();
// Render only when the context isnt 'all' and you have perms
$render_add = active_context_members(false) && ProjectTask::canAdd(logged_user(), active_context());
if ($render_add) {
    $users[] = array(0, lang('dont assign'));
    foreach (allowed_users_to_assign() as $company) {
        foreach ($company['users'] as $user) {
            $name = logged_user()->getId() == $user['id'] ? lang('me') : $user['name'];
            $users[] = array($user['id'], $name);
        }
    }
}
include_once 'template.php';
<div class="coInputMainBlock">
	
	<div>
		<table><tbody>
		<?php foreach($parameters as $parameter) {?>
			<tr style='height:30px;'>
				<td style="padding:3px 10px 0 10px;"><b><?php echo $parameter['name']; ?></b></td>
				<td align="left">
					<?php if($parameter['type'] == 'string'){ ?>
						<input id="parameterValues[<?php echo $parameter['name'] ?>]" name="parameterValues[<?php echo $parameter['name'] ?>]" />
					<?php }else if($parameter['type'] == 'date'){ ?>
						<?php echo pick_date_widget2('parameterValues['.$parameter['name'].']')?>
					<?php }else{ ?>
						<select name="<?php echo 'parameterValues['.$parameter['name'].']'; ?>">
						<?php
							$companies  = allowed_users_to_assign(active_context());
							foreach ($companies as $c) {?>
								<option value="<?php echo $c['id']; ?>"> <?php echo $c['name']; ?></option>
							<?php 
								$users = $c['users'];
								if ( count($users) ) {
									foreach ($users as $usr) {?>																
										<option value="<?php echo $usr['id'] ?>"> <?php echo $usr['name'] ?></option>
										
								<?php }
								}
							}	
							 
						?>
						</select>
					<?php } ?>
Example #3
0
/**
 * Render assign to SELECT
 *
 * @param string $list_name Name of the select control
 * @param Project $project Selected project, if NULL active project will be used
 * @param integer $selected ID of selected user
 * @param array $attributes Array of select box attributes, if needed
 * @return null
 */
function assign_to_select_box($list_name, $context = null, $selected = null, $attributes = null, $genid = null) {
	if (!$genid) $genid = gen_id();
	require_javascript('og/tasks/main.js');
	require_javascript('og/tasks/addTask.js');
	ob_start(); ?>
    <input type="hidden" id="<?php echo $genid ?>taskFormAssignedTo" name="<?php echo $list_name?>"></input>
	<div id="<?php echo $genid ?>assignto_div">
		<div id="<?php echo $genid ?>assignto_container_div"></div>
	</div>
	<script>
	og.drawAssignedToSelectBoxSimple = function(companies, user, genid) {
		usersStore = ogTasks.buildAssignedToComboStore(companies);
		var assignCombo = new Ext.form.ComboBox({
			renderTo:genid + 'assignto_container_div',
			name: 'taskFormAssignedToCombo',
			id: genid + 'taskFormAssignedToCombo',
			value: user,
			store: usersStore,
			displayField:'text',
	        typeAhead: true,
	        mode: 'local',
	        triggerAction: 'all',
	        selectOnFocus:true,
	        width:160,
	        tabIndex: '150',
	        valueField: 'value',
	        emptyText: (lang('select user or group') + '...'),
	        valueNotFoundText: ''
		});
		assignCombo.on('select', function() {
			combo = Ext.getCmp(genid + 'taskFormAssignedToCombo');
			assignedto = document.getElementById(genid + 'taskFormAssignedTo');
			if (assignedto) assignedto.value = combo.getValue();
		});
		assignedto = document.getElementById(genid + 'taskFormAssignedTo');
		if (assignedto) assignedto.value = '<?php echo ($selected ? $selected : '0') ?>';
	}
	og.drawAssignedToSelectBoxSimple(<?php echo json_encode(allowed_users_to_assign($context)) ?>, '<?php echo ($selected ? $selected : '0') ?>', '<?php echo $genid ?>');
	</script> <?php
	return ob_get_clean();
} // assign_to_select_box
 function allowed_users_to_assign()
 {
     $wspace_id = array_var($_GET, "ws_id");
     $comp_array = allowed_users_to_assign($wspace_id);
     $object = array("totalCount" => count($comp_array), "start" => 0, "companies" => array());
     $object['companies'] = $comp_array;
     ajx_extra_data($object);
     ajx_current("empty");
 }
 function allowed_users_to_assign()
 {
     $members = array();
     $member_ids = explode(',', array_var($_GET, 'member_ids'));
     if (count($member_ids) > 0) {
         $tmp_members = Members::findAll(array('conditions' => 'id IN (' . implode(',', $member_ids) . ')'));
         foreach ($tmp_members as $m) {
             if ($m->getDimension()->getIsManageable()) {
                 $members[] = $m;
             }
         }
     }
     if (count($members) == 0) {
         $context_plain = array_var($_GET, 'context');
         $context = null;
         if (!is_null($context_plain)) {
             $context = build_context_array($context_plain);
         }
     } else {
         $context = $members;
     }
     $comp_array = allowed_users_to_assign($context);
     $object = array("companies" => $comp_array);
     Hook::fire('modify_allowed_users_to_assign', array('params' => array_var($_REQUEST, 'extra_params')), $object);
     if (!can_manage_tasks(logged_user()) && can_task_assignee(logged_user())) {
         $object['only_me'] = "1";
     }
     ajx_extra_data($object);
     ajx_current("empty");
 }
						<?php 
            $context = active_context();
            if (isset($member_id) && $member_id > 0) {
                // filter by context passed by parameter
                $additional_member = Members::findById($member_id);
                if ($additional_member instanceof Member) {
                    $context = array($additional_member);
                }
            }
            if (array_var($_REQUEST, 'from_email')) {
                $from_email = MailContents::findById(array_var($_REQUEST, 'from_email'));
                if ($from_email instanceof MailContent) {
                    $context = $from_email->getMembers();
                }
            }
            $companies = allowed_users_to_assign($context);
            foreach ($companies as $c) {
                if (config_option('can_assign_tasks_to_companies')) {
                    ?>
								<option value="<?php 
                    echo $c['id'];
                    ?>
"> <?php 
                    echo $c['name'];
                    ?>
</option>
								
							<?php 
                }
                $users = $c['users'];
                if (count($users)) {
	function allowed_users_to_assign() {
		$context_plain = array_var($_GET, 'context');
		$context = null;
		if (!is_null($context_plain)) $context = build_context_array($context_plain);
		
		$comp_array = allowed_users_to_assign($context);
		$object = array(
			"companies" => $comp_array
		);
		
		Hook::fire('modify_allowed_users_to_assign', null, $object);
		
		if(!can_manage_tasks(logged_user()) && can_task_assignee(logged_user())) $object['only_me'] = "1";
		
		ajx_extra_data($object);
		ajx_current("empty");
	} // allowed_users_to_assign