-
-
Notifications
You must be signed in to change notification settings - Fork 76
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #342 from Hystepik/New-field-deploymentserver
New add note on deploymentserver object
- Loading branch information
Showing
5 changed files
with
234 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,228 @@ | ||
<?php | ||
/* Copyright (C) 2007-2017 Laurent Destailleur <[email protected]> | ||
* Copyright (C) ---Put here your own copyright and developer email--- | ||
* | ||
* This program is free software; you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation; either version 3 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <https://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
/** | ||
* \file htdocs/modulebuilder/template/deploymentserver_note.php | ||
* \ingroup sellyoursaas | ||
* \brief Tab for notes on deploymentserver | ||
*/ | ||
|
||
|
||
// General defined Options | ||
//if (! defined('CSRFCHECK_WITH_TOKEN')) define('CSRFCHECK_WITH_TOKEN', '1'); // Force use of CSRF protection with tokens even for GET | ||
//if (! defined('MAIN_AUTHENTICATION_MODE')) define('MAIN_AUTHENTICATION_MODE', 'aloginmodule'); // Force authentication handler | ||
//if (! defined('MAIN_LANG_DEFAULT')) define('MAIN_LANG_DEFAULT', 'auto'); // Force LANG (language) to a particular value | ||
//if (! defined('MAIN_SECURITY_FORCECSP')) define('MAIN_SECURITY_FORCECSP', 'none'); // Disable all Content Security Policies | ||
//if (! defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1'); // Disable browser notification | ||
//if (! defined('NOIPCHECK')) define('NOIPCHECK', '1'); // Do not check IP defined into conf $dolibarr_main_restrict_ip | ||
//if (! defined('NOLOGIN')) define('NOLOGIN', '1'); // Do not use login - if this page is public (can be called outside logged session). This includes the NOIPCHECK too. | ||
//if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX', '1'); // Do not load ajax.lib.php library | ||
//if (! defined('NOREQUIREDB')) define('NOREQUIREDB', '1'); // Do not create database handler $db | ||
//if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML', '1'); // Do not load html.form.class.php | ||
//if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU', '1'); // Do not load and show top and left menu | ||
//if (! defined('NOREQUIRESOC')) define('NOREQUIRESOC', '1'); // Do not load object $mysoc | ||
//if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN', '1'); // Do not load object $langs | ||
//if (! defined('NOREQUIREUSER')) define('NOREQUIREUSER', '1'); // Do not load object $user | ||
//if (! defined('NOSCANGETFORINJECTION')) define('NOSCANGETFORINJECTION', '1'); // Do not check injection attack on GET parameters | ||
//if (! defined('NOSCANPOSTFORINJECTION')) define('NOSCANPOSTFORINJECTION', '1'); // Do not check injection attack on POST parameters | ||
//if (! defined('NOSTYLECHECK')) define('NOSTYLECHECK', '1'); // Do not check style html tag into posted data | ||
//if (! defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); // Do not roll the Anti CSRF token (used if MAIN_SECURITY_CSRF_WITH_TOKEN is on) | ||
|
||
|
||
// Load Dolibarr environment | ||
$res = 0; | ||
// Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined) | ||
if (!$res && !empty($_SERVER["CONTEXT_DOCUMENT_ROOT"])) { | ||
$res = @include $_SERVER["CONTEXT_DOCUMENT_ROOT"]."/main.inc.php"; | ||
} | ||
// Try main.inc.php into web root detected using web root calculated from SCRIPT_FILENAME | ||
$tmp = empty($_SERVER['SCRIPT_FILENAME']) ? '' : $_SERVER['SCRIPT_FILENAME']; $tmp2 = realpath(__FILE__); $i = strlen($tmp) - 1; $j = strlen($tmp2) - 1; | ||
while ($i > 0 && $j > 0 && isset($tmp[$i]) && isset($tmp2[$j]) && $tmp[$i] == $tmp2[$j]) { | ||
$i--; | ||
$j--; | ||
} | ||
if (!$res && $i > 0 && file_exists(substr($tmp, 0, ($i + 1))."/main.inc.php")) { | ||
$res = @include substr($tmp, 0, ($i + 1))."/main.inc.php"; | ||
} | ||
if (!$res && $i > 0 && file_exists(dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php")) { | ||
$res = @include dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php"; | ||
} | ||
// Try main.inc.php using relative path | ||
if (!$res && file_exists("../main.inc.php")) { | ||
$res = @include "../main.inc.php"; | ||
} | ||
if (!$res && file_exists("../../main.inc.php")) { | ||
$res = @include "../../main.inc.php"; | ||
} | ||
if (!$res && file_exists("../../../main.inc.php")) { | ||
$res = @include "../../../main.inc.php"; | ||
} | ||
if (!$res) { | ||
die("Include of main fails"); | ||
} | ||
|
||
dol_include_once('/sellyoursaas/class/deploymentserver.class.php'); | ||
dol_include_once('/sellyoursaas/lib/sellyoursaas_deploymentserver.lib.php'); | ||
|
||
// Load translation files required by the page | ||
$langs->loadLangs(array("sellyoursaas@sellyoursaas", "companies")); | ||
|
||
// Get parameters | ||
$id = GETPOST('id', 'int'); | ||
$ref = GETPOST('ref', 'alpha'); | ||
$action = GETPOST('action', 'aZ09'); | ||
$cancel = GETPOST('cancel', 'aZ09'); | ||
$backtopage = GETPOST('backtopage', 'alpha'); | ||
|
||
// Initialize technical objects | ||
$object = new Deploymentserver($db); | ||
$extrafields = new ExtraFields($db); | ||
$diroutputmassaction = $conf->sellyoursaas->dir_output.'/temp/massgeneration/'.$user->id; | ||
$hookmanager->initHooks(array($object->element.'note', 'globalcard')); // Note that conf->hooks_modules contains array | ||
// Fetch optionals attributes and labels | ||
$extrafields->fetch_name_optionals_label($object->table_element); | ||
|
||
// Load object | ||
include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once // Must be include, not include_once. Include fetch and fetch_thirdparty but not fetch_optionals | ||
if ($id > 0 || !empty($ref)) { | ||
$upload_dir = $conf->sellyoursaas->multidir_output[empty($object->entity) ? $conf->entity : $object->entity]."/".$object->id; | ||
} | ||
|
||
|
||
// There is several ways to check permission. | ||
// Set $enablepermissioncheck to 1 to enable a minimum low level of checks | ||
$enablepermissioncheck = 0; | ||
if ($enablepermissioncheck) { | ||
$permissiontoread = $user->rights->sellyoursaas->deploymentserver->read; | ||
$permissiontoadd = $user->rights->sellyoursaas->deploymentserver->write; | ||
$permissionnote = $user->rights->sellyoursaas->deploymentserver->write; // Used by the include of actions_setnotes.inc.php | ||
} else { | ||
$permissiontoread = 1; | ||
$permissiontoadd = 1; | ||
$permissionnote = 1; | ||
} | ||
|
||
// Security check (enable the most restrictive one) | ||
//if ($user->socid > 0) accessforbidden(); | ||
//if ($user->socid > 0) $socid = $user->socid; | ||
//$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0); | ||
//restrictedArea($user, $object->module, $object->id, $object->table_element, $object->element, 'fk_soc', 'rowid', $isdraft); | ||
if (!isModEnabled("sellyoursaas")) { | ||
accessforbidden(); | ||
} | ||
if (!$permissiontoread) { | ||
accessforbidden(); | ||
} | ||
|
||
|
||
/* | ||
* Actions | ||
*/ | ||
|
||
$parameters = array(); | ||
$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks | ||
if ($reshook < 0) { | ||
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); | ||
} | ||
if (empty($reshook)) { | ||
include DOL_DOCUMENT_ROOT.'/core/actions_setnotes.inc.php'; // Must be include, not include_once | ||
} | ||
|
||
|
||
/* | ||
* View | ||
*/ | ||
|
||
$form = new Form($db); | ||
|
||
$title = $langs->trans('deploymentserver').' - '.$langs->trans("Notes"); | ||
//$title = $object->ref." - ".$langs->trans("Notes"); | ||
$help_url = ''; | ||
//$help_url='EN:Customers_Orders|FR:Commandes_Clients|ES:Pedidos de clientes'; | ||
|
||
llxHeader('', $title, $help_url, '', 0, 0, '', '', '', 'mod-sellyoursaas page-card_notes'); | ||
|
||
if ($id > 0 || !empty($ref)) { | ||
$object->fetch_thirdparty(); | ||
|
||
$head = deploymentserverPrepareHead($object); | ||
|
||
print dol_get_fiche_head($head, 'note', $langs->trans("deploymentserver"), -1, $object->picto); | ||
|
||
// Object card | ||
// ------------------------------------------------------------ | ||
$linkback = '<a href="'.dol_buildpath('/sellyoursaas/deploymentserver_list.php', 1).'?restore_lastsearch_values=1'.(!empty($socid) ? '&socid='.$socid : '').'">'.$langs->trans("BackToList").'</a>'; | ||
|
||
$morehtmlref = '<div class="refidno">'; | ||
/* | ||
// Ref customer | ||
$morehtmlref.=$form->editfieldkey("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', 0, 1); | ||
$morehtmlref.=$form->editfieldval("RefCustomer", 'ref_client', $object->ref_client, $object, 0, 'string', '', null, null, '', 1); | ||
// Thirdparty | ||
$morehtmlref.='<br>'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : ''); | ||
// Project | ||
if (isModEnabled('project')) { | ||
$langs->load("projects"); | ||
$morehtmlref.='<br>'.$langs->trans('Project') . ' '; | ||
if ($permissiontoadd) | ||
{ | ||
if ($action != 'classify') | ||
//$morehtmlref.='<a class="editfielda" href="' . $_SERVER['PHP_SELF'] . '?action=classify&token='.newToken().'&id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a> : '; | ||
$morehtmlref.=' : '; | ||
if ($action == 'classify') { | ||
//$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1); | ||
$morehtmlref.='<form method="post" action="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'">'; | ||
$morehtmlref.='<input type="hidden" name="action" value="classin">'; | ||
$morehtmlref.='<input type="hidden" name="token" value="'.newToken().'">'; | ||
$morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', $maxlength, 0, 1, 0, 1, 0, 0, '', 1); | ||
$morehtmlref.='<input type="submit" class="button valignmiddle" value="'.$langs->trans("Modify").'">'; | ||
$morehtmlref.='</form>'; | ||
} else { | ||
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1); | ||
} | ||
} else { | ||
if (!empty($object->fk_project)) { | ||
$proj = new Project($db); | ||
$proj->fetch($object->fk_project); | ||
$morehtmlref .= ': '.$proj->getNomUrl(); | ||
} else { | ||
$morehtmlref .= ''; | ||
} | ||
} | ||
}*/ | ||
$morehtmlref .= '</div>'; | ||
|
||
|
||
dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref); | ||
|
||
|
||
print '<div class="fichecenter">'; | ||
print '<div class="underbanner clearboth"></div>'; | ||
|
||
|
||
$cssclass = "titlefield"; | ||
include DOL_DOCUMENT_ROOT.'/core/tpl/notes.tpl.php'; | ||
|
||
print '</div>'; | ||
|
||
print dol_get_fiche_end(); | ||
} | ||
|
||
// End of page | ||
llxFooter(); | ||
$db->close(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters