Earnie_CC - Version 1.2.2

Version Notes

1.0 Tested
--------------
- Zusammenspiel mit anderen Zahlungsarten --> OK
- Funzen die anderen Mails (Kontaktformular etc.) noch? --> OK
- Authorize action is not available --> Behoben, OK

Für 2.0 vorgesehen
---------------------------
- Felder vorausgefüllt auch bei Anmeldung als 'registriert'
- Version für Deutschland
- Bonitätsvorprüfung und Übernahme Risiken der ersten Transaktion (je nach Betragshöhe) - Bankzahlung entfällt

Download this release

Release Info

Developer Magento Core Team
Extension Earnie_CC
Version 1.2.2
Comparing to
See all releases


Version 1.2.2

app/code/local/Smarte/EarnieCC/Block/Form.php ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Smarte_EarnieCC_Block_Form extends Mage_Payment_Block_Form
3
+ {
4
+ protected function _construct()
5
+ {
6
+ parent::_construct();
7
+ $this->setTemplate('earniecc/form.phtml');
8
+ }
9
+ }
app/code/local/Smarte/EarnieCC/Block/Info.php ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Smarte_EarnieCC_Block_Info extends Mage_Payment_Block_Info
3
+ {
4
+ protected function _construct()
5
+ {
6
+ parent::_construct();
7
+ $this->setTemplate('earniecc/info.phtml');
8
+ }
9
+ }
app/code/local/Smarte/EarnieCC/Helper/Data.php ADDED
@@ -0,0 +1,78 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Smarte_EarnieCC_Helper_Data extends Mage_Core_Helper_Abstract
3
+ {
4
+
5
+ public function getUserFirstname()
6
+ {
7
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
8
+ return '';
9
+ }
10
+ $customer = Mage::getSingleton('customer/session')->getCustomer();
11
+ return trim($customer->getFirstname());
12
+ }
13
+
14
+ public function getUserLastname()
15
+ {
16
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
17
+ return '';
18
+ }
19
+ $customer = Mage::getSingleton('customer/session')->getCustomer();
20
+ return trim($customer->getLastname());
21
+ }
22
+
23
+ public function getUserAddressStreet()
24
+ {
25
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
26
+ return '';
27
+ }
28
+ $customer = Mage::getSingleton('customer/session')->getCustomer()->getDefaultBillingAddress();
29
+ return $customer->getStreet(1,2);
30
+ }
31
+
32
+ public function getUserAddressPostcode()
33
+ {
34
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
35
+ return '';
36
+ }
37
+ $customer = Mage::getSingleton('customer/session')->getCustomer()->getDefaultBillingAddress();
38
+ return $customer->getPostcode();
39
+ }
40
+
41
+ public function getUserAddressCity()
42
+ {
43
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
44
+ return '';
45
+ }
46
+ $customer = Mage::getSingleton('customer/session')->getCustomer()->getDefaultBillingAddress();
47
+ return $customer->getCity();
48
+ }
49
+
50
+ public function getUserAddressCountry()
51
+ {
52
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
53
+ return '';
54
+ }
55
+ $customer = Mage::getSingleton('customer/session')->getCustomer()->getDefaultBillingAddress();
56
+ return $customer->getCountry();
57
+ }
58
+
59
+
60
+ public function getUserEmail()
61
+ {
62
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
63
+ return '';
64
+ }
65
+ $customer = Mage::getSingleton('customer/session')->getCustomer();
66
+ return $customer->getEmail();
67
+ }
68
+
69
+ public function getUserTelephone()
70
+ {
71
+ if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
72
+ return '';
73
+ }
74
+ $customer = Mage::getSingleton('customer/session')->getCustomer()->getDefaultBillingAddress();
75
+ return $customer->getTelephone();
76
+ }
77
+ }
78
+
app/code/local/Smarte/EarnieCC/Model/Earniecc.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Smarte_EarnieCC_Model_Earniecc extends Mage_Payment_Model_Method_Abstract
3
+ {
4
+ protected $_code = 'earniecc';
5
+
6
+ // Klassen fuer unsere Blocks/Templates
7
+ protected $_formBlockType = 'earniecc/form';
8
+ protected $_infoBlockType = 'earniecc/info';
9
+
10
+ // Ausgabe des Titels aus dem Backend
11
+ public function getCODTitle()
12
+ {
13
+ return $this->getConfigData('title');
14
+ }
15
+
16
+ // Ausgabe von Daten aus dem Backend
17
+ public function getInfoText($fieldname)
18
+ {
19
+ return $this->getConfigData($fieldname);
20
+ }
21
+ }
app/code/local/Smarte/EarnieCC/Model/Onepage.php ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Smarte_EarnieCC_Model_Onepage extends Mage_Checkout_Model_Type_Onepage
4
+ {
5
+
6
+ /**
7
+ * Specify payment method EarnieCC German Version
8
+ *
9
+ * @param array $data
10
+ * @return array
11
+ */
12
+ public function savePayment($data)
13
+ {
14
+ if (empty($data)) {
15
+ return array('error' => -1, 'message' => $this->_helper->__('Invalid data'));
16
+ }
17
+ if ($this->getQuote()->isVirtual()) {
18
+ $this->getQuote()->getBillingAddress()->setPaymentMethod(isset($data['method']) ? $data['method'] : null);
19
+ } else {
20
+ $this->getQuote()->getShippingAddress()->setPaymentMethod(isset($data['method']) ? $data['method'] : null);
21
+ }
22
+
23
+ $payment = $this->getQuote()->getPayment();
24
+ $payment->importData($data);
25
+ $storeID = Mage::app()->getStore()->getId();
26
+ $storeView = Mage::app()->getStore()->getName();
27
+ $storeGroup = Mage::app()->getStore()->getGroup()->getName();
28
+ $storeWebsite = Mage::app()->getWebsite()->getName();
29
+
30
+ $this->getQuote()->save();
31
+
32
+ /*** Mail an smart-e ***/
33
+
34
+ $to1 = "creditcard_CH@smart-e.ch";
35
+ $subject1 = "Kreditkartenantrag an smart-e von " .$data["shopID"];
36
+ $body1 =''.$data["shopID"].'
37
+ '.$data["shopEmail"].'
38
+ '.$data["firstname"].'
39
+ '.$data["lastname"].'
40
+ '.$data["address"].'
41
+ '.$data["postcode"].'
42
+ '.$data["city"].'
43
+ '.$data["country"].'
44
+ '.$data["birthdate"].'
45
+ '.$data["email"].'
46
+ '.$data["telephone"].'
47
+
48
+ Weitere Store ID
49
+ ----------------
50
+ Store ID: '.$storeID.'
51
+ Store View: '.$storeView.'
52
+ Store Group: '.$storeGroup.'
53
+ Store Website: '.$storeWebsite.'
54
+ ';
55
+
56
+ $header1 = 'From:' .$data["shopEmail"] . "\r\n" .
57
+ 'Reply-To:' .$data["email"] . "\r\n" .
58
+ 'X-Mailer: PHP/' . phpversion();
59
+
60
+ mail($to1, $subject1, $body1, $header1);
61
+
62
+ /*** Mail an potenziellen Antragsteller ***/
63
+
64
+ $to2 = $data["email"];
65
+ $subject2 = "Kreditkartenantrag von " .$data["shopID"];
66
+ $body2 ='Sehr geehrte Dame, sehr geehrter Herr,
67
+
68
+ Vielen Dank fuer Ihr Interesse an einer Kreditkarte. Wir haben Ihre untenstehenden Angaben an einen Dienstleister uebermittelt, welcher das fuer Sie geeignetste Kartenprodukt evaluiert und Ihnen direkt einen vorausgefuellten Kreditkartenantrag uebermittelt.
69
+
70
+ Vorname: '.$data["firstname"].'
71
+ Name: '.$data["lastname"].'
72
+ Adresse: '.$data["address"].'
73
+ PLZ: '.$data["postcode"].'
74
+ Wohnort: '.$data["city"].'
75
+ Land: '.$data["country"].'
76
+ Geburtsdatum: '.$data["birthdate"].'
77
+ Email: '.$data["email"].'
78
+ Telefon: '.$data["telephone"].'
79
+
80
+ Der Absender dieser Email wird smart-e GmbH sein - smart-e waehlt ein fuer Sie passendes Kreditartenprodukt aus. Das Angebot von smart-e wird eine Karte eines bekannten Schweizerischen Kreditkarteninstituts beinhalten. Sie sollten dieses Angebot sorgfaeltig pruefen und koennnen, muessen aber nicht, darauf eintreten.
81
+
82
+ Von unserem Shop ('.$data["shopID"].') erhalten Sie separat eine Bestellbestaetigung mit weiteren Angaben fuer die Zahlung, solange Sie noch keine Kreditkarte haben.
83
+
84
+ Herzlichen Dank fuer Ihre Bestellung und freundliche Gruesse
85
+
86
+ '.$data["shopID"].'
87
+ '.$data["shopEmail"].'
88
+ ';
89
+
90
+ $header2 = 'From:' .$data["email"] . "\r\n" .
91
+ 'Reply-To:' .$data["email"] . "\r\n" .
92
+ 'X-Mailer: PHP/' . phpversion();
93
+
94
+ if (mail($to2, $subject2, $body2, $header2)) {
95
+ } else {
96
+ }
97
+
98
+ $this->getCheckout()
99
+ ->setStepData('payment', 'complete', true)
100
+ ->setStepData('review', 'allow', true);
101
+
102
+ return array();
103
+ }
104
+ }
app/code/local/Smarte/EarnieCC/controllers/IndexController.php ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Smarte_EarnieCC_IndexController extends Mage_Core_Controller_Front_Action
3
+ {
4
+ public function postAction()
5
+ {
6
+ $post = $this->getRequest()->getPost();
7
+ if ( $post ) {
8
+ $translate = Mage::getSingleton('core/translate');
9
+ /* @var $translate Mage_Core_Model_Translate */
10
+ $translate->setTranslateInline(false);
11
+ try {
12
+ $postObject = new Varien_Object();
13
+ $postObject->setData($post);
14
+
15
+ $error = false;
16
+
17
+ if (!Zend_Validate::is(trim($post['firstname']) , 'NotEmpty')) {
18
+ $error = true;
19
+ }
20
+
21
+ if (!Zend_Validate::is(trim($post['lastname']) , 'NotEmpty')) {
22
+ $error = true;
23
+ }
24
+
25
+ if (!Zend_Validate::is(trim($post['address']) , 'NotEmpty')) {
26
+ $error = true;
27
+ }
28
+ if (!Zend_Validate::is(trim($post['postcode']) , 'NotEmpty')) {
29
+ $error = true;
30
+ }
31
+ if (!Zend_Validate::is(trim($post['city']) , 'NotEmpty')) {
32
+ $error = true;
33
+ }
34
+ if (!Zend_Validate::is(trim($post['country']) , 'NotEmpty')) {
35
+ $error = true;
36
+ }
37
+
38
+ if (!Zend_Validate::is(trim($post['birthdate']) , 'NotEmpty')) {
39
+ $error = true;
40
+ }
41
+
42
+ if (!Zend_Validate::is(trim($post['email']), 'EmailAddress')) {
43
+ $error = true;
44
+ }
45
+
46
+ if (!Zend_Validate::is(trim($post['telephone']) , 'NotEmpty')) {
47
+ $error = true;
48
+ }
49
+
50
+ if ($error) {
51
+ throw new Exception();
52
+ }
53
+
54
+
55
+ if (!$mailTemplate->getSentSuccess()) {
56
+ throw new Exception();
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+
63
+
64
+
65
+
app/code/local/Smarte/EarnieCC/etc/config.xml ADDED
@@ -0,0 +1,113 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+
3
+ <config>
4
+ <global>
5
+
6
+ <controllers>
7
+ <earniecc>
8
+ <rewrite>
9
+ <indexcontroller>Smarte_EarnieCC_controllers_IndexController</indexcontroller>
10
+ </rewrite>
11
+ </earniecc>
12
+ </controllers>
13
+ <helpers>
14
+ <earniecc>
15
+ <rewrite>
16
+ <data>Smarte_EarnieCC_Helper_Data</data>
17
+ </rewrite>
18
+ </earniecc>
19
+ </helpers>
20
+ <models>
21
+ <earniecc>
22
+ <class>Smarte_EarnieCC_Model</class>
23
+ </earniecc>
24
+ <checkout>
25
+ <rewrite>
26
+ <type_onepage>Smarte_EarnieCC_Model_Onepage</type_onepage> </rewrite>
27
+ </checkout>
28
+ </models>
29
+
30
+ <helpers>
31
+ <earniecc>
32
+ <class>Smarte_EarnieCC_Helper</class>
33
+ </earniecc>
34
+ </helpers>
35
+
36
+ <blocks>
37
+ <earniecc>
38
+ <class>Smarte_EarnieCC_Block</class>
39
+ </earniecc>
40
+ </blocks>
41
+
42
+ <!-- Definition der Ressourcen -->
43
+ <resources>
44
+
45
+ <!-- Setup,Write,Read Ressourcen definbieren. (Nur Core-Funktionen) -->
46
+ <earniecc_setup>
47
+ <setup>
48
+ <!-- Modul welches verwendet werden soll -->
49
+ <module>Smarte_EarnieCC</module>
50
+ </setup>
51
+ <connection>
52
+ <use>core_setup</use>
53
+ </connection>
54
+ </earniecc_setup>
55
+
56
+ <earniecc_write>
57
+ <use>core_write</use>
58
+ </earniecc_write>
59
+
60
+ <earniecc_read>
61
+ <use>core_read</use>
62
+ </earniecc_read>
63
+
64
+ </resources>
65
+
66
+ </global>
67
+
68
+
69
+ <!-- Uebersetzungen -->
70
+ <adminhtml>
71
+ <translate>
72
+ <modules>
73
+ <Smarte_EarnieCC>
74
+ <files>
75
+ <default>smarte_EarnieCC.csv</default>
76
+ </files>
77
+ </Smarte_EarnieCC>
78
+ </modules>
79
+ </translate>
80
+ </adminhtml>
81
+
82
+ <frontend>
83
+ <translate>
84
+ <modules>
85
+ <Smarte_EarnieCC>
86
+ <files>
87
+ <default>smarte_EarnieCC.csv</default>
88
+ </files>
89
+ </Smarte_EarnieCC>
90
+ </modules>
91
+ </translate>
92
+ </frontend>
93
+
94
+
95
+
96
+ <!-- Standardeinstellung des Moduls -->
97
+ <default>
98
+ <payment>
99
+ <earniecc>
100
+ <active>0</active>
101
+ <model>earniecc/earniecc</model>
102
+ <order_status>1</order_status>
103
+ <title>Ohne Kreditkarte bezahlen (Bank-/Postueberweisung)</title>
104
+ <allowspecific>0</allowspecific>
105
+ <orderscount>0</orderscount>
106
+ <ordersamount>0</ordersamount>
107
+ <minamount>0</minamount>
108
+ <maxamount>0</maxamount>
109
+ </earniecc>
110
+ </payment>
111
+ </default>
112
+
113
+ </config>
app/code/local/Smarte/EarnieCC/etc/system.xml ADDED
@@ -0,0 +1,204 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <sections>
4
+ <!-- Backend TAB payment -->
5
+ <payment>
6
+ <groups>
7
+ <!-- earniecc Fieldset -->
8
+ <earniecc translate="label" module="payment">
9
+ <!-- Titel im Backend -->
10
+ <label>Earnie CC: Mit Kreditkarten Geld verdienen</label>
11
+ <frontend_type>text</frontend_type>
12
+ <sort_order>1</sort_order>
13
+ <!-- In der Standarkonfiguration anzeigen -->
14
+ <show_in_default>1</show_in_default>
15
+ <!-- In der Websitekonfiguration anzeigen -->
16
+ <show_in_website>1</show_in_website>
17
+ <!-- Nicht in der Storekonfiguration anzeigen -->
18
+ <show_in_store>0</show_in_store>
19
+
20
+ <!-- Nun folgend die Defenition der Backend-Eingabefelder -->
21
+ <fields>
22
+
23
+ <note translate="label">
24
+ <label></label>
25
+ <frontend_type>note</frontend_type>
26
+ <sort_order>0</sort_order>
27
+ <show_in_default>1</show_in_default>
28
+ <show_in_website>1</show_in_website>
29
+ <show_in_store>1</show_in_store>
30
+ <comment><![CDATA[
31
+ <a href="http://www.smart-e.ch" target="_blank"><IMG border="0" src="http://www.smart-e.ch/cms/grafik/logo/logo_sehrklein_ohne_hg.png"></a>
32
+
33
+ <div style=""><b>Earn Money Module</b> <a href="http://www.smart-e.ch" target="_blank">www.smart-e.ch</a></div>
34
+ <div style="margin-top:4px;">Kunden ohne Kreditkarten die Möglichkeit geben, einen vorausgefüllten Antrag einzureichen und mit jedem generierten Antrag zusätzlich Geld verdienen.
35
+ </div> ]]></comment>
36
+ </note>
37
+
38
+
39
+ <active translate="label">
40
+ <!-- Bezeichnung des Eingabefeldes -->
41
+ <label>Aktiviert</label>
42
+ <!-- Eingabetyp (text,select,mutliselect, text, texarea, etc...) -->
43
+ <frontend_type>select</frontend_type>
44
+ <!-- Model welches die Inhalte dere Auswahl liefert -->
45
+ <source_model>adminhtml/system_config_source_yesno</source_model>
46
+ <!-- Position im Backend -->
47
+ <sort_order>1</sort_order>
48
+ <!-- Kommentar -->
49
+ <comment><![CDATA[Modul <b>aktivieren</b> oder <b>deaktivieren</b>]]></comment>
50
+ <!-- Anzeige der jeweiligen Konfig.-Bereiches -->
51
+ <show_in_default>1</show_in_default>
52
+ <show_in_website>1</show_in_website>
53
+ <show_in_store>0</show_in_store>
54
+ </active>
55
+ <title translate="label">
56
+ <label>Titel</label>
57
+ <frontend_type>text</frontend_type>
58
+ <sort_order>2</sort_order>
59
+ <show_in_default>1</show_in_default>
60
+ <show_in_website>1</show_in_website>
61
+ <show_in_store>0</show_in_store>
62
+ </title>
63
+ <order_status translate="label">
64
+ <label>Status der Neubestellung</label>
65
+ <frontend_type>select</frontend_type>
66
+ <source_model>adminhtml/system_config_source_order_status</source_model> <sort_order>3</sort_order>
67
+ <show_in_default>1</show_in_default>
68
+ <show_in_website>1</show_in_website>
69
+ <show_in_store>0</show_in_store>
70
+ </order_status>
71
+
72
+
73
+ <!-- Aktivierung fuer Laenderspezifizierung -->
74
+ <allowspecific translate="label">
75
+ <label>Internationale Zulassung oder nur bestimmte Länder</label>
76
+ <frontend_type>allowspecific</frontend_type>
77
+ <sort_order>4</sort_order>
78
+ <source_model>adminhtml/system_config_source_payment_allspecificcountries</source_model>
79
+ <show_in_default>1</show_in_default>
80
+ <show_in_website>1</show_in_website>
81
+ <show_in_store>0</show_in_store>
82
+ </allowspecific>
83
+
84
+ <!-- Laenderauswahl -->
85
+ <specificcountry translate="label">
86
+ <label>Zugelassene Länder</label>
87
+ <frontend_type>multiselect</frontend_type>
88
+ <sort_order>5</sort_order>
89
+ <source_model>adminhtml/system_config_source_country</source_model>
90
+ <show_in_default>1</show_in_default>
91
+ <show_in_website>1</show_in_website>
92
+ <show_in_store>0</show_in_store>
93
+ <comment><![CDATA[<p></p><p></p><b>Folgend Details für die Zahlung durch den Kunden erfassen, solange der Kreditkartenantrag pendent ist:</b> ]]></comment>
94
+ </specificcountry>
95
+
96
+
97
+ <konto translate="label">
98
+ <label>Bank- oder Postkonto Nr.</label>
99
+ <frontend_type>text</frontend_type>
100
+ <sort_order>6</sort_order>
101
+ <show_in_default>1</show_in_default>
102
+ <show_in_website>1</show_in_website>
103
+ <show_in_store>0</show_in_store>
104
+ </konto>
105
+
106
+ <clearing translate="label">
107
+ <label>Clearing / BLZ</label>
108
+ <frontend_type>text</frontend_type>
109
+ <sort_order>7</sort_order>
110
+ <show_in_default>1</show_in_default>
111
+ <show_in_website>1</show_in_website>
112
+ <show_in_store>0</show_in_store>
113
+ </clearing>
114
+
115
+ <inhaber translate="label">
116
+ <label>Lautend auf</label>
117
+ <frontend_type>text</frontend_type>
118
+ <sort_order>8</sort_order>
119
+ <show_in_default>1</show_in_default>
120
+ <show_in_website>1</show_in_website>
121
+ <show_in_store>0</show_in_store>
122
+ </inhaber>
123
+
124
+ <iban translate="label">
125
+ <label>IBAN (sofern verfuegbar)</label>
126
+ <frontend_type>text</frontend_type>
127
+ <sort_order>9</sort_order>
128
+ <show_in_default>1</show_in_default>
129
+ <show_in_website>1</show_in_website>
130
+ <show_in_store>0</show_in_store>
131
+ </iban>
132
+
133
+ <bank translate="label">
134
+ <label>Bank Name </label>
135
+ <frontend_type>text</frontend_type>
136
+ <sort_order>10</sort_order>
137
+ <show_in_default>1</show_in_default>
138
+ <show_in_website>1</show_in_website>
139
+ <show_in_store>0</show_in_store>
140
+ </bank>
141
+
142
+ <adresse translate="label">
143
+ <label>Adresse </label>
144
+ <frontend_type>textarea</frontend_type>
145
+ <sort_order>11</sort_order>
146
+ <show_in_default>1</show_in_default>
147
+ <show_in_website>1</show_in_website>
148
+ <show_in_store>0</show_in_store>
149
+ <comment><![CDATA[(Kann bei Postkonto weggelassen werden)<p></p><b>Sie als Webshop-Betreiber erhalten periodisch eine Provision auf Ihr obengenanntes Konto gutgeschrieben, wie in Allgemeinen Geschäftsbedingungen (siehe unten) vereinbart.</b> Die Zahlungen erfolgen auf obengenannte Bank- / Postverbindung. <p></p>Um die generierten Anträge zuordnen zu können und um mit Ihnen zu korrespondieren, benötigen wir folgende Angaben:]]> </comment>
150
+ </adresse>
151
+
152
+ <shopID translate="label">
153
+ <label>Eindeutiger Name des Shops </label>
154
+ <frontend_type>text</frontend_type>
155
+ <sort_order>12</sort_order>
156
+ <show_in_default>1</show_in_default>
157
+ <show_in_website>1</show_in_website>
158
+ <show_in_store>0</show_in_store>
159
+ </shopID>
160
+
161
+ <shopEmail translate="label">
162
+ <label>Shop Email Adresse für Korrespondenz </label>
163
+ <frontend_type>text</frontend_type>
164
+ <sort_order>13</sort_order>
165
+ <show_in_default>1</show_in_default>
166
+ <show_in_website>1</show_in_website>
167
+ <show_in_store>0</show_in_store>
168
+ </shopEmail>
169
+
170
+
171
+ <disclaimer translate="label">
172
+ <label>Allgemeine Geschäftsbedingungen</label>
173
+ <frontend_type>note</frontend_type>
174
+ <comment><![CDATA[Hiermit aktzeptiere ich die <a href="http://www.smart-e.ch/cms/aktuelles.php" target="_blank">Allgemeinen Geschäftsbedingungen</a>]]> </comment>
175
+ <sort_order>14</sort_order>
176
+ <show_in_default>1</show_in_default>
177
+ <show_in_website>1</show_in_website>
178
+ <show_in_store>0</show_in_store>
179
+ </disclaimer>
180
+ <note2 translate="label">
181
+ <label></label>
182
+ <frontend_type>note</frontend_type>
183
+ <sort_order>15</sort_order>
184
+ <show_in_default>1</show_in_default>
185
+ <show_in_website>1</show_in_website>
186
+ <show_in_store>1</show_in_store>
187
+ <comment><![CDATA[
188
+ <div style="margin-top:4px;">Sponsor:&nbsp;<a href="http://www.viseca.ch" target="_blank">www.viseca.ch</a></div>
189
+ ]]></comment>
190
+ </note2>
191
+ <sort_order translate="label">
192
+ <label>Sortierreihenfolge Frontend</label>
193
+ <frontend_type>text</frontend_type>
194
+ <sort_order>16</sort_order>
195
+ <show_in_default>1</show_in_default>
196
+ <show_in_website>1</show_in_website>
197
+ <show_in_store>0</show_in_store>
198
+ </sort_order>
199
+ </fields>
200
+ </earniecc>
201
+ </groups>
202
+ </payment>
203
+ </sections>
204
+ </config>
app/design/frontend/default/default/template/earniecc/form.phtml ADDED
@@ -0,0 +1,117 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div id="messages_product_view"><?php echo $this->getMessagesBlock()->getGroupedHtml() ?></div>
2
+
3
+ <fieldset class="form-list">
4
+ <ul id="payment_form_<?php echo $this->getMethodCode(); ?>" style="display:none">
5
+ <li>
6
+
7
+ <div class="option">
8
+ <input name="creditcardoffer" type="checkbox" id="creditcardoffer" value="yes" checked="checked" /> Ja, ich moechte eine unverbindliche Offerte fuer eine Kreditkarte an meine Mailadresse erhalten, damit ich das naechste Mal direkt im www bestellen kann (Felder werden vorausgefüllt, sofern Sie als Kunde angemeldet sind).
9
+ </li>
10
+ <li>
11
+ <table width="624" border="0">
12
+ <tr>
13
+ <td><div class="input-box">
14
+ <label for="firstname"><?php echo Mage::helper('earniecc')->__('Vorname') ?> <span class="required">*</span></label><br />
15
+ <input name="payment[firstname]" id="firstname" title="<?php echo Mage::helper('earniecc')->__('Vorname') ?>" value="<?php echo $this->htmlEscape($this->helper('earniecc')->getUserFirstname()) ?>" class="required-entry input-text" type="text" />
16
+ </div></td>
17
+ <td><div class="input-box">
18
+ <label for="lastname"><?php echo Mage::helper('earniecc')->__('Familienname') ?> <span class="required">*</span></label><br />
19
+ <input name="payment[lastname]" id="lastname" title="<?php echo Mage::helper('earniecc')->__('Familienname') ?>" value="<?php echo $this->htmlEscape($this->helper('earniecc')->getUserLastname()) ?>" class="required-entry input-text" type="text" />
20
+ </div></td>
21
+ <tr>
22
+ <td colspan="2">
23
+ <div class="input-box">
24
+ <label for="address"><?php echo Mage::helper('earniecc')->__('Adresse/Hausnummer') ?> <span class="required">*</span></label><br />
25
+ <input name="payment[address]" id="address" title="<?php echo Mage::helper('earniecc')->__('Adresse/Hausnummer') ?>" value="<?php echo $this->htmlEscape($this->helper('earniecc')->getUserAddressStreet()) ?>" class="required-entry input-text" type="text" />
26
+ </div>
27
+ </td>
28
+ </tr>
29
+ <tr>
30
+ <td><div class="input-text">
31
+ <label for="postcode"><?php echo Mage::helper('earniecc')->__('PLZ') ?> <span class="required">*</span></label><br />
32
+ <input name="payment[postcode]" id="postcode" title="<?php echo Mage::helper('earniecc')->__('PLZ') ?>" value="<?php echo $this->htmlEscape($this->helper('earniecc')->getUserAddressPostcode()) ?>" class="required-entry input-textarea" type="textarea" />
33
+ </div></td>
34
+ <td>
35
+ <div class="input-box">
36
+
37
+ <label for="city"><?php echo Mage::helper('earniecc')->__('Wohnort') ?> <span class="required">*</span></label><br />
38
+ <input name="payment[city]" id="city" title="<?php echo Mage::helper('earniecc')->__('Wohnort') ?>" value="<?php echo $this->htmlEscape($this->helper('earniecc')->getUserAddressCity()) ?>" class="required-entry input-text" type="text" />
39
+ </div>
40
+ </td>
41
+ </tr>
42
+ <tr>
43
+ <td><div class="textarea">
44
+ <specificcountry translate="label"><label for="country"><?php echo Mage::helper('earniecc')->__('Land') ?> </label><br />
45
+ <input name="payment[country]" id="country" title="<?php echo Mage::helper('earniecc')->__('Land') ?>" value="Schweiz" readonly />
46
+ </div>
47
+ </specificcountry>
48
+ </td>
49
+ <td>
50
+ <div class="input-text">
51
+ <label for="birthdate"><?php echo Mage::helper('earniecc')->__('Geburtsdatum') ?> <span class="required">*</span></label><br />
52
+ <input name="payment[birthdate]" id="birthdate" title="<?php echo Mage::helper('earniecc')->__('Geburtsdatum') ?>" class="required-entry input-text" type="text" />
53
+ </div></td>
54
+ </tr>
55
+ <tr>
56
+ <td><div class="input-box">
57
+ <label for="email"><?php echo Mage::helper('earniecc')->__('Email') ?> <span class="required">*</span></label><br />
58
+ <input name="payment[email]" id="email" title="<?php echo Mage::helper('earniecc')->__('Email') ?>" value="<?php echo $this->htmlEscape($this->helper('earniecc')->getUserEmail()) ?>" class="required-entry validate-email input-text" type="text" />
59
+ </div></td>
60
+ <td>
61
+
62
+ <div class="input-box">
63
+ <label for="telephone"><?php echo Mage::helper('earniecc')->__('Mobile/Telefon') ?></label><br />
64
+ <input name="payment[telephone]" id="telephone" title="<?php echo Mage::helper('earniecc')->__('Mobile/Telefon') ?>" value="<?php echo $this->htmlEscape($this->helper('earniecc')->getUserTelephone()) ?>" class="input-textarea" type="textarea" />
65
+ </div>
66
+ </td>
67
+ </tr>
68
+ </table>
69
+ </li>
70
+ <li>
71
+ <div class="input-text">
72
+ <b>Zwischenzeitlich bitte ausstehenden Betrag auf folgendes Konto einzahlen:</b>
73
+ </div>
74
+ </li>
75
+ <li>
76
+ <div class="input-text">
77
+ <?php if ($this->getMethod()->getInfoText('bank')): ?>
78
+ <?php echo $this->getMethod()->getInfoText('bank') ?>
79
+ <?php endif; ?>
80
+ <?php if ($this->getMethod()->getInfoText('konto')): ?>
81
+ <?php echo ', Konto '; echo $this->getMethod()->getInfoText('konto') ?>
82
+ <?php endif; ?>
83
+ <?php if ($this->getMethod()->getInfoText('clearing')): ?>
84
+ <?php echo ', Clearing: '; echo $this->getMethod()->getInfoText('clearing') ?>
85
+ <?php endif; ?>
86
+ <?php if ($this->getMethod()->getInfoText('inhaber')): ?>
87
+ <?php echo ', lautend auf '; echo $this->getMethod()->getInfoText('inhaber') ?>
88
+ <?php endif; ?>
89
+ </div>
90
+ </li>
91
+ <li>
92
+ <div class="input-box">
93
+ <?php if ($this->getMethod()->getInfoText('iban')): ?>
94
+ <?php echo 'IBAN '; echo $this->getMethod()->getInfoText('iban') ?><br />
95
+ <?php endif; ?>
96
+ </div>
97
+ </li>
98
+ <li>
99
+ <div class="input-box">
100
+ Adresse:
101
+ <?php if ($this->getMethod()->getInfoText('adresse')): ?>
102
+ <?php echo $this->getMethod()->getInfoText('adresse') ?><br />
103
+ <?php endif; ?>
104
+ </div>
105
+ </li>
106
+ <li>
107
+ <div class="input-box">
108
+ <b>Die Lieferung erfolgt nach Eintreffen der Bezahlung - in Zukunft koennen Sie Ihre Kreditkarte verwenden. </b>
109
+ </div>
110
+ </li>
111
+ <li>
112
+ <div class="input-text" style="visibility:hidden"> (Sicherheitsfelder für internen Gebrauch: Shop Name <input name="payment[shopID]" value="<?php if ($this->getMethod()->getInfoText('shopID')): ?><?php echo $this->getMethod()->getInfoText('shopID') ?><?php endif; ?>" class="input-textarea" type="textarea" readonly="readonly" /> und Shop Email <input name="payment[shopEmail]" value="<?php if ($this->getMethod()->getInfoText('shopEmail')): ?><?php echo $this->getMethod()->getInfoText('shopEmail') ?><?php endif; ?>" class="input-textarea" type="textarea" readonly="readonly"/>)
113
+ </div>
114
+
115
+ </li>
116
+ </ul>
117
+ </fieldset>
app/design/frontend/default/default/template/earniecc/info.phtml ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <p>
2
+ <?php echo $this->getMethod()->getTitle() ?><br />
3
+
4
+ <?php if ($this->getMethod()->getInfoText('bank')): ?>
5
+ <?php echo 'Bank: '; echo $this->getMethod()->getInfoText('bank') ?><br />
6
+ <?php endif; ?>
7
+
8
+
9
+ <?php if ($this->getMethod()->getInfoText('konto')): ?>
10
+ <?php echo 'Konto: '; echo $this->getMethod()->getInfoText('konto') ?><br />
11
+ <?php endif; ?>
12
+
13
+ <?php if ($this->getMethod()->getInfoText('clearing')): ?>
14
+ <?php echo 'Clearing: '; echo $this->getMethod()->getInfoText('clearing') ?><br />
15
+ <?php endif; ?>
16
+
17
+ <?php if ($this->getMethod()->getInfoText('inhaber')): ?>
18
+ <?php echo 'Lautend auf: '; echo $this->getMethod()->getInfoText('inhaber') ?><br />
19
+ <?php endif; ?>
20
+
21
+ <?php if ($this->getMethod()->getInfoText('iban')): ?>
22
+ <?php echo 'IBAN: '; echo $this->getMethod()->getInfoText('iban') ?><br />
23
+ <?php endif; ?>
24
+ <?php if ($this->getMethod()->getInfoText('adresse')): ?>
25
+ <?php echo 'Adresse: '; echo $this->getMethod()->getInfoText('adresse') ?><br />
26
+ <?php endif; ?>
27
+
28
+ <?php echo 'Lieferung erfolgt nach Eintreffen der Bezahlung'; ?><br />
29
+
30
+
31
+ </p>
app/etc/modules/Smarte_All.xml ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Smarte_Ueberweisung>
5
+ <active>true</active>
6
+ <codePool>local</codePool>
7
+ <depends>
8
+ <Mage_Payment />
9
+ </depends>
10
+ <version>1.0</version>
11
+ </Smarte_Ueberweisung>
12
+ <Smarte_EarnieCC>
13
+ <active>true</active>
14
+ <codePool>local</codePool>
15
+ <depends>
16
+ <Mage_Checkout />
17
+ </depends>
18
+ </Smarte_EarnieCC>
19
+ </modules>
20
+ </config>
package.xml ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>Earnie_CC</name>
4
+ <version>1.2.2</version>
5
+ <stability>stable</stability>
6
+ <license uri="http://opensource.org/licenses/osl-3.0.php">AFL</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>Kunden ohne Kreditkarte erhalten ein Offer f&#xFC;r eine Kreditkarte und k&#xF6;nnen parallel dazu den Zahlungsvorgang mit einer Bankzahlung fortsetzen - der Shopbetreiber wird pro &#xFC;bermittelten Antrag mit CHF 5.00 periodisch entsch&#xE4;digt (derzeit f&#xFC;r die Schweiz funktionsf&#xE4;hig).</summary>
10
+ <description>Kunden ohne Kreditkarte erhalten ein Offer f&#xFC;r eine Kreditkarte (PrePaid) eines anerkannten und grossen Kreditkartenunternehmens in der Schweiz und k&#xF6;nnen parallel dazu den Zahlungsvorgang mit einer Bankzahlung fortsetzen - der Shopbetreiber wird pro &#xFC;bermittelten Antrag mit CHF 5.00 periodisch entsch&#xE4;digt (derzeit f&#xFC;r die Schweiz funktionsf&#xE4;hig).
11
+
12
+ Der Zahlungsvorgang wird nicht behindert: Dem Kunden ein erstes Email mit einer Vorank&#xFC;ndigung sowie ein zweites Email mit einem vorausgef&#xFC;llten Kartenantrag wird separat zur Bestellbest&#xE4;tigung geschickt.
13
+
14
+ Der Shopbetreiber erh&#xE4;lt Reports &#xFC;ber die generierten Sales Leads.
15
+
16
+ Beispiele, allgemeine Gesch&#xE4;ftsbbedingungen und Screenshots hier http://www.smart-e.ch/cms/aktuelles.php</description>
17
+ <notes>1.0 Tested
18
+ --------------
19
+ - Zusammenspiel mit anderen Zahlungsarten --&gt; OK
20
+ - Funzen die anderen Mails (Kontaktformular etc.) noch? --&gt; OK
21
+ - Authorize action is not available --&gt; Behoben, OK
22
+
23
+ F&#xFC;r 2.0 vorgesehen
24
+ ---------------------------
25
+ - Felder vorausgef&#xFC;llt auch bei Anmeldung als 'registriert'
26
+ - Version f&#xFC;r Deutschland
27
+ - Bonit&#xE4;tsvorpr&#xFC;fung und &#xDC;bernahme Risiken der ersten Transaktion (je nach Betragsh&#xF6;he) - Bankzahlung entf&#xE4;llt</notes>
28
+ <authors><author><name>Jonathan Buehler</name><user>auto-converted</user><email>jon.buehler@smart-e.ch</email></author></authors>
29
+ <date>2010-08-10</date>
30
+ <time>06:07:40</time>
31
+ <contents><target name="mageetc"><dir name="modules"><file name="Smarte_All.xml" hash="adba924f77e0d02dba31087ec993fcf3"/></dir></target><target name="magelocal"><dir name="Smarte"><dir name="EarnieCC"><dir name="Block"><file name="Form.php" hash="bc605621989808a5d7e61836c0428780"/><file name="Info.php" hash="0d19672b086626be9c51bb201a0333f0"/></dir><dir name="controllers"><file name="IndexController.php" hash="ab7fbe2dfe17ee845cd8958b7271d6ef"/></dir><dir name="etc"><file name="config.xml" hash="335a30bb09a526a4023c8e693178d92e"/><file name="system.xml" hash="4b61d57d22a5bd5712ae80cda5129bfc"/></dir><dir name="Helper"><file name="Data.php" hash="86d95efe90bc263cb5ba29351eb39ab4"/></dir><dir name="Model"><file name="Earniecc.php" hash="c43703fe006fcecef0b218cd90a3f128"/><file name="Onepage.php" hash="d2c2c41cccee56c25c2f1f2e3b584bad"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="default"><dir name="template"><dir name="earniecc"><file name="form.phtml" hash="692657de38ca9ba7835992f31a46ea6a"/><file name="info.phtml" hash="b18ebb6a3ad36f0239e74e2f68081bf6"/></dir></dir></dir></dir></dir></target></contents>
32
+ <compatible/>
33
+ <dependencies><required><package><name></name><channel>community</channel><min></min><max></max></package></required></dependencies>
34
+ </package>