';
print '
'; // ancre
diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php
index a0fac8aec74..815e1dd005c 100644
--- a/htdocs/product/class/product.class.php
+++ b/htdocs/product/class/product.class.php
@@ -3429,6 +3429,41 @@ class Product extends CommonObject
return $result;
}
+
+ /**
+ * Create a document onto disk according to template module.
+ *
+ * @param string $modele Force model to use ('' to not force)
+ * @param Translate $outputlangs Object langs to use for output
+ * @param int $hidedetails Hide details of lines
+ * @param int $hidedesc Hide description
+ * @param int $hideref Hide ref
+ * @return int 0 if KO, 1 if OK
+ */
+ public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0)
+ {
+ global $conf,$user,$langs;
+
+ $langs->load("products");
+
+ // Positionne le modele sur le nom du modele a utiliser
+ if (! dol_strlen($modele))
+ {
+ if (! empty($conf->global->PRODUCT_ADDON_PDF))
+ {
+ $modele = $conf->global->PRODUCT_ADDON_PDF;
+ }
+ else
+ {
+ $modele = 'strato';
+ }
+ }
+
+ $modelpath = "core/modules/product/doc/";
+
+ return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref);
+ }
+
/**
* Return label of status of object
*
diff --git a/htdocs/user/card.php b/htdocs/user/card.php
index 10c3d433c2c..4627d7c472a 100644
--- a/htdocs/user/card.php
+++ b/htdocs/user/card.php
@@ -37,6 +37,7 @@ require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/usergroup.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
+require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/usergroups.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
@@ -590,6 +591,11 @@ if (empty($reshook)) {
setEventMessages($ldap->error, $ldap->errors, 'errors');
}
}
+
+ // Actions to build doc
+ $upload_dir = $conf->user->dir_output;
+ $permissioncreate=$user->rights->user->user->creer;
+ include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}
@@ -600,6 +606,7 @@ if (empty($reshook)) {
$form = new Form($db);
$formother=new FormOther($db);
$formcompany = new FormCompany($db);
+$formfile = new FormFile($db);
llxHeader('',$langs->trans("UserCard"));
@@ -2339,8 +2346,41 @@ else
print '';
}
+ print '
';
+ /*
+ * Documents generes
+ */
+ $filename = dol_sanitizeFileName($object->ref);
+ $filedir = $conf->user->dir_output . "/" . dol_sanitizeFileName($object->ref);
+ $urlsource = $_SERVER["PHP_SELF"] . "?id=" . $object->id;
+ $genallowed = $user->rights->user->user->creer;
+ $delallowed = $user->rights->user->user->supprimer;
+
+ $var = true;
+
+ $somethingshown = $formfile->show_documents('user', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang);
+
+ // Linked object block
+ $somethingshown = $form->showLinkedObjectBlock($object);
+
+ // Show links to link elements
+ $linktoelem = $form->showLinkToObjectBlock($object);
+ if ($linktoelem) print '
'.$linktoelem;
+
+
+ print '
';
+
+ // List of actions on element
+ include_once DOL_DOCUMENT_ROOT . '/core/class/html.formactions.class.php';
+ $formactions = new FormActions($db);
+ $somethingshown = $formactions->showactions($object, 'user', $socid);
+
+
+ print '
';
+
if (! empty($conf->ldap->enabled) && ! empty($object->ldap_sid)) $ldap->close;
}
+
}
if (! empty($conf->api->enabled) && ! empty($conf->use_javascript_ajax))
diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php
index f40685715c6..b7352515f5e 100644
--- a/htdocs/user/class/user.class.php
+++ b/htdocs/user/class/user.class.php
@@ -2753,5 +2753,39 @@ class User extends CommonObject
}
}
+ /**
+ * Create a document onto disk according to template module.
+ *
+ * @param string $modele Force model to use ('' to not force)
+ * @param Translate $outputlangs Object langs to use for output
+ * @param int $hidedetails Hide details of lines
+ * @param int $hidedesc Hide description
+ * @param int $hideref Hide ref
+ * @return int 0 if KO, 1 if OK
+ */
+ public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0)
+ {
+ global $conf,$user,$langs;
+
+ $langs->load("user");
+
+ // Positionne le modele sur le nom du modele a utiliser
+ if (! dol_strlen($modele))
+ {
+ if (! empty($conf->global->USER_ADDON_PDF))
+ {
+ $modele = $conf->global->USER_ADDON_PDF;
+ }
+ else
+ {
+ $modele = 'bluesky';
+ }
+ }
+
+ $modelpath = "core/modules/user/doc/";
+
+ return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref);
+ }
+
}
diff --git a/htdocs/user/class/usergroup.class.php b/htdocs/user/class/usergroup.class.php
index 735b3253afb..907c0cef40d 100644
--- a/htdocs/user/class/usergroup.class.php
+++ b/htdocs/user/class/usergroup.class.php
@@ -819,5 +819,39 @@ class UserGroup extends CommonObject
$this->datem=time();
$this->members=array($user->id); // Members of this group is just me
}
+
+ /**
+ * Create a document onto disk according to template module.
+ *
+ * @param string $modele Force model to use ('' to not force)
+ * @param Translate $outputlangs Object langs to use for output
+ * @param int $hidedetails Hide details of lines
+ * @param int $hidedesc Hide description
+ * @param int $hideref Hide ref
+ * @return int 0 if KO, 1 if OK
+ */
+ public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0)
+ {
+ global $conf,$user,$langs;
+
+ $langs->load("user");
+
+ // Positionne le modele sur le nom du modele a utiliser
+ if (! dol_strlen($modele))
+ {
+ if (! empty($conf->global->USERGROUP_ADDON_PDF))
+ {
+ $modele = $conf->global->USERGROUP_ADDON_PDF;
+ }
+ else
+ {
+ $modele = 'grass';
+ }
+ }
+
+ $modelpath = "core/modules/usergroup/doc/";
+
+ return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref);
+ }
}
diff --git a/htdocs/user/group/card.php b/htdocs/user/group/card.php
index 1dac5d3e7f6..192d681ca81 100644
--- a/htdocs/user/group/card.php
+++ b/htdocs/user/group/card.php
@@ -28,6 +28,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/usergroup.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/usergroups.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
+require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
if(! empty($conf->multicompany->enabled)) dol_include_once('/multicompany/class/actions_multicompany.class.php');
// Defini si peux lire/modifier utilisateurs et permisssions
@@ -209,6 +210,11 @@ if ($action == 'update')
setEventMessages($langs->trans('ErrorForbidden'), null, 'mesgs');
}
}
+
+// Actions to build doc
+$upload_dir = $conf->usergroup->dir_output;
+$permissioncreate=$user->rights->user->user->creer;
+include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
@@ -220,6 +226,8 @@ llxHeader('',$langs->trans("GroupCard"));
$form = new Form($db);
$fuserstatic = new User($db);
+$form = new Form($db);
+$formfile = new FormFile($db);
if ($action == 'create')
{
@@ -495,6 +503,37 @@ else
}
print "";
print "
";
+
+ /*
+ * Documents generes
+ */
+ $filename = dol_sanitizeFileName($object->ref);
+ $filedir = $conf->usergroup->dir_output . "/" . dol_sanitizeFileName($object->ref);
+ $urlsource = $_SERVER["PHP_SELF"] . "?id=" . $object->id;
+ $genallowed = $user->rights->user->user->creer;
+ $delallowed = $user->rights->user->user->supprimer;
+
+ $var = true;
+
+ $somethingshown = $formfile->show_documents('usergroup', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang);
+
+ // Linked object block
+ $somethingshown = $form->showLinkedObjectBlock($object);
+
+ // Show links to link elements
+ $linktoelem = $form->showLinkToObjectBlock($object);
+ if ($linktoelem) print '
'.$linktoelem;
+
+
+ print '