Revision ff058663
Von Moritz Bunkus vor etwa 11 Jahren hinzugefügt
bin/mozilla/common.pl | ||
---|---|---|
|
||
# -------------------------------------------------------------------------
|
||
|
||
sub set_longdescription {
|
||
$main::lxdebug->enter_sub();
|
||
|
||
my $form = $main::form;
|
||
my $locale = $main::locale;
|
||
|
||
$form->{title} = $locale->text("Enter longdescription");
|
||
$form->header(no_layout => 1);
|
||
print $form->parse_html_template("generic/set_longdescription");
|
||
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
# -------------------------------------------------------------------------
|
||
|
||
sub H {
|
||
return $main::locale->quote_special_chars('HTML', $_[0]);
|
||
}
|
bin/mozilla/do.pl | ||
---|---|---|
|
||
$form->{follow_up_trans_info} = $form->{donumber} .'('. $follow_up_vc .')';
|
||
|
||
$::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase));
|
||
|
||
$form->header();
|
||
# Fix für Bug 1082 Erwartet wird: 'abteilungsNAME--abteilungsID'
|
||
# und Erweiterung für Bug 1760:
|
bin/mozilla/ir.pl | ||
---|---|---|
), @custom_hiddens,
|
||
map { $_.'_rate', $_.'_description', $_.'_taxnumber' } split / /, $form->{taxaccounts}];
|
||
|
||
$::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase));
|
||
|
||
$form->header();
|
||
|
||
print $form->parse_html_template("ir/form_header", \%TMPL_VAR);
|
bin/mozilla/is.pl | ||
---|---|---|
), @custom_hiddens,
|
||
map { $_.'_rate', $_.'_description', $_.'_taxnumber' } split / /, $form->{taxaccounts}];
|
||
|
||
$::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase));
|
||
|
||
$form->header();
|
||
|
||
print $form->parse_html_template("is/form_header", \%TMPL_VAR);
|
bin/mozilla/oe.pl | ||
---|---|---|
$form->{javascript} .= qq|<script type="text/javascript" src="js/show_form_details.js"></script>|;
|
||
$form->{javascript} .= qq|<script type="text/javascript" src="js/show_history.js"></script>|;
|
||
$form->{javascript} .= qq|<script type="text/javascript" src="js/show_vc_details.js"></script>|;
|
||
$::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.SalesPurchase));
|
||
|
||
$form->header;
|
||
if ($form->{CFDD_shipto} && $form->{CFDD_shipto_id} ) {
|
js/common.js | ||
---|---|---|
return string;
|
||
}
|
||
|
||
function set_longdescription_window(input_name) {
|
||
var parm = centerParms(600,500) + ",width=600,height=500,status=yes,scrollbars=yes";
|
||
var name = document.getElementsByName(input_name)[0].value;
|
||
url = "common.pl?" +
|
||
"INPUT_ENCODING=UTF-8&" +
|
||
"action=set_longdescription&" +
|
||
"longdescription=" + encodeURIComponent(document.getElementsByName(input_name)[0].value) + "&" +
|
||
"input_name=" + encodeURIComponent(input_name) + "&"
|
||
window.open(url, "_new_generic", parm);
|
||
}
|
||
|
||
function check_right_number_format(input_name) {
|
||
if(decpoint && thpoint && thpoint == decpoint) {
|
||
return show_alert_and_focus(input_name, wrongNumberFormat);
|
js/kivi.SalesPurchase.js | ||
---|---|---|
namespace('kivi.SalesPurchase', function(ns) {
|
||
this.edit_longdescription = function(row) {
|
||
var $edit = $('#popup_edit_longdescription_input');
|
||
var $element = $('#longdescription_' + row);
|
||
|
||
if (!$element.length) {
|
||
console.error("kivi.SalesPurchase.edit_longdescription: Element #longdescription_" + row + " not found");
|
||
return;
|
||
}
|
||
|
||
$edit.data('element', $element);
|
||
$edit.val($element.val());
|
||
|
||
$('#popup_edit_longdescription_runningnumber').html(row);
|
||
$('#popup_edit_longdescription_partnumber').html($('#partnumber_' + row).val() || '');
|
||
|
||
var description = ($('#description_' + row).val() || '').replace(/[\n\r]+/, '');
|
||
if (description.length >= 50)
|
||
description = description.substring(0, 50) + "…";
|
||
$('#popup_edit_longdescription_description').html(description);
|
||
|
||
kivi.popup_dialog({
|
||
id: 'edit_longdescription_dialog',
|
||
dialog: {
|
||
title: kivi.t8('Enter longdescription')
|
||
}
|
||
});
|
||
};
|
||
|
||
this.set_longdescription = function() {
|
||
var $edit = $('#popup_edit_longdescription_input');
|
||
var $element = $edit.data('element');
|
||
|
||
$element.val($edit.val());
|
||
$('#edit_longdescription_dialog').dialog('close');
|
||
};
|
||
});
|
js/locale/de.js | ||
---|---|---|
"Are you sure?":"Sind Sie sicher?",
|
||
"Database Connection Test":"Test der Datenbankverbindung",
|
||
"Do you want to set the account number \"#1\" to \"#2\" and the name \"#3\" to \"#4\"?":"Soll die Kontonummer \"#1\" zu \"#2\" und den Name \"#3\" zu \"#4\" geändert werden?",
|
||
"Enter longdescription":"Langtext eingeben",
|
||
"Map":"Karte",
|
||
"Part picker":"Artikelauswahl",
|
||
"The description is missing.":"Die Beschreibung fehlt.",
|
locale/de/all | ||
---|---|---|
'Please enter the taxnumber in the client configuration.' => 'Bitte geben Sie in der Mandantenkonfiguration die Steuernummer an.',
|
||
'Please enter values' => 'Bitte Werte eingeben',
|
||
'Please insert object dimensions below.' => 'Bitte geben Sie die Abmessungen unten ein',
|
||
'Please insert your longdescription below' => 'Bitte den Langtext eingeben',
|
||
'Please install the below listed modules or ask your system administrator to.' => 'Bitte installieren Sie die unten aufgeführten Module, oder bitten Sie Ihren Administrator darum.',
|
||
'Please log in to the administration panel.' => 'Bitte melden Sie sich im Administrationsbereich an.',
|
||
'Please re-run the analysis for broken general ledger entries by clicking this button:' => 'Bitte wiederholen Sie die Analyse der Hauptbucheinträge, indem Sie auf diesen Button klicken:',
|
||
... | ... | |
'Revenues EU without UStId' => 'Erlöse EU o. UStId',
|
||
'Review of Aging list' => 'Altersstrukturliste',
|
||
'Right' => 'Rechts',
|
||
'Row' => 'Zeile',
|
||
'Row #1: amount has to be different from zero.' => 'Zeile #1: Der Wert darf nicht 0 sein.',
|
||
'Row number' => 'Zeilennummer',
|
||
'Row was created from current record' => 'Zeile wurde aus aktuellem Beleg erstellt',
|
templates/webpages/do/form_header.html | ||
---|---|---|
<div class="listtop">[% title %]</div>
|
||
|
||
[%- INCLUDE 'common/flash.html' %]
|
||
[%- INCLUDE 'generic/set_longdescription.html' %]
|
||
|
||
[%- IF ERRORS && ERRORS.size %]
|
||
<p><font color="#ff0000">[% ERRORS.join('<br>') %]</font></p>
|
templates/webpages/generic/set_longdescription.html | ||
---|---|---|
[%- USE T8 %]
|
||
[%- USE HTML %]
|
||
<form name="Form">
|
||
|
||
<input type="hidden" name="input_name" value="[% HTML.escape(input_name) %]">
|
||
|
||
<div class="listtop">[% title %]</div>
|
||
|
||
<p>[% 'Please insert your longdescription below' | $T8 %]</p>
|
||
|
||
<p><textarea id="longdescription" name="longdescription" rows="15" cols="45" wrap="soft">[% HTML.escape(longdescription) %]</textarea></p>
|
||
|
||
<p><input type="submit" onclick="longdescription_updated()" value="[% 'Close' | $T8 %]"></p>
|
||
</form>
|
||
|
||
<script type="text/javascript">
|
||
<!--
|
||
function longdescription_updated() {
|
||
window.opener.document.getElementsByName(document.Form.input_name.value)[0].value = document.getElementsByName("longdescription")[0].value;
|
||
|
||
self.close();
|
||
}
|
||
-->
|
||
</script>
|
||
|
||
[%- USE L -%][%- USE LxERP -%]
|
||
|
||
<div id="edit_longdescription_dialog" style="display: none">
|
||
<p>
|
||
<table>
|
||
<tr>
|
||
<th align="right">[% LxERP.t8("Row") %]:</th>
|
||
<td id="popup_edit_longdescription_runningnumber"></td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<th align="right">[% LxERP.t8("Part Number") %]:</th>
|
||
<td id="popup_edit_longdescription_partnumber"></td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<th align="right">[% LxERP.t8("Description") %]:</th>
|
||
<td id="popup_edit_longdescription_description"></td>
|
||
</tr>
|
||
</table>
|
||
</p>
|
||
|
||
<p>[% L.textarea_tag("popup_edit_longdescription_input", "", wrap="soft", style="width: 750px; height: 240px;") %]</p>
|
||
|
||
<p>
|
||
[% L.button_tag("kivi.SalesPurchase.set_longdescription()", LxERP.t8("Close")) %]
|
||
<a onclick="$('#edit_longdescription_dialog').dialog('close');" href="#">[% LxERP.t8("Abort") %]</a>
|
||
</p>
|
||
</div>
|
templates/webpages/ir/form_header.html | ||
---|---|---|
<p><div class="listtop" width="100%">[% title %]</div></p>
|
||
|
||
[%- INCLUDE 'common/flash.html' %]
|
||
[%- INCLUDE 'generic/set_longdescription.html' %]
|
||
|
||
<div class="tabwidget">
|
||
<ul>
|
templates/webpages/is/form_header.html | ||
---|---|---|
<p>[% saved_message %]</p>
|
||
|
||
[%- PROCESS 'common/flash.html' %]
|
||
[%- INCLUDE 'generic/set_longdescription.html' %]
|
||
|
||
<div class="tabwidget">
|
||
<ul>
|
templates/webpages/oe/form_header.html | ||
---|---|---|
<h1>[% title %]</h1>
|
||
|
||
[%- INCLUDE 'common/flash.html' %]
|
||
[%- INCLUDE 'generic/set_longdescription.html' %]
|
||
|
||
<div class="tabwidget">
|
||
<ul>
|
Auch abrufbar als: Unified diff
Verkaufs-/Einkaufsmasken: Langtext in jQuery-Popup bearbeiten
Der alte Mechanismus öffnete ein normales Popup-Fenster, in dem eine
URL geladen wurde, die dann die Maske angezeigt hat. Das
Zurückschreiben geschah schon via JavaScript.
Mit der Methode gibt's zwei Probleme:
1. Es ist langsam, weil ein überflüssiger Roundtrip zum Server gemacht
wird. Die Informationen sind bereits alle beim initialen Anzeigen
der Maske vorhanden.
2. Es handelt sich um einen GET-Request, an den sämtliche
Übersetzungen als GET-Parameter angehängt werden. Damit kann man
problemlos in die Größenbeschränkung bei GET-Requests laufen.