Initialer Commit: Kundenverwaltung (PHP/Smarty)
Bestehende Codebasis als Ausgangsstand aufgenommen. - .gitignore: Kundendaten (uploads_*), Smarty-Compile-Cache (templates_c), Laufzeit-Temp und Datenbank-Dumps ausgeschlossen; Verzeichnisstruktur ueber .gitkeep erhalten - .gitattributes: Zeilenenden normalisiert (LF im Repo), Binaerformate markiert - db-backup.php: MySQL-Zugangsdaten kommen jetzt wie im Rest der Anwendung aus der externen Konfiguration statt hartkodiert aus der Datei; Passwort wird ueber eine temporaere Optionsdatei statt per Kommandozeile uebergeben, Fehler von mysqldump/gzip werden gemeldet, Aufraeumen aelterer Backups berechnet Jahr und Monat konsistent Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
<tr {if $nr%2==0}bgcolor='#dddddd'{/if} id='artrow{$nr|escape}'>
|
||||
<td>
|
||||
<button type="button" class='swart' onclick="swart({$nr|escape});"></button>
|
||||
{if $type == 3}
|
||||
<label class='artlabel'><input type="radio" class="artcheck" name="angtyp{$nr|escape}" id="1angtyp{$nr|escape}" value="1" checked="checked" />Normal</label><br />
|
||||
<label class='artlabel'><input type="radio" class="artcheck" name="angtyp{$nr|escape}" id="2angtyp{$nr|escape}" value="2" />Optional</label><br />
|
||||
<label class='artlabel'><input type="radio" class="artcheck" name="angtyp{$nr|escape}" id="3angtyp{$nr|escape}" value="3" />Alternativ</label><br />
|
||||
{else}
|
||||
<input type="hidden" name="angtyp{$nr|escape}" id="1angtyp{$nr|escape}" value="1" />
|
||||
<input type="hidden" id="2angtyp{$nr|escape}" value="1" />
|
||||
<input type="hidden" id="3angtyp{$nr|escape}" value="1" />
|
||||
{/if}
|
||||
</td>
|
||||
<td>
|
||||
<button type="button" class='nopagebreak' id='pagebreakimg{$nr|escape}' onclick="togglePageBreak({$nr|escape});" title='<b>Automatischer Seitenumbruch</b><br />Durch klick wird eine neue Seite an dieser Stelle Erzwungen''></button>
|
||||
<input type='hidden' id='pagebreak{$nr|escape}' name='pagebreak{$nr|escape}' value='' />
|
||||
<label class='checktext'><input type="checkbox" class="artcheck" name="artact{$nr}" id="artact{$nr}" value="1" checked="checked" onclick="artactivate({$nr|escape})" title='Ohne Haken wird dieser Artikel nicht angezeigt und nicht gespeichert' />Aktiv</label><br />
|
||||
<label class='artlabel'>Artikeltyp:</label><select class='artselect' name='arttyp{$nr|escape}' id='arttyp{$nr|escape}'>
|
||||
{html_options values=$typids output=$typs selected="{$typ}"}
|
||||
</select><br />
|
||||
<label class='artlabel'>Artikelbeschreibung:</label><br />
|
||||
<input class='art' value='' id='arthead{$nr|escape}' maxlength='50' name='arthead{$nr|escape}' onInput='addArtBlock({$type|escape},{$nr|escape});' /><br />
|
||||
<div id='arteig{$nr|escape}'>
|
||||
<div class="sweig_spacer"></div>
|
||||
<input class='arteig' value='' id='arteig{$nr|escape}_1' maxlength='100' name='arteig{$nr|escape}_1' onChange='addEigBlock({$nr|escape},1);' />
|
||||
<input class='artval' value='' id='artval{$nr|escape}_1' maxlength='50' name='artval{$nr|escape}_1' />
|
||||
<select name='arteinh{$nr|escape}_1' id='arteinh{$nr|escape}_1' class='arteinh'>
|
||||
{html_options values=$einhids output=$einhs selected="{$einh}"}
|
||||
</select>
|
||||
</div>
|
||||
<p>
|
||||
<label class='artlabel'>Bestellnummer (WA-Nr.):</label><br />
|
||||
<input class='artwa' value='' id='artwa{$nr|escape}' maxlength='50' name='artwa{$nr|escape}' />
|
||||
<label>Mwst:</label>
|
||||
<select name='artmwst{$nr|escape}' id='artmwst{$nr|escape}' class='arteinh'>
|
||||
{html_options values=$artmwstids output=$artmwsts selected="{$art.art.mwst_id|default:1}"}
|
||||
</select>
|
||||
</p>
|
||||
</td>
|
||||
<td class="pricetd">
|
||||
<label class='artlabel'>Menge:</label><br />
|
||||
<input class='artmen' value='' id='artmen{$nr|escape}' maxlength='7' pattern="\d{ldelim}0,3{rdelim}+(,\d{ldelim}0,3{rdelim})?" name='artmen{$nr|escape}' />
|
||||
<select name='artmeneinh{$nr|escape}' id='artmeneinh{$nr|escape}' class='artmeneinh'>
|
||||
{html_options values=$einhids output=$einhs selected="5"}
|
||||
</select><br />
|
||||
<label class='artlabel'>Preis:</label><br />
|
||||
<input class='artpr' value='' id='artpr{$nr|escape}' pattern="-?\d+(,\d{ldelim}2{rdelim})?" name='artpr{$nr|escape}' /><br />
|
||||
<label class='artlabel'>Rabatt:</label><br />
|
||||
<input class='artpr' value='' id='artrab{$nr|escape}' maxlength='3' pattern="[0-9]*" name='artrab{$nr|escape}' /><b>%</b>
|
||||
<br /><label class='checktext'><input type="checkbox" name="artrabtyp{$nr|escape}" id="artrabtyp{$nr|escape}" value="1" />Winterrabatt</label>
|
||||
</td>
|
||||
</tr>
|
||||
<script>
|
||||
$(function() {
|
||||
$( "#arthead"+{$nr|escape} ).autocomplete({
|
||||
source: "ajax/auto/art.php",
|
||||
minLength: 2,
|
||||
select: function( event, ui ) {
|
||||
i=0;
|
||||
$("#arthead{$nr}").val(ui.item.value);
|
||||
$("#artpr{$nr|escape}").val(ui.item.preis);
|
||||
$("#arttyp{$nr|escape}").val(ui.item.typ);
|
||||
$("#artmeneinh{$nr|escape}").val(ui.item.einh);
|
||||
cleareig({$nr});
|
||||
i=0;
|
||||
if(ui.item.eig)
|
||||
{
|
||||
$.each(ui.item.eig, function(index, value)
|
||||
{
|
||||
i++;
|
||||
addEigBlock({$nr|escape},i);
|
||||
$("#arteig"+{$nr|escape}+"_"+i).val(value.des);
|
||||
$("#artval"+{$nr|escape}+"_"+i).val(value.val);
|
||||
$("#arteinh"+{$nr|escape}+"_"+i).val(value.einh);
|
||||
});
|
||||
}
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
Reference in New Issue
Block a user