[GastForen Programmierung/Entwicklung JavaScript Count, JavaScript, Delegate

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Count, JavaScript, Delegate

Meister Propper
Beiträge gesamt: 1297

24. Jan 2018, 01:30
Beitrag # 1 von 1
Bewertung:
(665 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich habe hier ein Script was sehr gut für eine Sammelfreigabe funktioniert! Leider finde ich keine Variable was diese Routine umgeht. (Delegate)

Diese JS Node ist ein Bestandteil von einem Workflow.

Irgendeine Idee?

// framework
function solve_variables(html,row) {
var ret = '';
var idx = -1;
var lastidx = 0;
while ((idx=html.indexOf('${',idx+1))>=0) {
ret += html.substring(lastidx,idx);
var idx2 = html.indexOf('}',idx+1);
if (idx2>=0) {
var keys = html.substring(idx+2,idx2).split('.');
var val = row;
for (var i=1; i<keys.length;i++) {
val = val[keys];
}
ret += val;
lastidx = idx2+1;
}
else lastidx = idx;
}
ret += html.substring(lastidx);
return ret;
}

// set-up
var item_email_html = 'cloudflow://Temp/alpri_item_email.html';

// script
var emailok = true;
var itemhtml = '';
var fp = getParameters().files[0].split('/');

if (getParameters().variables.multiapproval!==undefined && getParameters().variables.multiapproval._id!==undefined) {
emailok = false;
var ret = custom_objects.list('multiapproval',['_id','equal to',getParameters().variables.multiapproval._id]);

if (ret.results!==undefined && ret.results.length>0) {

// define here all variables that you need to display in the email for each item
var it = {
filename:fp[fp.length-1],
filepath:getParameters().files[0],
proofscope_url:getParameters().variables.proofscope_url,
intern_proofscope_url:getParameters().variables.intern_proofscope_url
};

//
ret.results[0].counter++;
ret.results[0].items[ret.results[0].items.length] = it;
emailok = (ret.results[0].counter === ret.results[0].files.length);
if (emailok) {
custom_objects.delete('multiapproval',ret.results[0]._id);

// Sorting of the filenames
ret.results[0].items.sort(function(a, b){
var filenameA=a.filename.toLowerCase(), filenameB=b.filename.toLowerCase()
if (filenameA < filenameB) //sort string ascending
return -1
if (filenameA > filenameB)
return 1
return 0 //default return value (no sorting)
});

for (var i=0; i<ret.results[0].items.length; i++)
itemhtml += solve_variables(file.read_string(item_email_html).contents,ret.results[0].items);
console.log(itemhtml);
}
else custom_objects.update('multiapproval',ret.results[0]);
}
console.log(getParameters().files[0]);
console.log(emailok);
}
if (itemhtml==='') {
var obj = {
filename:fp[fp.length-1],
filepath:getParameters().files[0],
proofscope_url:getParameters().variables.proofscope_url,
intern_proofscope_url:getParameters().variables.intern_proofscope_url
};
itemhtml += solve_variables(file.read_string(item_email_html).contents,obj);
}
setResults({variables:{emailok:emailok,itemhtml:itemhtml}});

(Dieser Beitrag wurde von Meister Propper am 24. Jan 2018, 01:34 geändert)
X

Veranstaltungen

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen. pdf-icon Hier eine kleine Anleitung.

Veranstaltungen
17.10.2018

München
Mittwoch, 17. Okt. 2018, 10.31 Uhr

Seminar

Als „Next Generation Publishing“ (NGP) bezeichnen wir bei Cleverprinting eine Arbeitsweise, bei der Druckdaten auf moderne Art produziert werden. Für Photoshop bedeutet dies: Sie arbeiten jederzeit medienneutral mit RGB-Daten, die RGB-CMYK-Konvertierung wird von InDesign erst während der Ausgabe geleistet. Sie arbeiten nichtdestruktiv, alle Bearbeitungsschritte können zu einem späteren Zeitpunkt zurückgenommen/verändert werden. Sie arbeiten verlustfrei, Skalierungen von Bildbestandteilen können mit Smart Objects im Nachhinein verändert werden. Und: Sie arbeiten effizient, indem Sie clevere, schnelle Filter und wo immer möglich auch Skripte zur Automatisierung einsetzen.

München, Mittwoch, 17.10.2018, 9.30 Uhr bic 17.30 Uhr, Schulungsgebühr 415,31 Euro (incl 19% MwSt)

Ja

Organisator: Cleverprinting.de

https://www.cleverprinting.de/schulungen/photoshop-next-generation/

Next Generation Publishing mit Adobe Photoshop
Veranstaltungen
18.10.2018

Online
Donnerstag, 18. Okt. 2018, 20.00 - 21.00 Uhr

Webinar

Den Start ins E-Commerce leicht gemacht

Ja

Organisator: Eric Mächler

Kontaktinformation: E-Mailinfo AT ericmaechler DOT com

https://events.genndi.com/register/818182175026318367/66670f3c07