Comproc Prozess anlegen
Über den Comproc können E-Mail-Prozesse zu Kunden, Aufträgen, Produkten, etc angelegt werden. Im folgenden Beispiel wird eine neuen Comproc zu Aufträgen angelegt.
/** * Erstellt einen neuen Comproc Prozess innerhalb des eCommerceSuite-Shops. Über * den Prozess-Label kann der Prozess eindeutig identifiziert und gestartet werden. * Über den "proc_datatype" Field wird der Comproc-Komponente mitgeteilt, dass der * Prozess zu Aufrägen gehört und in diesen Kontext angezeigt werden soll. */ $r = $this->eCMS->plugin_siteControl->plugin_ecs->ecs_ecomproc->process_create( 'proc_label' => 'mein_plugin_order_rating_request', 'proc_name' => 'Auftrag Bewertung Anfrage', 'proc_desc' => 'Sendet eine Bewertungsanfrage an den Kunden, nach erfolgreich Abschluss des Auftrags.', 'proc_datatype' => 'order', ) ); if ($r['status']==true){ // OK $proc_id = $r['meta']['insert_id']; } else { // Error $this->eCMS->plugin_siteControl->plugin_ecs->log_error('...'); return $r; } /** * Nachdem der Comrproc erfolgreich angelegt wurde, wird nun eine E-Mail in diesen * Prozess hinzugefügt. Die Prozess-ID "$proc_id" wurde im ersten Schritt zwischen- * gespeichert. Mit den Platzhalter "${...}" können Daten aus dem Auftrag adressiert * werden. */ $r = $this->eCMS->plugin_siteControl->plugin_ecs->ecs_ecomproc->object_create( 'fk_obj_proc_id' => $proc_id, 'obj_type' => 'email_html', 'obj_name' => 'Bewertungsanfrage - Kunde', 'obj_receiver' => '${invoice_email}', 'obj_sender' => '${shop_config/email_purchase_from}', 'obj_subject' => 'Ihre Bestellung: ${orderid}, ${person/lastname}, ${person/firstname}', ) ); if ($r['status']==true){ // OK $obj_id = $r['meta']['insert_id']; } else { // Error $this->eCMS->plugin_siteControl->plugin_ecs->log_error('...'); return $r; } /** * Zur angelegten E-Mail wird nur ein E-Mail-Body hinzugefügt. Als Render-Engine für * den Mail-Body wird das Shop-Frontend-eCMS eingestellt. Durch den Comproc wird der * eCMS-Seite die Auftrag-ID "oid" als Seiten-Parameter übergeben. Über diesen Seiten- * Parameter kann der Seiten-Inhalt dynamisch zum Auftrag angepasst werden. */ $r = $this->eCMS->plugin_siteControl->plugin_ecs->ecs_ecomproc->objectPart_create( 'fk_objp_obj_id' => $obj_id, 'objp_type' => 'body', 'objp_engine' => 'ecms_page', 'objp_engine_param' => 'mein_plugin_email_order_rating_body', 'objp_pos' => 1, ) ); if ($r['status']==true){ // OK } else { // Error }