27require_once
'../main.inc.php';
28require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formcompany.class.php';
29require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formfile.class.php';
30require_once DOL_DOCUMENT_ROOT.
'/core/class/html.formprojet.class.php';
31require_once DOL_DOCUMENT_ROOT.
'/projet/class/project.class.php';
32require_once DOL_DOCUMENT_ROOT.
'/recruitment/class/recruitmentjobposition.class.php';
33require_once DOL_DOCUMENT_ROOT.
'/recruitment/lib/recruitment_recruitmentjobposition.lib.php';
44$langs->loadLangs(array(
"recruitment",
"other"));
49$action =
GETPOST(
'action',
'aZ09');
50$confirm =
GETPOST(
'confirm',
'alpha');
52$contextpage =
GETPOST(
'contextpage',
'aZ') ?
GETPOST(
'contextpage',
'aZ') :
'recruitmentjobpositioncard';
53$backtopage =
GETPOST(
'backtopage',
'alpha');
54$backtopageforcancel =
GETPOST(
'backtopageforcancel',
'alpha');
60$diroutputmassaction =
$conf->recruitment->dir_output.
'/temp/massgeneration/'.$user->id;
61$hookmanager->initHooks(array(
'recruitmentjobpositioncard',
'globalcard'));
64$extrafields->fetch_name_optionals_label(
$object->table_element);
66$search_array_options = $extrafields->getOptionalsFromPost(
$object->table_element,
'',
'search_');
69$search_all =
GETPOST(
"search_all",
'alpha');
71foreach (
$object->fields as $key => $val) {
72 if (
GETPOST(
'search_'.$key,
'alpha')) {
73 $search[$key] =
GETPOST(
'search_'.$key,
'alpha');
77if (empty($action) && empty($id) && empty($ref)) {
82include DOL_DOCUMENT_ROOT.
'/core/actions_fetchobject.inc.php';
85$permissiontoread = $user->hasRight(
'recruitment',
'recruitmentjobposition',
'read');
86$permissiontoadd = $user->hasRight(
'recruitment',
'recruitmentjobposition',
'write');
87$permissiontodelete = $user->hasRight(
'recruitment',
'recruitmentjobposition',
'delete') || ($permissiontoadd && isset(
$object->status) &&
$object->status == $object::STATUS_DRAFT);
88$permissionnote = $user->hasRight(
'recruitment',
'recruitmentjobposition',
'write');
89$permissiondellink = $user->hasRight(
'recruitment',
'recruitmentjobposition',
'write');
90$upload_dir =
$conf->recruitment->multidir_output[isset(
$object->entity) ?
$object->entity : 1];
95$isdraft = ((
$object->status == $object::STATUS_DRAFT) ? 1 : 0);
96$result =
restrictedArea($user,
'recruitment',
$object->id,
'recruitment_recruitmentjobposition',
'recruitmentjobposition',
'',
'rowid', $isdraft);
103$parameters = array();
104$reshook = $hookmanager->executeHooks(
'doActions', $parameters, $object, $action);
109if (empty($reshook)) {
112 $backurlforlist = DOL_URL_ROOT.
'/recruitment/recruitmentjobposition_list.php';
114 if (empty($backtopage) || ($cancel && empty($id))) {
115 if (empty($backtopage) || ($cancel && strpos($backtopage,
'__ID__'))) {
116 if (empty($id) && (($action !=
'add' && $action !=
'create') || $cancel)) {
117 $backtopage = $backurlforlist;
119 $backtopage = DOL_URL_ROOT.
'/recruitment/recruitmentjobposition_card.php?id='.(
$id > 0 ?
$id :
'__ID__');
123 $triggermodname =
'RECRUITMENT_RECRUITMENTJOBPOSITION_MODIFY';
126 include DOL_DOCUMENT_ROOT.
'/core/actions_addupdatedelete.inc.php';
129 include DOL_DOCUMENT_ROOT.
'/core/actions_dellink.inc.php';
132 include DOL_DOCUMENT_ROOT.
'/core/actions_printing.inc.php';
138 include DOL_DOCUMENT_ROOT.
'/core/actions_builddoc.inc.php';
140 if ($action ==
'set_thirdparty' && $permissiontoadd) {
141 $object->setValueFrom(
'fk_soc',
GETPOSTINT(
'fk_soc'),
'',
null,
'date',
'', $user,
'RECRUITMENTJOBPOSITION_MODIFY');
143 if ($action ==
'classin' && $permissiontoadd) {
148 $triggersendname =
'RECRUITMENTJOBPOSITION_SENTBYMAIL';
149 $autocopy =
'MAIN_MAIL_AUTOCOPY_RECRUITMENTJOBPOSITION_TO';
150 $trackid =
'recruitmentjobposition'.$object->id;
151 include DOL_DOCUMENT_ROOT.
'/core/actions_sendmails.inc.php';
161$form =
new Form($db);
165$title = $langs->trans(
"JobPositionApplications");
170if (
$object->id > 0 && (empty($action) || ($action !=
'edit' && $action !=
'create'))) {
171 $res =
$object->fetch_optionals();
179 if ($action ==
'delete') {
180 $formconfirm = $form->formconfirm($_SERVER[
"PHP_SELF"].
'?id='.
$object->id, $langs->trans(
'DeleteRecruitmentJobPosition'), $langs->trans(
'ConfirmDeleteObject'),
'confirm_delete',
'', 0, 1);
183 if ($action ==
'deleteline') {
184 $formconfirm = $form->formconfirm($_SERVER[
"PHP_SELF"].
'?id='.
$object->id.
'&lineid='.$lineid, $langs->trans(
'DeleteLine'), $langs->trans(
'ConfirmDeleteLine'),
'confirm_deleteline',
'', 0, 1);
187 if ($action ==
'clone') {
189 $formquestion = array();
190 $formconfirm = $form->formconfirm($_SERVER[
"PHP_SELF"].
'?id='.
$object->id, $langs->trans(
'ToClone'), $langs->trans(
'ConfirmCloneAsk',
$object->ref),
'confirm_clone', $formquestion,
'yes', 1);
194 $parameters = array(
'formConfirm' => $formconfirm,
'lineid' => $lineid);
195 $reshook = $hookmanager->executeHooks(
'formConfirm', $parameters, $object, $action);
196 if (empty($reshook)) {
197 $formconfirm .= $hookmanager->resPrint;
198 } elseif ($reshook > 0) {
199 $formconfirm = $hookmanager->resPrint;
208 $linkback =
'<a href="'.dol_buildpath(
'/recruitment/recruitmentjobposition_list.php', 1).
'?restore_lastsearch_values=1'.(!empty($socid) ?
'&socid='.$socid :
'').
'">'.$langs->trans(
"BackToList").
'</a>';
210 $morehtmlref =
'<div class="refidno">';
219 if (isModEnabled(
'project')) {
220 $langs->load(
"projects");
221 $morehtmlref .= $langs->trans(
'Project').
' ';
222 if ($permissiontoadd) {
223 if ($action !=
'classify') {
224 $morehtmlref .=
'<a class="editfielda" href="'.$_SERVER[
'PHP_SELF'].
'?action=classify&token='.
newToken().
'&id='.
$object->id.
'">'.
img_edit($langs->transnoentitiesnoconv(
'SetProject')).
'</a>';
226 $morehtmlref .=
' : ';
227 if ($action ==
'classify') {
229 $morehtmlref .=
'<form method="post" action="'.$_SERVER[
'PHP_SELF'].
'?id='.
$object->id.
'">';
230 $morehtmlref .=
'<input type="hidden" name="action" value="classin">';
231 $morehtmlref .=
'<input type="hidden" name="token" value="'.newToken().
'">';
232 $morehtmlref .= $formproject->select_projects(
$object->socid, (
string)
$object->fk_project,
'projectid', $maxlength, 0, 1, 0, 1, 0, 0,
'', 1);
233 $morehtmlref .=
'<input type="submit" class="button valignmiddle" value="'.$langs->trans(
"Modify").
'">';
234 $morehtmlref .=
'</form>';
236 $morehtmlref .= $form->form_project($_SERVER[
'PHP_SELF'].
'?id='.
$object->id,
$object->socid, (
string)
$object->fk_project,
'none', 0, 0, 0, 1,
'',
'maxwidth300');
239 if (!empty(
$object->fk_project)) {
241 $proj->fetch(
$object->fk_project);
242 $morehtmlref .=
': '.$proj->getNomUrl();
248 $morehtmlref .=
'</div>';
251 dol_banner_tab($object,
'ref', $linkback, 1,
'ref',
'ref', $morehtmlref);
254 print
'<div class="fichecenter">';
255 print
'<div class="fichehalfleft">';
256 print
'<div class="underbanner clearboth"></div>';
257 print
'<table class="border centpercent tableforfield">'.
"\n";
260 $keyforbreak =
'description';
261 unset(
$object->fields[
'fk_project']);
263 include DOL_DOCUMENT_ROOT.
'/core/tpl/commonfields_view.tpl.php';
266 include DOL_DOCUMENT_ROOT.
'/core/tpl/extrafields_view.tpl.php';
272 print
'<div class="clearboth"></div>';
276 print
'<br>'.$langs->trans(
"FeatureNotYetAvailable");
$id
Support class for third parties, contacts, members, users or resources.
if( $user->socid > 0) if(! $user->hasRight('accounting', 'chartofaccount')) $object
llxFooter($comment='', $zone='private', $disabledoutputofmessages=0)
Empty footer.
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader($head='', $title='', $help_url='', $target='', $disablejs=0, $disablehead=0, $arrayofjs='', $arrayofcss='', $morequerystring='', $morecssonbody='', $replacemainareaby='', $disablenofollow=0, $disablenoindex=0)
Empty header.
Class to manage projects.
Class for RecruitmentJobPosition.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0, $attop=0)
Set event messages in dol_events session object.
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='', $dragdropfile=0, $morecssdiv='')
Show tabs of a record.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
newToken()
Return the value of token currently saved into session with name 'newtoken'.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
img_edit($titlealt='default', $float=0, $other='')
Show logo edit/modify fiche.
global $conf
The following vars must be defined: $type2label $form $conf, $lang, The following vars may also be de...
recruitmentjobpositionPrepareHead($object)
Prepare array of tabs for RecruitmentJobPosition.
restrictedArea(User $user, $features, $object=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $isdraft=0, $mode=0)
Check permissions of a user to show a page and an object.