[intranet/impression, lib/impression_canon] modifications de l'AJAX
Ignore-this: 8beebdd91330205ba08932d269ccb6b * Ajout de l'option livret * agra{f,ph}es -> agrafage * paper -> papier * True & False au lieu d'utiliser des noms de constantes à rallonge darcs-hash:20090516014010-bd074-69a54cc50369c5351542a7b82ddf6b5215e421d1.gz
This commit is contained in:
parent
fdfd2254d3
commit
d87c41e637
4 changed files with 50 additions and 36 deletions
|
@ -172,11 +172,12 @@ class main(ModuleBase):
|
||||||
#
|
#
|
||||||
# methode pour changer les parametres
|
# methode pour changer les parametres
|
||||||
#
|
#
|
||||||
def changeSettings(self, copies=None, couleurs=None, recto_verso=None, agrafes=None, papier=None):
|
def changeSettings(self, copies=None, couleur=None, recto_verso=None, agrafage=None, papier=None, livret=None):
|
||||||
if not cherrypy.session.has_key('impression') or cherrypy.session['impression'] == None :
|
if not cherrypy.session.has_key('impression') or cherrypy.session['impression'] == None :
|
||||||
return {'nouvPrix':0.0}
|
return {'nouvPrix':0.0}
|
||||||
try:
|
try:
|
||||||
nouvPrix = cherrypy.session['impression'].changeSettings(papier=papier, couleurs=couleurs, agraphes=agrafes, recto_verso=recto_verso, copies=int(copies))
|
nouvPrix = cherrypy.session['impression'].changeSettings(papier=papier, couleur=couleur, agrafage=agrafage, recto_verso=recto_verso, copies=int(copies), livret=livret)
|
||||||
|
crans.cp.log("changeSettings returns : %s" % str(nouvPrix))
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
crans.cp.log("changeSettings : %s" % str(e), 'IMPRESSION', 1)
|
crans.cp.log("changeSettings : %s" % str(e), 'IMPRESSION', 1)
|
||||||
return {"erreur":str(e)}
|
return {"erreur":str(e)}
|
||||||
|
|
|
@ -129,6 +129,7 @@ Impression.settings.disableField = function(afield) {
|
||||||
//
|
//
|
||||||
Impression.settings.update = function () {
|
Impression.settings.update = function () {
|
||||||
var orientation = "portrait";
|
var orientation = "portrait";
|
||||||
|
Impression.settings.livret="False"
|
||||||
if (this.theform.type_impression_couleur.checked)
|
if (this.theform.type_impression_couleur.checked)
|
||||||
this.getValue(this.theform.type_impression_couleur);
|
this.getValue(this.theform.type_impression_couleur);
|
||||||
else
|
else
|
||||||
|
@ -139,22 +140,25 @@ Impression.settings.update = function () {
|
||||||
else if (this.theform.disposition_recto_verso.checked)
|
else if (this.theform.disposition_recto_verso.checked)
|
||||||
this.getValue(this.theform.disposition_recto_verso);
|
this.getValue(this.theform.disposition_recto_verso);
|
||||||
else
|
else
|
||||||
this.getValue(this.theform.disposition_recto_verso_short);
|
{
|
||||||
|
this.getValue(this.theform.disposition_livret);
|
||||||
|
Impression.settings.livret="True";
|
||||||
|
}
|
||||||
this.getValue(this.theform.papier);
|
this.getValue(this.theform.papier);
|
||||||
this.getCopies(this.theform.nb_copies);
|
this.getCopies(this.theform.nb_copies);
|
||||||
this.getValue(this.theform.agrafes);
|
this.getValue(this.theform.agrafage);
|
||||||
// Contraintes
|
// Contraintes
|
||||||
if (
|
if (
|
||||||
( this.papier != "A4" ) ||
|
/* ( this.papier != "A4" ) || */
|
||||||
( (this.disposition == "recto") && (this.nb_pages>50) ) ||
|
( (this.disposition == "recto") && (this.nb_pages>50) ) ||
|
||||||
( (this.disposition == "rectoverso") && (this.nb_pages>100) ) ||
|
( (this.disposition == "rectoverso") && (this.nb_pages>100) )
|
||||||
( (this.disposition == "rectoversoshort") && (this.nb_pages>100) ))
|
)
|
||||||
{
|
{
|
||||||
this.setValue(this.theform.agrafes, "pasdagraphes");
|
this.setValue(this.theform.agrafage, "None");
|
||||||
this.disableField(this.theform.agrafes);
|
this.disableField(this.theform.agrafage);
|
||||||
this.getValue(this.theform.agrafes);
|
this.getValue(this.theform.agrafage);
|
||||||
} else {
|
} else {
|
||||||
this.setDisableField(this.theform.agrafes, false);
|
this.setDisableField(this.theform.agrafage, false);
|
||||||
}
|
}
|
||||||
if (this.papier == "A4tr")
|
if (this.papier == "A4tr")
|
||||||
{
|
{
|
||||||
|
@ -318,10 +322,11 @@ Impression.AJAX.recalcPrix = function()
|
||||||
{
|
{
|
||||||
settings = Impression.settings;
|
settings = Impression.settings;
|
||||||
var url = "changeSettings?copies=" + settings.copies
|
var url = "changeSettings?copies=" + settings.copies
|
||||||
+"&couleurs="+ settings.type_impression
|
+"&couleur="+ settings.type_impression
|
||||||
+"&papier="+ settings.papier
|
+"&papier="+ settings.papier
|
||||||
+"&recto_verso="+ settings.disposition
|
+"&recto_verso="+ settings.disposition
|
||||||
+"&agrafes="+ settings.agrafes;
|
+"&agrafage="+ settings.agrafage
|
||||||
|
+"&livret="+ settings.livret;
|
||||||
this.modifPrix("Calcul en cours", true);
|
this.modifPrix("Calcul en cours", true);
|
||||||
this.call(url, this.changePrix);
|
this.call(url, this.changePrix);
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,10 +19,10 @@ Crans.messages.setMessage('$errorMsg.replace("\'","\\\'")', 'errorMessage')
|
||||||
<div id="rightColumn">
|
<div id="rightColumn">
|
||||||
<fieldset><legend>Type d'impression</legend>
|
<fieldset><legend>Type d'impression</legend>
|
||||||
<label for="type_impression_couleur" class="labelRadio compact">
|
<label for="type_impression_couleur" class="labelRadio compact">
|
||||||
<input type="radio" name="type_impression" id="type_impression_couleur" class="inputRadio" value="$crans.impression.IMPRESSION_COULEUR" checked="checked" onclick="Impression.settings.update(this);" />
|
<input type="radio" name="type_impression" id="type_impression_couleur" class="inputRadio" value="True" checked="checked" onclick="Impression.settings.update(this);" />
|
||||||
Couleurs
|
Couleurs
|
||||||
</label>
|
</label>
|
||||||
<label for="type_impression_nb" class="labelRadio compact"><input type="radio" name="type_impression" id="type_impression_nb" class="inputRadio" value="$crans.impression.IMPRESSION_NB" onclick="Impression.settings.update(this);" />
|
<label for="type_impression_nb" class="labelRadio compact"><input type="radio" name="type_impression" id="type_impression_nb" class="inputRadio" value="False" onclick="Impression.settings.update(this);" />
|
||||||
Noir et blanc
|
Noir et blanc
|
||||||
</label>
|
</label>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
@ -31,15 +31,15 @@ Crans.messages.setMessage('$errorMsg.replace("\'","\\\'")', 'errorMessage')
|
||||||
|
|
||||||
<label for="papier" class="labelInput">Papier:</label>
|
<label for="papier" class="labelInput">Papier:</label>
|
||||||
<select name="papier" id="papier" class="selectOne" onchange="Impression.settings.update(this);">
|
<select name="papier" id="papier" class="selectOne" onchange="Impression.settings.update(this);">
|
||||||
#for type_papier in $crans.impression.PAPIER_VALEURS_POSSIBLES
|
#for type_papier in ['A4', 'A3']
|
||||||
<option value="$type_papier">$crans.impression.LABELS[type_papier]</option>
|
<option value="$type_papier">$crans.impression.impression_canon.DICT_PAPIER[type_papier]</option>
|
||||||
#end for
|
#end for
|
||||||
</select>
|
</select>
|
||||||
<br />
|
<br />
|
||||||
<label for="agrafes" class="labelInput">Agrafes:</label>
|
<label for="agrafage" class="labelInput">Agrafes:</label>
|
||||||
<select name="agrafes" id="agrafes" class="selectOne" onchange="Impression.settings.update(this);">
|
<select name="agrafage" id="agrafage" class="selectOne" onchange="Impression.settings.update(this);">
|
||||||
#for type_agrafes in $crans.impression.AGRAPHES_VALEURS_POSSIBLES
|
#for type_agrafes in $crans.impression.impression_canon.DICT_AGRAFAGE.keys()
|
||||||
<option value="$type_agrafes">$crans.impression.LABELS[type_agrafes]</option>
|
<option value="$type_agrafes">$crans.impression.impression_canon.DICT_AGRAFAGE[type_agrafes]</option>
|
||||||
#end for
|
#end for
|
||||||
</select>
|
</select>
|
||||||
<br />
|
<br />
|
||||||
|
@ -50,16 +50,16 @@ Crans.messages.setMessage('$errorMsg.replace("\'","\\\'")', 'errorMessage')
|
||||||
|
|
||||||
<fieldset><legend>Disposition</legend>
|
<fieldset><legend>Disposition</legend>
|
||||||
<label for="disposition_recto" class="labelRadio compact">
|
<label for="disposition_recto" class="labelRadio compact">
|
||||||
<input type="radio" name="disposition" id="disposition_recto" class="inputRadio" value="$crans.impression.IMPRESSION_RECTO" onclick="Impression.settings.update(this);" />
|
<input type="radio" name="disposition" id="disposition_recto" class="inputRadio" value="False" onclick="Impression.settings.update(this);" />
|
||||||
Recto
|
Recto
|
||||||
</label>
|
</label>
|
||||||
<label for="disposition_recto_verso" class="labelRadio compact">
|
<label for="disposition_recto_verso" class="labelRadio compact">
|
||||||
<input type="radio" name="disposition" id="disposition_recto_verso" class="inputRadio" value="$crans.impression.IMPRESSION_RECTO_VERSO" checked="checked" onclick="Impression.settings.update(this);" />
|
<input type="radio" name="disposition" id="disposition_recto_verso" class="inputRadio" value="True" checked="checked" onclick="Impression.settings.update(this);" />
|
||||||
Recto-verso
|
Recto-verso
|
||||||
</label>
|
</label>
|
||||||
<label for="disposition_recto_verso_short" class="labelRadio compact">
|
<label for="disposition_livret" class="labelRadio compact">
|
||||||
<input type="radio" name="disposition" id="disposition_recto_verso_short" class="inputRadio" value="$crans.impression.IMPRESSION_RECTO_VERSO_SHORT" onclick="Impression.settings.update(this);" />
|
<input type="radio" name="disposition" id="disposition_livret" class="inputRadio" value="True" onclick="Impression.settings.update(this);" />
|
||||||
Recto-verso court
|
Livret avec piqûre à cheval
|
||||||
</label>
|
</label>
|
||||||
<a class="aide" href="http://wiki.crans.org/VieCrans/ImpressionReseau/Aide/Disposition">aide</a>
|
<a class="aide" href="http://wiki.crans.org/VieCrans/ImpressionReseau/Aide/Disposition">aide</a>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
|
@ -183,6 +183,10 @@ class impression:
|
||||||
couleur = kw.get('couleur', None)
|
couleur = kw.get('couleur', None)
|
||||||
if couleur in [True, False]:
|
if couleur in [True, False]:
|
||||||
self._settings['couleur'] = couleur
|
self._settings['couleur'] = couleur
|
||||||
|
elif couleur == "True":
|
||||||
|
self._settings['couleur'] = True
|
||||||
|
elif couleur == "False":
|
||||||
|
self._settings['couleur'] = False
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if int(kw['copies']) >= 1:
|
if int(kw['copies']) >= 1:
|
||||||
|
@ -191,6 +195,8 @@ class impression:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
recto_verso = kw.get('recto_verso', None)
|
recto_verso = kw.get('recto_verso', None)
|
||||||
|
if recto_verso == "True": recto_verso = True
|
||||||
|
if recto_verso == "False": recto_verso = False
|
||||||
if recto_verso in [True, False]:
|
if recto_verso in [True, False]:
|
||||||
self._settings['recto_verso'] = recto_verso
|
self._settings['recto_verso'] = recto_verso
|
||||||
|
|
||||||
|
@ -207,6 +213,8 @@ class impression:
|
||||||
self._settings['agrafage'] = agrafage
|
self._settings['agrafage'] = agrafage
|
||||||
|
|
||||||
livret = kw.get('livret', None)
|
livret = kw.get('livret', None)
|
||||||
|
if livret == "True": livret = True
|
||||||
|
if livret == "False": livret = False
|
||||||
if livret in [True, False]:
|
if livret in [True, False]:
|
||||||
self._settings['livret'] = livret
|
self._settings['livret'] = livret
|
||||||
self._settings['portrait'] = not(livret)
|
self._settings['portrait'] = not(livret)
|
||||||
|
@ -330,9 +338,9 @@ class impression:
|
||||||
c_impression = c_papier * pages + impression.c_face_nb * pages
|
c_impression = c_papier * pages + impression.c_face_nb * pages
|
||||||
|
|
||||||
# Cout des agrafes
|
# Cout des agrafes
|
||||||
if self._settings['agrafe'] in ["Top", "Bottom", "Left", "Right"] or self._settings['livret']:
|
if self._settings['agrafage'] in ["Top", "Bottom", "Left", "Right"] or self._settings['livret']:
|
||||||
nb_agrafes = 2
|
nb_agrafes = 2
|
||||||
elif self._settings['agrafe'] in ["None", None]:
|
elif self._settings['agrafage'] in ["None", None]:
|
||||||
nb_agrafes = 0
|
nb_agrafes = 0
|
||||||
else:
|
else:
|
||||||
nb_agrafes = 1
|
nb_agrafes = 1
|
||||||
|
@ -397,10 +405,10 @@ class impression:
|
||||||
#Indique la présence d'un bac de sortie avec agrafeuse
|
#Indique la présence d'un bac de sortie avec agrafeuse
|
||||||
# options += " -o Option20=MBMStaplerStacker -o OutputBin=StackerDown"
|
# options += " -o Option20=MBMStaplerStacker -o OutputBin=StackerDown"
|
||||||
|
|
||||||
if self._settings['paper'] == 'A4tr':
|
if self._settings['papier'] == 'A4tr':
|
||||||
options += ' -o InputSlot=SideDeck -o MediaType=OHP'
|
options += ' -o InputSlot=SideDeck -o MediaType=OHP'
|
||||||
options += ' -o pdf-paper=571x817 -o PageSize=A4'
|
options += ' -o pdf-paper=571x817 -o PageSize=A4'
|
||||||
elif self._settings['paper'] == 'A4':
|
elif self._settings['papier'] == 'A4':
|
||||||
options += ' -o pdf-paper=571x817 -o PageSize=A4'
|
options += ' -o pdf-paper=571x817 -o PageSize=A4'
|
||||||
else:
|
else:
|
||||||
options += ' -o pdf-expand -o pdf-paper=825x1166 -o PageSize=A3'
|
options += ' -o pdf-expand -o pdf-paper=825x1166 -o PageSize=A3'
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue