Client can create a new project
Page: 1
Ilija Studen
on Nov 1. 2007. 8:11 am
This hack lets everyone in the system, including clients, to create new projects. User who creates a project will be set as project leader. Note that this is a hack and that it's not bulletproof, but if you really need to have this here is how you can get it:
1. Open Project.class.php located in /activecollab/application/modules/system/models/projects and find canAdd() method. Replace:
with:
2. Open _project_form.tpl located in /activecollab/application/modules/system/views/project and replace:
and replace it with:
1. Open Project.class.php located in /activecollab/application/modules/system/models/projects and find canAdd() method. Replace:
function canAdd($user) {
return $user->isOwner() && ($user->isProjectManager() || $user->isAdministrator() || $user->hasPermission('add_project'));
} // canAddwith:
function canAdd($user) {
return true;
} // canAdd2. Open _project_form.tpl located in /activecollab/application/modules/system/views/project and replace:
{if $logged_user->isOwner()}
{wrap field=leader_id}
{label for=projectLader required=yes}Leader{/label}
{select_user name='project[leader_id]' value=$project_data.leader_id id="projectLader" optional=no}
{/wrap}
{wrap field=company_id}
{label for=projectCompany}Client{/label}
{select_company name='project[company_id]' value=$project_data.company_id id=projectCompany optional=yes exclude=$owner_company->getId()}
{/wrap}
{/if}and replace it with:
{if $logged_user->isOwner()}
{wrap field=leader_id}
{label for=projectLader required=yes}Leader{/label}
{select_user name='project[leader_id]' value=$project_data.leader_id id="projectLader" optional=no}
{/wrap}
{wrap field=company_id}
{label for=projectCompany}Client{/label}
{select_company name='project[company_id]' value=$project_data.company_id id=projectCompany optional=yes exclude=$owner_company->getId()}
{/wrap}
{else}
<input type="hidden" name="project[leader_id]" value="{$logged_user->getId()}" />
{/if}
activeCollab team member



