mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-12-24 02:11:27 +01:00
dolButtonToOpenUrlInDialogPopup works better with nojs=1
This commit is contained in:
@@ -1693,7 +1693,7 @@ function dol_syslog($message, $level = LOG_INFO, $ident = 0, $suffixinfilename =
|
|||||||
* @param string $name A name for the html component
|
* @param string $name A name for the html component
|
||||||
* @param string $label Label shown in Popup title top bar
|
* @param string $label Label shown in Popup title top bar
|
||||||
* @param string $buttonstring button string
|
* @param string $buttonstring button string
|
||||||
* @param string $url Url to open
|
* @param string $url Relative Url to open
|
||||||
* @param string $disabled Disabled text
|
* @param string $disabled Disabled text
|
||||||
* @param string $morecss More CSS
|
* @param string $morecss More CSS
|
||||||
* @param string $backtopagejsfields The back to page must be managed using javascript instead of a redirect.
|
* @param string $backtopagejsfields The back to page must be managed using javascript instead of a redirect.
|
||||||
@@ -1702,6 +1702,8 @@ function dol_syslog($message, $level = LOG_INFO, $ident = 0, $suffixinfilename =
|
|||||||
*/
|
*/
|
||||||
function dolButtonToOpenUrlInDialogPopup($name, $label, $buttonstring, $url, $disabled = '', $morecss = 'button bordertransp', $backtopagejsfields = '')
|
function dolButtonToOpenUrlInDialogPopup($name, $label, $buttonstring, $url, $disabled = '', $morecss = 'button bordertransp', $backtopagejsfields = '')
|
||||||
{
|
{
|
||||||
|
global $conf;
|
||||||
|
|
||||||
if (strpos($url, '?') > 0) {
|
if (strpos($url, '?') > 0) {
|
||||||
$url .= '&dol_hide_topmenu=1&dol_hide_leftmenu=1&dol_openinpopup='.urlencode($name);
|
$url .= '&dol_hide_topmenu=1&dol_hide_leftmenu=1&dol_openinpopup='.urlencode($name);
|
||||||
} else {
|
} else {
|
||||||
@@ -1725,44 +1727,50 @@ function dolButtonToOpenUrlInDialogPopup($name, $label, $buttonstring, $url, $di
|
|||||||
}
|
}
|
||||||
|
|
||||||
//print '<input type="submit" class="button bordertransp"'.$disabled.' value="'.dol_escape_htmltag($langs->trans("MediaFiles")).'" name="file_manager">';
|
//print '<input type="submit" class="button bordertransp"'.$disabled.' value="'.dol_escape_htmltag($langs->trans("MediaFiles")).'" name="file_manager">';
|
||||||
$out .= '<!-- a link for button to open url into a dialog popup backtopagejsfields = '.$backtopagejsfields.' -->'."\n";
|
$out .= '<!-- a link for button to open url into a dialog popup backtopagejsfields = '.$backtopagejsfields.' -->';
|
||||||
$out .= '<a class="cursorpointer classlink button_'.$name.($morecss ? ' '.$morecss : '').'"'.$disabled.' title="'.dol_escape_htmltag($label).'">'.$buttonstring.'</a>';
|
$out .= '<a class="cursorpointer classlink button_'.$name.($morecss ? ' '.$morecss : '').'"'.$disabled.' title="'.dol_escape_htmltag($label).'"';
|
||||||
$out .= '<div id="idfordialog'.$name.'" class="hidden">div for dialog</div>';
|
if (empty($conf->use_javascript_ajax)) {
|
||||||
$out .= '<div id="varforreturndialogid'.$name.'" class="hidden">div for returned id</div>';
|
$out .= ' href="'.DOL_URL_ROOT.$url.'" target="_blank"';
|
||||||
$out .= '<div id="varforreturndialoglabel'.$name.'" class="hidden">div for returned label</div>';
|
}
|
||||||
$out .= '<!-- Add js code to open dialog popup on dialog -->';
|
$out .= '>'.$buttonstring.'</a>';
|
||||||
$out .= '<script type="text/javascript">
|
if (!empty($conf->use_javascript_ajax)) {
|
||||||
jQuery(document).ready(function () {
|
$out .= '<div id="idfordialog'.$name.'" class="hidden">div for dialog</div>';
|
||||||
jQuery(".button_'.$name.'").click(function () {
|
$out .= '<div id="varforreturndialogid'.$name.'" class="hidden">div for returned id</div>';
|
||||||
console.log(\'Open popup with jQuery(...).dialog() on URL '.dol_escape_js(DOL_URL_ROOT.$url).'\');
|
$out .= '<div id="varforreturndialoglabel'.$name.'" class="hidden">div for returned label</div>';
|
||||||
var $tmpdialog = $(\'#idfordialog'.$name.'\');
|
$out .= '<!-- Add js code to open dialog popup on dialog -->';
|
||||||
$tmpdialog.html(\'<iframe class="iframedialog" id="iframedialog'.$name.'" style="border: 0px;" src="'.DOL_URL_ROOT.$url.'" width="100%" height="98%"></iframe>\');
|
$out .= '<script type="text/javascript">
|
||||||
$tmpdialog.dialog({
|
jQuery(document).ready(function () {
|
||||||
autoOpen: false,
|
jQuery(".button_'.$name.'").click(function () {
|
||||||
modal: true,
|
console.log(\'Open popup with jQuery(...).dialog() on URL '.dol_escape_js(DOL_URL_ROOT.$url).'\');
|
||||||
height: (window.innerHeight - 150),
|
var $tmpdialog = $(\'#idfordialog'.$name.'\');
|
||||||
width: \'80%\',
|
$tmpdialog.html(\'<iframe class="iframedialog" id="iframedialog'.$name.'" style="border: 0px;" src="'.DOL_URL_ROOT.$url.'" width="100%" height="98%"></iframe>\');
|
||||||
title: \''.dol_escape_js($label).'\',
|
$tmpdialog.dialog({
|
||||||
open: function (event, ui) {
|
autoOpen: false,
|
||||||
console.log("open popup name='.$name.', backtopagejsfields='.$backtopagejsfields.'");
|
modal: true,
|
||||||
},
|
height: (window.innerHeight - 150),
|
||||||
close: function (event, ui) {
|
width: \'80%\',
|
||||||
returnedid = jQuery("#varforreturndialogid'.$name.'").text();
|
title: \''.dol_escape_js($label).'\',
|
||||||
returnedlabel = jQuery("#varforreturndialoglabel'.$name.'").text();
|
open: function (event, ui) {
|
||||||
console.log("popup has been closed. returnedid (js var defined into parent page)="+returnedid+" returnedlabel="+returnedlabel);
|
console.log("open popup name='.$name.', backtopagejsfields='.$backtopagejsfields.'");
|
||||||
if (returnedid != "" && returnedid != "div for returned id") {
|
},
|
||||||
jQuery("#'.(empty($backtopagejsfieldsid)?"none":$backtopagejsfieldsid).'").val(returnedid);
|
close: function (event, ui) {
|
||||||
|
returnedid = jQuery("#varforreturndialogid'.$name.'").text();
|
||||||
|
returnedlabel = jQuery("#varforreturndialoglabel'.$name.'").text();
|
||||||
|
console.log("popup has been closed. returnedid (js var defined into parent page)="+returnedid+" returnedlabel="+returnedlabel);
|
||||||
|
if (returnedid != "" && returnedid != "div for returned id") {
|
||||||
|
jQuery("#'.(empty($backtopagejsfieldsid)?"none":$backtopagejsfieldsid).'").val(returnedid);
|
||||||
|
}
|
||||||
|
if (returnedlabel != "" && returnedlabel != "div for returned label") {
|
||||||
|
jQuery("#'.(empty($backtopagejsfieldslabel)?"none":$backtopagejsfieldslabel).'").val(returnedlabel);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (returnedlabel != "" && returnedlabel != "div for returned label") {
|
});
|
||||||
jQuery("#'.(empty($backtopagejsfieldslabel)?"none":$backtopagejsfieldslabel).'").val(returnedlabel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$tmpdialog.dialog(\'open\');
|
$tmpdialog.dialog(\'open\');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
</script>';
|
||||||
</script>';
|
}
|
||||||
return $out;
|
return $out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2093,8 +2093,11 @@ if ($module == 'initmodule') {
|
|||||||
|
|
||||||
print '<span class="opacitymedium">'.$langs->trans("IdModule").'</span> <input type="text" name="idmodule" class="width75" value="500000" placeholder="'.dol_escape_htmltag($langs->trans("IdModule")).'">';
|
print '<span class="opacitymedium">'.$langs->trans("IdModule").'</span> <input type="text" name="idmodule" class="width75" value="500000" placeholder="'.dol_escape_htmltag($langs->trans("IdModule")).'">';
|
||||||
print '<span class="opacitymedium">';
|
print '<span class="opacitymedium">';
|
||||||
print ' (<a href="'.DOL_URL_ROOT.'/admin/system/modules.php?mainmenu=home&leftmenu=admintools_info" target="_blank" rel="noopener noreferrer">'.$langs->trans("SeeIDsInUse").'</a>';
|
print ' (';
|
||||||
print ' - <a href="https://wiki.dolibarr.org/index.php/List_of_modules_id" target="_blank" rel="noopener noreferrer external">'.$langs->trans("SeeReservedIDsRangeHere").'</a>)';
|
print dolButtonToOpenUrlInDialogPopup('popup_modules_id', $langs->transnoentitiesnoconv("SeeIDsInUse"), $langs->transnoentitiesnoconv("SeeIDsInUse"), '/admin/system/modules.php?mainmenu=home&leftmenu=admintools_info', '', '');
|
||||||
|
print ' - ';
|
||||||
|
print '<a href="https://wiki.dolibarr.org/index.php/List_of_modules_id" target="_blank" rel="noopener noreferrer external">'.$langs->trans("SeeReservedIDsRangeHere").'</a>';
|
||||||
|
print ')';
|
||||||
print '</span>';
|
print '</span>';
|
||||||
print '<br>';
|
print '<br>';
|
||||||
print '<span class="opacitymedium">'.$langs->trans("Version").'</span> <input type="text" name="version" class="width75" value="1.0" placeholder="'.dol_escape_htmltag($langs->trans("Version")).'"><br>';
|
print '<span class="opacitymedium">'.$langs->trans("Version").'</span> <input type="text" name="version" class="width75" value="1.0" placeholder="'.dol_escape_htmltag($langs->trans("Version")).'"><br>';
|
||||||
|
|||||||
Reference in New Issue
Block a user