Version Notes
Implements Interac payments feature.
Download this release
Release Info
Developer | Demac Media |
Extension | 666999 |
Version | 0.4.5 |
Comparing to | |
See all releases |
Code changes from version 0.4.4 to 0.4.5
- app/code/community/Demac/Optimal/etc/config.xml +1 -1
- app/code/community/Demac/Optimal/sql/optimal_setup/mysql4-upgrade-0.4.1-0.4.2.php +65 -4
- app/code/community/Demac/Optimal/sql/optimal_setup/upgrade-0.4.1-0.4.2.php +65 -4
- app/design/frontend/base/default/template/optimal/form/creditcard.phtml +282 -277
- package.xml +4 -4
app/code/community/Demac/Optimal/etc/config.xml
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Demac_Optimal>
|
5 |
-
<version>0.4.
|
6 |
</Demac_Optimal>
|
7 |
</modules>
|
8 |
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Demac_Optimal>
|
5 |
+
<version>0.4.5</version>
|
6 |
</Demac_Optimal>
|
7 |
</modules>
|
8 |
|
app/code/community/Demac/Optimal/sql/optimal_setup/mysql4-upgrade-0.4.1-0.4.2.php
CHANGED
@@ -4,9 +4,70 @@ $installer = $this;
|
|
4 |
|
5 |
$installer->startSetup();
|
6 |
|
7 |
-
$
|
8 |
-
|
9 |
-
|
10 |
-
");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
12 |
$installer->endSetup();
|
4 |
|
5 |
$installer->startSetup();
|
6 |
|
7 |
+
$addCol = false;
|
8 |
+
|
9 |
+
try {
|
10 |
+
$installer->run("ALTER TABLE `{$installer->getTable('sales_flat_quote_payment')}` MODIFY `optimal_profile_id` VARCHAR(255) NOT NULL DEFAULT \"\" AFTER `method`;");
|
11 |
+
} catch (Exception $e) {
|
12 |
+
$msg = strtolower($e->getMessage());
|
13 |
+
if (strpos($msg, 'column not found') !== false) {
|
14 |
+
$addCol = true;
|
15 |
+
}
|
16 |
+
}
|
17 |
+
|
18 |
+
if ($addCol) {
|
19 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_quote_payment'),
|
20 |
+
'optimal_profile_id', 'VARCHAR(255) NOT NULL DEFAULT "" AFTER `method`');
|
21 |
+
}
|
22 |
+
|
23 |
+
$addCol = false;
|
24 |
+
|
25 |
+
try {
|
26 |
+
$installer->run("ALTER TABLE `{$installer->getTable('sales_flat_order_payment')}` MODIFY `optimal_profile_id` VARCHAR(255) NOT NULL DEFAULT \"\" AFTER `method`;");
|
27 |
+
} catch (Exception $e) {
|
28 |
+
$msg = strtolower($e->getMessage());
|
29 |
+
if (strpos($msg, 'column not found') !== false) {
|
30 |
+
$addCol = true;
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
if ($addCol) {
|
35 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_order_payment'),
|
36 |
+
'optimal_profile_id', 'VARCHAR(255) NOT NULL DEFAULT "" AFTER `method`');
|
37 |
+
}
|
38 |
+
|
39 |
+
$addCol = false;
|
40 |
+
|
41 |
+
try {
|
42 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_quote_payment'),
|
43 |
+
'optimal_create_profile', 'BOOLEAN NOT NULL AFTER `method`');
|
44 |
+
} catch (Exception $e) {
|
45 |
+
// means col exists already
|
46 |
+
}
|
47 |
+
|
48 |
+
try {
|
49 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_order_payment'),
|
50 |
+
'optimal_create_profile', 'BOOLEAN NOT NULL AFTER `method`');
|
51 |
+
} catch (Exception $e) {
|
52 |
+
// means col exists already
|
53 |
+
}
|
54 |
+
|
55 |
+
try {
|
56 |
+
$installer->getConnection()
|
57 |
+
->newTable($installer->getTable('optimal/merchant_customer'))
|
58 |
+
->addColumn('merchant_customer_id', Varien_Db_Ddl_Table::TYPE_INTEGER, NULL, array(
|
59 |
+
'identity' => TRUE,
|
60 |
+
'unsigned' => TRUE,
|
61 |
+
'nullable' => FALSE,
|
62 |
+
'primary' => TRUE,
|
63 |
+
), 'Merchant Customer ID')
|
64 |
+
->addColumn('customer_id', Varien_Db_Ddl_Table::TYPE_INTEGER, NULL, array(
|
65 |
+
'unsigned' => TRUE,
|
66 |
+
'nullable' => FALSE,
|
67 |
+
'primary' => TRUE
|
68 |
+
), 'Customer ID');
|
69 |
+
} catch (Exception $e) {
|
70 |
+
// means table exists already
|
71 |
+
}
|
72 |
|
73 |
$installer->endSetup();
|
app/code/community/Demac/Optimal/sql/optimal_setup/upgrade-0.4.1-0.4.2.php
CHANGED
@@ -4,9 +4,70 @@ $installer = $this;
|
|
4 |
|
5 |
$installer->startSetup();
|
6 |
|
7 |
-
$
|
8 |
-
|
9 |
-
|
10 |
-
");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
12 |
$installer->endSetup();
|
4 |
|
5 |
$installer->startSetup();
|
6 |
|
7 |
+
$addCol = false;
|
8 |
+
|
9 |
+
try {
|
10 |
+
$installer->run("ALTER TABLE `{$installer->getTable('sales_flat_quote_payment')}` MODIFY `optimal_profile_id` VARCHAR(255) NOT NULL DEFAULT \"\" AFTER `method`;");
|
11 |
+
} catch (Exception $e) {
|
12 |
+
$msg = strtolower($e->getMessage());
|
13 |
+
if (strpos($msg, 'column not found') !== false) {
|
14 |
+
$addCol = true;
|
15 |
+
}
|
16 |
+
}
|
17 |
+
|
18 |
+
if ($addCol) {
|
19 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_quote_payment'),
|
20 |
+
'optimal_profile_id', 'VARCHAR(255) NOT NULL DEFAULT "" AFTER `method`');
|
21 |
+
}
|
22 |
+
|
23 |
+
$addCol = false;
|
24 |
+
|
25 |
+
try {
|
26 |
+
$installer->run("ALTER TABLE `{$installer->getTable('sales_flat_order_payment')}` MODIFY `optimal_profile_id` VARCHAR(255) NOT NULL DEFAULT \"\" AFTER `method`;");
|
27 |
+
} catch (Exception $e) {
|
28 |
+
$msg = strtolower($e->getMessage());
|
29 |
+
if (strpos($msg, 'column not found') !== false) {
|
30 |
+
$addCol = true;
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
if ($addCol) {
|
35 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_order_payment'),
|
36 |
+
'optimal_profile_id', 'VARCHAR(255) NOT NULL DEFAULT "" AFTER `method`');
|
37 |
+
}
|
38 |
+
|
39 |
+
$addCol = false;
|
40 |
+
|
41 |
+
try {
|
42 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_quote_payment'),
|
43 |
+
'optimal_create_profile', 'BOOLEAN NOT NULL AFTER `method`');
|
44 |
+
} catch (Exception $e) {
|
45 |
+
// means col exists already
|
46 |
+
}
|
47 |
+
|
48 |
+
try {
|
49 |
+
$installer->getConnection()->addColumn($installer->getTable('sales_flat_order_payment'),
|
50 |
+
'optimal_create_profile', 'BOOLEAN NOT NULL AFTER `method`');
|
51 |
+
} catch (Exception $e) {
|
52 |
+
// means col exists already
|
53 |
+
}
|
54 |
+
|
55 |
+
try {
|
56 |
+
$installer->getConnection()
|
57 |
+
->newTable($installer->getTable('optimal/merchant_customer'))
|
58 |
+
->addColumn('merchant_customer_id', Varien_Db_Ddl_Table::TYPE_INTEGER, NULL, array(
|
59 |
+
'identity' => TRUE,
|
60 |
+
'unsigned' => TRUE,
|
61 |
+
'nullable' => FALSE,
|
62 |
+
'primary' => TRUE,
|
63 |
+
), 'Merchant Customer ID')
|
64 |
+
->addColumn('customer_id', Varien_Db_Ddl_Table::TYPE_INTEGER, NULL, array(
|
65 |
+
'unsigned' => TRUE,
|
66 |
+
'nullable' => FALSE,
|
67 |
+
'primary' => TRUE
|
68 |
+
), 'Customer ID');
|
69 |
+
} catch (Exception $e) {
|
70 |
+
// means table exists already
|
71 |
+
}
|
72 |
|
73 |
$installer->endSetup();
|
app/design/frontend/base/default/template/optimal/form/creditcard.phtml
CHANGED
@@ -37,16 +37,16 @@ $profiles = $this->hasOptimalProfiles();
|
|
37 |
<?php if (!$skip3d): ?>
|
38 |
<ul class="form-list" id="payment_form_<?php echo $_code ?>" style="display:none;">
|
39 |
<li>You will be redirected to Optimal Payments for payment authorisation. <?php echo $allowInterac ? 'Please choose mode of payment below.' : ''; ?></li>
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
</ul>
|
51 |
|
52 |
<script type="text/javascript">
|
@@ -59,340 +59,345 @@ $profiles = $this->hasOptimalProfiles();
|
|
59 |
});
|
60 |
</script>
|
61 |
|
62 |
-
<?php return; endif; ?>
|
63 |
|
64 |
<div id="optimal-cc-forms">
|
65 |
|
66 |
-
<?php if ($allowInterac): ?>
|
67 |
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
|
|
|
|
90 |
});
|
91 |
-
$('opt-use-interac').disabled = false;
|
92 |
-
});
|
93 |
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
|
101 |
-
|
102 |
|
103 |
-
|
104 |
|
105 |
-
|
106 |
|
107 |
-
|
108 |
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
|
119 |
-
|
120 |
showProfilesSelector();
|
121 |
-
|
122 |
|
123 |
-
|
124 |
-
|
125 |
|
126 |
-
|
127 |
|
128 |
-
|
129 |
hideProfilesSelector();
|
130 |
-
|
131 |
-
|
132 |
-
hideFormCombo();
|
133 |
-
}
|
134 |
-
});
|
135 |
-
|
136 |
-
function showProfilesSelector() {
|
137 |
-
$('optimal-save-profiles').show();
|
138 |
-
$$('#optimal-save-profiles select, #optimal-save-profiles input').each(function(element) {
|
139 |
-
element.disabled = false;
|
140 |
-
});
|
141 |
-
}
|
142 |
-
|
143 |
-
function showFormCombo() {
|
144 |
-
$('optimal-form-combinations').show();
|
145 |
-
$$('#optimal-form-combinations input, #optimal-form-combinations select').each(function(element) {
|
146 |
-
element.disabled = false;
|
147 |
-
});
|
148 |
-
}
|
149 |
-
|
150 |
-
function hideProfilesSelector() {
|
151 |
-
$('optimal-save-profiles').hide();
|
152 |
-
$$('#optimal-save-profiles select, #optimal-save-profiles input').each(function(element) {
|
153 |
-
element.disabled = true;
|
154 |
-
});
|
155 |
-
}
|
156 |
|
157 |
-
|
158 |
-
|
159 |
-
$$('#optimal-form-combinations input, #optimal-form-combinations select').each(function(element) {
|
160 |
-
element.disabled = true;
|
161 |
});
|
162 |
-
}
|
163 |
-
</script>
|
164 |
-
|
165 |
-
<?php else: ?>
|
166 |
-
|
167 |
-
<script type="text/javascript">
|
168 |
-
$$('input[name=payment[method]]').invoke('on', 'click', function() {
|
169 |
-
|
170 |
-
if (this.value == '<?php echo $_code; ?>') {
|
171 |
-
|
172 |
-
$('optimal-form-combinations').show();
|
173 |
-
|
174 |
-
<?php if ($profilesEnabled): ?>
|
175 |
|
|
|
176 |
$('optimal-save-profiles').show();
|
177 |
-
$$('#optimal-save-profiles
|
178 |
element.disabled = false;
|
179 |
});
|
|
|
180 |
|
181 |
-
|
|
|
|
|
|
|
|
|
182 |
|
183 |
-
|
|
|
184 |
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
185 |
-
element.disabled =
|
186 |
});
|
|
|
187 |
|
188 |
-
|
189 |
|
190 |
-
|
|
|
|
|
|
|
|
|
|
|
191 |
|
|
|
192 |
$('optimal-form-combinations').hide();
|
193 |
-
|
194 |
-
<?php if (!$profilesEnabled): ?>
|
195 |
-
|
196 |
-
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
197 |
element.disabled = true;
|
198 |
});
|
199 |
-
|
200 |
-
<?php endif; ?>
|
201 |
}
|
202 |
-
|
203 |
-
</script>
|
204 |
|
|
|
205 |
|
206 |
-
|
|
|
207 |
|
208 |
-
|
209 |
|
210 |
-
|
211 |
|
212 |
-
|
213 |
-
<ul class="profile_list form-list" id="optimal-save-profiles" style="display:none;">
|
214 |
-
<li class="wide">
|
215 |
-
<label for="<?php echo $_code ?>_profile_id"><?php echo $this->__('Select a Credit Card Profile.') ?></label>
|
216 |
-
<div class="input-box">
|
217 |
-
<select class="<?php echo $_code ?>_profile_id" id="<?php echo $_code ?>_profile_id" name="payment[profile_id]">
|
218 |
|
219 |
-
|
|
|
|
|
|
|
220 |
|
221 |
-
|
222 |
-
<option selected="" value="<?php echo $profile->getEntityId(); ?>"><?php echo ucwords($profile->getCardNickname()); ?> / **** **** **** <?php echo $profile->getLastFourDigits(); ?></option>
|
223 |
-
<?php endforeach; ?>
|
224 |
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
<li id="optimal-cc-verification">
|
230 |
-
<label class="<?php echo $_code ?>_cc_cid" for="<?php echo $_code ?>_cc_cid" class="required"><em>*</em><?php echo $this->__('Card Verification Number') ?></label>
|
231 |
-
<div class="input-box">
|
232 |
-
<div class="v-fix">
|
233 |
-
<input type="text" title="<?php echo $this->__('Card Verification Number') ?>" class="input-text cvv required-entry" id="<?php echo $_code ?>_cc_cid" name="payment[cc_cid]" value="" />
|
234 |
-
</div>
|
235 |
-
</div>
|
236 |
-
</li>
|
237 |
-
</ul>
|
238 |
-
</div>
|
239 |
|
240 |
-
|
241 |
-
function showOptimalCcForm() {
|
242 |
-
$('<?php echo $_code; ?>_cc-payment-form').show();
|
243 |
-
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
244 |
-
element.disabled = false;
|
245 |
-
});
|
246 |
-
}
|
247 |
-
function hideOptimalCcForm() {
|
248 |
-
$('<?php echo $_code; ?>_cc-payment-form').hide();
|
249 |
-
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
250 |
-
element.disabled = true;
|
251 |
-
});
|
252 |
-
}
|
253 |
|
254 |
-
$('<?php echo $_code ?>_profile_id').on('change', function() {
|
255 |
-
if (this.value == 'new') {
|
256 |
-
$('optimal-cc-verification').hide();
|
257 |
-
$$('#optimal-cc-verification input, #optimal-cc-verification select').each(function (element) {
|
258 |
-
element.disabled = true;
|
259 |
-
});
|
260 |
-
showOptimalCcForm();
|
261 |
-
}else if (this.value == 'select') {
|
262 |
-
//
|
263 |
} else {
|
264 |
-
|
265 |
-
$('optimal-
|
266 |
-
|
267 |
-
|
|
|
|
|
|
|
268 |
});
|
|
|
|
|
269 |
}
|
270 |
});
|
271 |
</script>
|
272 |
|
|
|
273 |
<?php endif; ?>
|
274 |
|
275 |
-
<div id="
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
311 |
</div>
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
|
|
|
|
|
|
|
|
317 |
<?php endforeach ?>
|
318 |
</select>
|
319 |
</div>
|
320 |
-
</
|
321 |
-
|
322 |
-
|
323 |
-
|
|
|
|
|
|
|
324 |
<li>
|
325 |
-
<label for="<?php echo $_code ?>
|
326 |
<div class="input-box">
|
327 |
<div class="v-fix">
|
328 |
-
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
329 |
</div>
|
330 |
</div>
|
331 |
</li>
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
<
|
346 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
347 |
<span class="input-box">
|
348 |
<input type="text" title="<?php echo $this->__('Issue Number') ?>" class="input-text validate-cc-ukss cvv" id="<?php echo $_code ?>_cc_issue" name="payment[cc_ss_issue]" value="" />
|
349 |
</span>
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
|
|
368 |
</div>
|
369 |
-
</
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
}
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
</
|
388 |
-
|
389 |
-
|
390 |
-
</
|
391 |
</div>
|
392 |
-
</div>
|
393 |
|
394 |
</div>
|
395 |
-
|
396 |
-
<script type="text/javascript">
|
397 |
-
|
398 |
-
</script>
|
37 |
<?php if (!$skip3d): ?>
|
38 |
<ul class="form-list" id="payment_form_<?php echo $_code ?>" style="display:none;">
|
39 |
<li>You will be redirected to Optimal Payments for payment authorisation. <?php echo $allowInterac ? 'Please choose mode of payment below.' : ''; ?></li>
|
40 |
+
<?php if ($allowInterac): ?>
|
41 |
+
<li class="control">
|
42 |
+
<input id="optimal-pay-via-interac" type="radio" title="<?php echo $this->__('Pay via Interac') ?>" class="radio optimal-pay-via validate-one-required-by-name" value="1" name="payment[optimal_use_interac]">
|
43 |
+
<label for="optimal-pay-via-interac"><?php echo $this->__('Pay via Interac') ?> </label>
|
44 |
+
</li>
|
45 |
+
<li class="control">
|
46 |
+
<input id="optimal-pay-via-cc" type="radio" title="<?php echo $this->__('Pay using Credit Card') ?>" class="radio optimal-pay-via validate-one-required-by-name" value="0" name="payment[optimal_use_interac]">
|
47 |
+
<label for="optimal-pay-via-cc"><?php echo $this->__('Pay using Credit Card') ?> </label>
|
48 |
+
</li>
|
49 |
+
<?php endif; ?>
|
50 |
</ul>
|
51 |
|
52 |
<script type="text/javascript">
|
59 |
});
|
60 |
</script>
|
61 |
|
62 |
+
<?php return; endif; ?>
|
63 |
|
64 |
<div id="optimal-cc-forms">
|
65 |
|
66 |
+
<?php if ($allowInterac): ?>
|
67 |
|
68 |
+
<ul class="form-list" id="optimal-form-controls" style="display:none;">
|
69 |
+
<li class="control">
|
70 |
+
<input id="optimal-pay-via-interac" type="checkbox" title="<?php echo $this->__('Use Interac') ?>" class="radio optimal-pay-via" value="interac" name="optimal-pay-via">
|
71 |
+
<label for="optimal-pay-via-interac"><?php echo $this->__('Use Interac') ?> </label>
|
72 |
+
<input type="hidden" value="0" name="payment[optimal_use_interac]" id="opt-use-interac" />
|
73 |
+
</li>
|
74 |
+
<li id="interac-msg" style="display:none;">
|
75 |
+
<ul class="form-list">
|
76 |
+
<li><?php echo $this->__('This will redirect you to Optimal Hosted Payments page where you can complete your payment via Interac.'); ?></li>
|
77 |
+
</ul>
|
78 |
+
</li>
|
79 |
+
<li class="control">
|
80 |
+
<input id="optimal-pay-via-cc" type="checkbox" title="<?php echo $this->__('Pay Via Credit Card') ?>" class="radio optimal-pay-via" value="creditcard" name="optimal-pay-via">
|
81 |
+
<label for="optimal-pay-via-cc"><?php echo $this->__('Pay Via Credit Card') ?> </label>
|
82 |
+
</li>
|
83 |
+
</ul>
|
84 |
|
85 |
+
<script type="text/javascript">
|
86 |
+
$('p_method_<?php echo $_code; ?>').on('click', function() {
|
87 |
+
$('optimal-form-controls').show();
|
88 |
+
$$('input[name=optimal-pay-via]').each(function(element){
|
89 |
+
element.disabled = false;
|
90 |
+
});
|
91 |
+
$('opt-use-interac').disabled = false;
|
92 |
});
|
|
|
|
|
93 |
|
94 |
+
$$('input[name=optimal-pay-via]').invoke('on', 'click', function() {
|
95 |
+
if (this.value == 'interac') {
|
96 |
+
if (this.checked == true) {
|
97 |
+
$('interac-msg').show();
|
98 |
+
$('optimal-pay-via-cc').checked = false;
|
99 |
+
$('opt-use-interac').value = 1;
|
100 |
|
101 |
+
<?php if ($profilesEnabled): ?>
|
102 |
|
103 |
+
hideProfilesSelector();
|
104 |
|
105 |
+
<?php endif; ?>
|
106 |
|
107 |
+
hideFormCombo();
|
108 |
|
109 |
+
} else {
|
110 |
+
$('interac-msg').hide();
|
111 |
+
$('opt-use-interac').value = 0;
|
112 |
+
}
|
113 |
+
} else if (this.value == 'creditcard') {
|
114 |
+
if (this.checked == true) {
|
115 |
+
$('interac-msg').hide();
|
116 |
+
$('opt-use-interac').value = 0;
|
117 |
+
$('optimal-pay-via-interac').checked = false;
|
118 |
|
119 |
+
<?php if ($profilesEnabled): ?>
|
120 |
showProfilesSelector();
|
121 |
+
<?php endif; ?>
|
122 |
|
123 |
+
showFormCombo();
|
124 |
+
return;
|
125 |
|
126 |
+
}
|
127 |
|
128 |
+
<?php if ($profilesEnabled): ?>
|
129 |
hideProfilesSelector();
|
130 |
+
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
131 |
|
132 |
+
hideFormCombo();
|
133 |
+
}
|
|
|
|
|
134 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
135 |
|
136 |
+
function showProfilesSelector() {
|
137 |
$('optimal-save-profiles').show();
|
138 |
+
$$('#optimal-save-profiles select, #optimal-save-profiles input').each(function(element) {
|
139 |
element.disabled = false;
|
140 |
});
|
141 |
+
}
|
142 |
|
143 |
+
function showFormCombo() {
|
144 |
+
$('optimal-form-combinations').show();
|
145 |
+
$$('#optimal-form-combinations input, #optimal-form-combinations select').each(function(element) {
|
146 |
+
element.disabled = false;
|
147 |
+
});
|
148 |
|
149 |
+
<?php if ($profilesEnabled && !empty($profilesEnabled)): ?>
|
150 |
+
$('<?php echo $_code; ?>_cc-payment-form').hide();
|
151 |
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
152 |
+
element.disabled = true;
|
153 |
});
|
154 |
+
<?php endif; ?>
|
155 |
|
156 |
+
}
|
157 |
|
158 |
+
function hideProfilesSelector() {
|
159 |
+
$('optimal-save-profiles').hide();
|
160 |
+
$$('#optimal-save-profiles select, #optimal-save-profiles input').each(function(element) {
|
161 |
+
element.disabled = true;
|
162 |
+
});
|
163 |
+
}
|
164 |
|
165 |
+
function hideFormCombo() {
|
166 |
$('optimal-form-combinations').hide();
|
167 |
+
$$('#optimal-form-combinations input, #optimal-form-combinations select').each(function(element) {
|
|
|
|
|
|
|
168 |
element.disabled = true;
|
169 |
});
|
|
|
|
|
170 |
}
|
171 |
+
</script>
|
|
|
172 |
|
173 |
+
<?php else: ?>
|
174 |
|
175 |
+
<script type="text/javascript">
|
176 |
+
$$('input[name=payment[method]]').invoke('on', 'click', function() {
|
177 |
|
178 |
+
if (this.value == '<?php echo $_code; ?>') {
|
179 |
|
180 |
+
$('optimal-form-combinations').show();
|
181 |
|
182 |
+
<?php if ($profilesEnabled): ?>
|
|
|
|
|
|
|
|
|
|
|
183 |
|
184 |
+
$('optimal-save-profiles').show();
|
185 |
+
$$('#optimal-save-profiles input, #optimal-save-profiles select').each(function(element) {
|
186 |
+
element.disabled = false;
|
187 |
+
});
|
188 |
|
189 |
+
<?php else: ?>
|
|
|
|
|
190 |
|
191 |
+
$('<?php echo $_code; ?>_cc-payment-form').show();
|
192 |
+
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
193 |
+
element.disabled = false;
|
194 |
+
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
|
196 |
+
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
198 |
} else {
|
199 |
+
|
200 |
+
$('optimal-form-combinations').hide();
|
201 |
+
|
202 |
+
<?php if (!$profilesEnabled): ?>
|
203 |
+
|
204 |
+
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
205 |
+
element.disabled = true;
|
206 |
});
|
207 |
+
|
208 |
+
<?php endif; ?>
|
209 |
}
|
210 |
});
|
211 |
</script>
|
212 |
|
213 |
+
|
214 |
<?php endif; ?>
|
215 |
|
216 |
+
<div id="optimal-form-combinations" style="display:none;">
|
217 |
+
|
218 |
+
<?php if ($profilesEnabled): ?>
|
219 |
+
|
220 |
+
<div id="select-card-form">
|
221 |
+
<ul class="profile_list form-list" id="optimal-save-profiles" style="display:none;">
|
222 |
+
<li class="wide">
|
223 |
+
<label for="<?php echo $_code ?>_profile_id"><?php echo $this->__('Select a Credit Card Profile.') ?></label>
|
224 |
+
<div class="input-box">
|
225 |
+
<select class="<?php echo $_code ?>_profile_id" id="<?php echo $_code ?>_profile_id" name="payment[profile_id]">
|
226 |
+
|
227 |
+
<option value="select"><?php echo $this->__('Select Profile') ?></option>
|
228 |
+
|
229 |
+
<?php foreach($this->profiles as $profile): ?>
|
230 |
+
<option selected="" value="<?php echo $profile->getEntityId(); ?>"><?php echo ucwords($profile->getCardNickname()); ?> / **** **** **** <?php echo $profile->getLastFourDigits(); ?></option>
|
231 |
+
<?php endforeach; ?>
|
232 |
+
|
233 |
+
<option value="new"><?php echo $this->__('New Profile') ?></option>
|
234 |
+
</select>
|
235 |
+
</div>
|
236 |
+
</li>
|
237 |
+
<li id="optimal-cc-verification">
|
238 |
+
<label class="<?php echo $_code ?>_cc_cid" for="<?php echo $_code ?>_cc_cid" class="required"><em>*</em><?php echo $this->__('Card Verification Number') ?></label>
|
239 |
+
<div class="input-box">
|
240 |
+
<div class="v-fix">
|
241 |
+
<input type="text" title="<?php echo $this->__('Card Verification Number') ?>" class="input-text cvv required-entry" id="<?php echo $_code ?>_cc_cid" name="payment[cc_cid]" value="" />
|
242 |
+
</div>
|
243 |
+
</div>
|
244 |
+
</li>
|
245 |
+
</ul>
|
246 |
+
</div>
|
247 |
+
|
248 |
+
<script type="text/javascript">
|
249 |
+
function showOptimalCcForm() {
|
250 |
+
$('<?php echo $_code; ?>_cc-payment-form').show();
|
251 |
+
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
252 |
+
element.disabled = false;
|
253 |
+
});
|
254 |
+
}
|
255 |
+
|
256 |
+
function hideOptimalCcForm() {
|
257 |
+
$('<?php echo $_code; ?>_cc-payment-form').hide();
|
258 |
+
$$('#<?php echo $_code; ?>_cc-payment-form input, #<?php echo $_code; ?>_cc-payment-form select').each(function(element) {
|
259 |
+
element.disabled = true;
|
260 |
+
});
|
261 |
+
}
|
262 |
+
|
263 |
+
$('<?php echo $_code ?>_profile_id').on('change', function() {
|
264 |
+
if (this.value == 'new') {
|
265 |
+
$('optimal-cc-verification').hide();
|
266 |
+
$$('#optimal-cc-verification input, #optimal-cc-verification select').each(function (element) {
|
267 |
+
element.disabled = true;
|
268 |
+
});
|
269 |
+
showOptimalCcForm();
|
270 |
+
}else if (this.value == 'select') {
|
271 |
+
//
|
272 |
+
} else {
|
273 |
+
hideOptimalCcForm();
|
274 |
+
$('optimal-cc-verification').show();
|
275 |
+
$$('#optimal-cc-verification input, #optimal-cc-verification select').each(function(element) {
|
276 |
+
element.disabled = false;
|
277 |
+
});
|
278 |
+
}
|
279 |
+
});
|
280 |
+
</script>
|
281 |
+
|
282 |
+
<?php endif; ?>
|
283 |
+
|
284 |
+
<div id="<?php echo $_code; ?>_cc-payment-form" style="<?php echo $profilesEnabled ? 'display:none;' : ''; ?>">
|
285 |
+
<ul class="form-list">
|
286 |
+
<li>
|
287 |
+
<label for="<?php echo $_code ?>_cc_owner" class="required"><em>*</em><?php echo $this->__('Name on Card') ?></label>
|
288 |
+
<div class="input-box">
|
289 |
+
<input type="text" title="<?php echo $this->__('Name on Card') ?>" class="input-text required-entry" id="<?php echo $_code ?>_cc_owner" name="payment[cc_owner]" value="<?php echo $this->escapeHtml($this->getInfoData('cc_owner')) ?>" />
|
290 |
</div>
|
291 |
+
</li>
|
292 |
+
<li>
|
293 |
+
<label for="<?php echo $_code ?>_cc_type" class="required"><em>*</em><?php echo $this->__('Credit Card Type') ?></label>
|
294 |
+
<div class="input-box">
|
295 |
+
<select id="<?php echo $_code ?>_cc_type" name="payment[cc_type]" title="<?php echo $this->__('Credit Card Type') ?>" class="required-entry validate-cc-type-select">
|
296 |
+
<option value=""><?php echo $this->__('--Please Select--') ?></option>
|
297 |
+
<?php $_ccType = $this->getInfoData('cc_type') ?>
|
298 |
+
<?php foreach ($this->getCcAvailableTypes() as $_typeCode => $_typeName): ?>
|
299 |
+
<option value="<?php echo $_typeCode ?>"<?php if($_typeCode==$_ccType): ?> selected="selected"<?php endif ?>><?php echo $_typeName ?></option>
|
300 |
<?php endforeach ?>
|
301 |
</select>
|
302 |
</div>
|
303 |
+
</li>
|
304 |
+
<li>
|
305 |
+
<label for="<?php echo $_code ?>_cc_number" class="required"><em>*</em><?php echo $this->__('Credit Card Number') ?></label>
|
306 |
+
<div class="input-box">
|
307 |
+
<input type="text" id="<?php echo $_code ?>_cc_number" name="payment[cc_number]" title="<?php echo $this->__('Credit Card Number') ?>" class="input-text validate-cc-number validate-cc-type" value="" />
|
308 |
+
</div>
|
309 |
+
</li>
|
310 |
<li>
|
311 |
+
<label for="<?php echo $_code ?>_expiration" class="required"><em>*</em><?php echo $this->__('Expiration Date') ?></label>
|
312 |
<div class="input-box">
|
313 |
<div class="v-fix">
|
314 |
+
<select id="<?php echo $_code ?>_expiration" name="payment[cc_exp_month]" class="month validate-cc-exp required-entry">
|
315 |
+
<?php $_ccExpMonth = $this->getInfoData('cc_exp_month') ?>
|
316 |
+
<?php foreach ($this->getCcMonths() as $k=>$v): ?>
|
317 |
+
<option value="<?php echo $k?$k:'' ?>"<?php if($k==$_ccExpMonth): ?> selected="selected"<?php endif ?>><?php echo $v ?></option>
|
318 |
+
<?php endforeach ?>
|
319 |
+
</select>
|
320 |
+
</div>
|
321 |
+
<div class="v-fix">
|
322 |
+
<?php $_ccExpYear = $this->getInfoData('cc_exp_year') ?>
|
323 |
+
<select id="<?php echo $_code ?>_expiration_yr" name="payment[cc_exp_year]" class="year required-entry">
|
324 |
+
<?php foreach ($this->getCcYears() as $k=>$v): ?>
|
325 |
+
<option value="<?php echo $k?$k:'' ?>"<?php if($k==$_ccExpYear): ?> selected="selected"<?php endif ?>><?php echo $v ?></option>
|
326 |
+
<?php endforeach ?>
|
327 |
+
</select>
|
328 |
</div>
|
329 |
</div>
|
330 |
</li>
|
331 |
+
<?php echo $this->getChildHtml() ?>
|
332 |
+
<?php if($this->hasVerification()): ?>
|
333 |
+
<li>
|
334 |
+
<label for="<?php echo $_code ?>_cc_cid" class="required"><em>*</em><?php echo $this->__('Card Verification Number') ?></label>
|
335 |
+
<div class="input-box">
|
336 |
+
<div class="v-fix">
|
337 |
+
<input type="text" title="<?php echo $this->__('Card Verification Number') ?>" class="input-text cvv required-entry validate-cc-cvn" id="<?php echo $_code ?>_cc_cid" name="payment[cc_cid]" value="" />
|
338 |
+
</div>
|
339 |
+
</div>
|
340 |
+
</li>
|
341 |
+
<?php endif; ?>
|
342 |
+
<?php if($this->canSaveProfiles()): ?>
|
343 |
+
<li class="control">
|
344 |
+
<input type="checkbox" title="<?php echo $this->__('Create Profile and Save Card') ?>" class="radio" value="1" id="<?php echo $_code ?>_optimal_create_profile" name="payment[optimal_create_profile]">
|
345 |
+
<label for="<?php echo $_code ?>_optimal_create_profile" class="required"><em>*</em><?php echo $this->__('Create Profile and Save Card') ?> </label>
|
346 |
+
</li>
|
347 |
+
<?php else: ?>
|
348 |
+
<input type="hidden" title="<?php echo $this->__('Create Profile and Save Card') ?>" class="radio" value="0" id="<?php echo $_code ?>_create_profile" name="payment[optimal_create_profile]">
|
349 |
+
<?php endif; ?>
|
350 |
+
<?php if ($this->hasSsCardType()): ?>
|
351 |
+
<li id="<?php echo $_code ?>_cc_type_ss_div">
|
352 |
+
<ul class="inner-form">
|
353 |
+
<li class="form-alt"><label for="<?php echo $_code ?>_cc_issue" class="required"><em>*</em><?php echo $this->__('Switch/Solo/Maestro Only') ?></label></li>
|
354 |
+
<li>
|
355 |
+
<label for="<?php echo $_code ?>_cc_issue"><?php echo $this->__('Issue Number') ?>:</label>
|
356 |
<span class="input-box">
|
357 |
<input type="text" title="<?php echo $this->__('Issue Number') ?>" class="input-text validate-cc-ukss cvv" id="<?php echo $_code ?>_cc_issue" name="payment[cc_ss_issue]" value="" />
|
358 |
</span>
|
359 |
+
</li>
|
360 |
+
|
361 |
+
<li>
|
362 |
+
<label for="<?php echo $_code ?>_start_month"><?php echo $this->__('Start Date') ?>:</label>
|
363 |
+
<div class="input-box">
|
364 |
+
<div class="v-fix">
|
365 |
+
<select id="<?php echo $_code ?>_start_month" name="payment[cc_ss_start_month]" class="validate-cc-ukss month">
|
366 |
+
<?php foreach ($this->getCcMonths() as $k=>$v): ?>
|
367 |
+
<option value="<?php echo $k?$k:'' ?>"<?php if($k==$this->getInfoData('cc_ss_start_month')): ?> selected="selected"<?php endif ?>><?php echo $v ?></option>
|
368 |
+
<?php endforeach ?>
|
369 |
+
</select>
|
370 |
+
</div>
|
371 |
+
<div class="v-fix">
|
372 |
+
<select id="<?php echo $_code ?>_start_year" name="payment[cc_ss_start_year]" class="validate-cc-ukss year">
|
373 |
+
<?php foreach ($this->getSsStartYears() as $k=>$v): ?>
|
374 |
+
<option value="<?php echo $k?$k:'' ?>"<?php if($k==$this->getInfoData('cc_ss_start_year')): ?> selected="selected"<?php endif ?>><?php echo $v ?></option>
|
375 |
+
<?php endforeach ?>
|
376 |
+
</select>
|
377 |
+
</div>
|
378 |
</div>
|
379 |
+
</li>
|
380 |
+
<li class="adv-container"> </li>
|
381 |
+
</ul>
|
382 |
+
<script type="text/javascript">
|
383 |
+
//<![CDATA[
|
384 |
+
var SSChecked<?php echo $_code ?> = function() {
|
385 |
+
var elm = $('<?php echo $_code ?>_cc_type');
|
386 |
+
if (['SS','SM','SO'].indexOf(elm.value) != -1) {
|
387 |
+
$('<?php echo $_code ?>_cc_type_ss_div').show();
|
388 |
+
} else {
|
389 |
+
$('<?php echo $_code ?>_cc_type_ss_div').hide();
|
390 |
+
}
|
391 |
+
};
|
392 |
+
|
393 |
+
Event.observe($('<?php echo $_code ?>_cc_type'), 'change', SSChecked<?php echo $_code ?>);
|
394 |
+
SSChecked<?php echo $_code ?>();
|
395 |
+
//]]>
|
396 |
+
</script>
|
397 |
+
</li>
|
398 |
+
<?php endif; ?>
|
399 |
+
</ul>
|
400 |
+
</div>
|
401 |
</div>
|
|
|
402 |
|
403 |
</div>
|
|
|
|
|
|
|
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>666999</name>
|
4 |
-
<version>0.4.
|
5 |
<stability>stable</stability>
|
6 |
<license>GPL</license>
|
7 |
<channel>community</channel>
|
@@ -16,9 +16,9 @@ This integration significantly reduces PCI compliance requirements and liability
|
|
16 |
Through the Optimal integration merchants also have the option to enable Threatmetrix fraud detection and management services. ThreatMetrix works by collecting relevant data about the customer and the order, and validating this information during the checkout. Fully integrated into the NETBANX payment gateway, enabling the ThreatMetrix option will allow merchants to automatically hold and flag suspicious orders, drastically reducing any fraud occurrences. Depending on the Score returned by ThreatMetrix an order can be held and flagged or altogether denied during the checkout.</description>
|
17 |
<notes>Implements Interac payments feature.</notes>
|
18 |
<authors><author><name>Demac Media</name><user>demacmedia</user><email>support@demacmedia.com</email></author></authors>
|
19 |
-
<date>2015-07-
|
20 |
-
<time>
|
21 |
-
<contents><target name="magecommunity"><dir name="Demac"><dir name="Optimal"><dir name="Block"><dir name="Adminhtml"><dir name="Errorcode"><dir name="Edit"><file name="Form.php" hash="56618ff0cc5f4c674f750412d0606aab"/></dir><file name="Edit.php" hash="8980988ca1324fac229b40f471d745c8"/><file name="Grid.php" hash="2d8ea2f836d380167e9b25a67acefd70"/></dir><file name="Errorcode.php" hash="9f0d3c6b0b51e3bedd239d3b727eff75"/><dir name="Risk"><dir name="Edit"><file name="Form.php" hash="25d4bcb59e33a94799bc9f6cb0509cc3"/><dir name="Tab"><file name="Form.php" hash="3731d284c28ed279eb5e00b41f494810"/></dir><file name="Tabs.php" hash="61a8d2ac9942356db313b423fc3c47c2"/></dir><file name="Edit.php" hash="959e8af1e6aae6d02560c98bcabea5ab"/><file name="Grid.php" hash="e999f01578aac6084520029f86852c09"/></dir><file name="Risk.php" hash="6bf5127ba14f9dd38519c6b62203f1f8"/></dir><dir name="Customer"><dir name="Cards"><file name="Form.php" hash="ce79e221d5caf995a10e47cbb4e51f8b"/><file name="Grid.php" hash="d14eb692082fe1299977e7b3ee75dcf3"/></dir><file name="Cards.php" hash="f99686c2296a850312713f6aadc4d04a"/></dir><dir name="Form"><file name="Creditcard.php" hash="f2105aace1d71c8b0f417a78b919aab1"/></dir><dir name="Info"><file name="Creditcard.php" hash="7ba1df22bade177f4956ce9084fa98c6"/></dir><file name="Navigation.php" hash="d3b7d8765356b8da18d300cc9b1a447e"/><file name="Threat.php" hash="69605e0b8aacc80f47b5ed91e8631248"/></dir><dir name="Helper"><file name="Data.php" hash="be368ef5a0ab684fc31a29dd4aac8c9e"/></dir><dir name="Model"><dir name="Client"><file name="Abstract.php" hash="f83275be8d3b248eb145d45c2a926d84"/></dir><dir name="Config"><file name="Mode.php" hash="798d2a9bab2c0fc2749116ac1a3fc926"/><file name="Status.php" hash="767ba25406456aae4a0bd86b11023b45"/><file name="Transaction.php" hash="e83e8427e4b14c4d3cd83058c68f8965"/></dir><dir name="Creditcard"><file name="Client.php" hash="f1014811d23c1cf5efbccf61c3c6c80c"/></dir><file name="Creditcard.php" hash="7fc5fd2c06ddf2dfb63b3b30450b2316"/><file name="Errorcode.php" hash="dae5fa1abb705961bd9f15abf3d65ec0"/><dir name="Hosted"><file name="Client.php" hash="00b2f596614a9a2881e522a356fdc947"/><file name="Exception.php" hash="dfca385bc45b1c055bbf2e8e7031230b"/></dir><dir name="Merchant"><file name="Customer.php" hash="be743a5c7aababb9752bf961570b0c27"/></dir><dir name="Method"><file name="Hosted.php" hash="6135da66e687ca0071f0bdd0376ad981"/></dir><dir name="Mysql4"><dir name="Creditcard"><file name="Collection.php" hash="700985c287355082a3966d4b3f74838f"/></dir><file name="Creditcard.php" hash="a4e5ea4090d2f127edd19de9d2feb343"/><dir name="Errorcode"><file name="Collection.php" hash="075c7c98b606573f02aad1b096f13899"/></dir><file name="Errorcode.php" hash="0d19835b405402a5a5a7ae7c24a42c97"/><dir name="Merchant"><dir name="Customer"><file name="Collection.php" hash="aa0fbf9c0cc0a3207565443e35ae3779"/></dir><file name="Customer.php" hash="fe991d98537b7b3a07160d5b9b10802d"/></dir><dir name="Profile"><file name="Collection.php" hash="f5cd814fe62d2af8fbcc2214f94bfeb4"/></dir><file name="Profile.php" hash="6944c811248ef955a51357989ca11dd3"/><dir name="Risk"><file name="Collection.php" hash="558dc26690672dc09ae6fbfa8e780302"/></dir><file name="Risk.php" hash="5c77111382678451da4dde209a43b0fa"/></dir><file name="Observer.php" hash="ce11ba1751b4fb6c6ddf551adca02b4d"/><dir name="Profile"><file name="Client.php" hash="4358736ced5bdc7d2a7fbbf53e2ff07d"/></dir><file name="Profile.php" hash="798cef09bbc0556545edf1f00bae9bf0"/><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="e936830d9e4f74badc3b7663f60436dc"/></dir></dir><file name="Risk.php" hash="fab5519b0e257b8ef2f66f5f76d49f2b"/><dir name="Sales"><file name="Order.php" hash="32320888ae209b1ea3208da59312da5c"/></dir><dir name="Source"><file name="Cctype.php" hash="dd21379a29444a4c58e33e90ddeb300e"/></dir><dir name="Web"><file name="Client.php" hash="d565e254fc281e7c246cc9cfe8c2f39d"/></dir></dir><dir name="Test"><dir name="Model"><dir name="Hosted"><file name="Client.php" hash="8aa8bb4bc740daa59be041827f7cf614"/></dir><dir name="Method"><file name="Hosted.php" hash="9d39c78d0617d136c66c4c52185706a7"/></dir><file name="Observer.php" hash="345883a098197f64e2063a97d17e6274"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ErrorcodesController.php" hash="7149f83536e46413ddf5b159ae4ebf91"/><file name="ThreatController.php" hash="5db39713fbd0ae13e943a891940bb22c"/></dir><dir name="Frontend"><file name="OptimalController.php" hash="3b7c37744a48f2babb5c5e6ffe1f563e"/></dir><file name="HandlerController.php" hash="2308d08c79fae424d5ae04ea273595c7"/></dir><dir name="data"><dir name="optimal_setup"><dir name="csv"><file name="common-codes-0.3.3.csv" hash="e3c9195dbe01cfb5cf341378271b1240"/><file name="webservices-codes-0.3.3.csv" hash="8fc5562ff9bb3e5c3235fa6c7c21c0d5"/></dir><file name="data-upgrade-0.3.4-0.3.5.php" hash="4afe267d997446c46c0a1fcba771d1e1"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="30a4af4a510783219bbee940d185fb19"/><file name="config.xml" hash="
|
22 |
<compatible/>
|
23 |
<dependencies><required><php><min>5.3.0</min><max>5.5.19</max></php></required></dependencies>
|
24 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>666999</name>
|
4 |
+
<version>0.4.5</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>GPL</license>
|
7 |
<channel>community</channel>
|
16 |
Through the Optimal integration merchants also have the option to enable Threatmetrix fraud detection and management services. ThreatMetrix works by collecting relevant data about the customer and the order, and validating this information during the checkout. Fully integrated into the NETBANX payment gateway, enabling the ThreatMetrix option will allow merchants to automatically hold and flag suspicious orders, drastically reducing any fraud occurrences. Depending on the Score returned by ThreatMetrix an order can be held and flagged or altogether denied during the checkout.</description>
|
17 |
<notes>Implements Interac payments feature.</notes>
|
18 |
<authors><author><name>Demac Media</name><user>demacmedia</user><email>support@demacmedia.com</email></author></authors>
|
19 |
+
<date>2015-07-22</date>
|
20 |
+
<time>17:17:29</time>
|
21 |
+
<contents><target name="magecommunity"><dir name="Demac"><dir name="Optimal"><dir name="Block"><dir name="Adminhtml"><dir name="Errorcode"><dir name="Edit"><file name="Form.php" hash="56618ff0cc5f4c674f750412d0606aab"/></dir><file name="Edit.php" hash="8980988ca1324fac229b40f471d745c8"/><file name="Grid.php" hash="2d8ea2f836d380167e9b25a67acefd70"/></dir><file name="Errorcode.php" hash="9f0d3c6b0b51e3bedd239d3b727eff75"/><dir name="Risk"><dir name="Edit"><file name="Form.php" hash="25d4bcb59e33a94799bc9f6cb0509cc3"/><dir name="Tab"><file name="Form.php" hash="3731d284c28ed279eb5e00b41f494810"/></dir><file name="Tabs.php" hash="61a8d2ac9942356db313b423fc3c47c2"/></dir><file name="Edit.php" hash="959e8af1e6aae6d02560c98bcabea5ab"/><file name="Grid.php" hash="e999f01578aac6084520029f86852c09"/></dir><file name="Risk.php" hash="6bf5127ba14f9dd38519c6b62203f1f8"/></dir><dir name="Customer"><dir name="Cards"><file name="Form.php" hash="ce79e221d5caf995a10e47cbb4e51f8b"/><file name="Grid.php" hash="d14eb692082fe1299977e7b3ee75dcf3"/></dir><file name="Cards.php" hash="f99686c2296a850312713f6aadc4d04a"/></dir><dir name="Form"><file name="Creditcard.php" hash="f2105aace1d71c8b0f417a78b919aab1"/></dir><dir name="Info"><file name="Creditcard.php" hash="7ba1df22bade177f4956ce9084fa98c6"/></dir><file name="Navigation.php" hash="d3b7d8765356b8da18d300cc9b1a447e"/><file name="Threat.php" hash="69605e0b8aacc80f47b5ed91e8631248"/></dir><dir name="Helper"><file name="Data.php" hash="be368ef5a0ab684fc31a29dd4aac8c9e"/></dir><dir name="Model"><dir name="Client"><file name="Abstract.php" hash="f83275be8d3b248eb145d45c2a926d84"/></dir><dir name="Config"><file name="Mode.php" hash="798d2a9bab2c0fc2749116ac1a3fc926"/><file name="Status.php" hash="767ba25406456aae4a0bd86b11023b45"/><file name="Transaction.php" hash="e83e8427e4b14c4d3cd83058c68f8965"/></dir><dir name="Creditcard"><file name="Client.php" hash="f1014811d23c1cf5efbccf61c3c6c80c"/></dir><file name="Creditcard.php" hash="7fc5fd2c06ddf2dfb63b3b30450b2316"/><file name="Errorcode.php" hash="dae5fa1abb705961bd9f15abf3d65ec0"/><dir name="Hosted"><file name="Client.php" hash="00b2f596614a9a2881e522a356fdc947"/><file name="Exception.php" hash="dfca385bc45b1c055bbf2e8e7031230b"/></dir><dir name="Merchant"><file name="Customer.php" hash="be743a5c7aababb9752bf961570b0c27"/></dir><dir name="Method"><file name="Hosted.php" hash="6135da66e687ca0071f0bdd0376ad981"/></dir><dir name="Mysql4"><dir name="Creditcard"><file name="Collection.php" hash="700985c287355082a3966d4b3f74838f"/></dir><file name="Creditcard.php" hash="a4e5ea4090d2f127edd19de9d2feb343"/><dir name="Errorcode"><file name="Collection.php" hash="075c7c98b606573f02aad1b096f13899"/></dir><file name="Errorcode.php" hash="0d19835b405402a5a5a7ae7c24a42c97"/><dir name="Merchant"><dir name="Customer"><file name="Collection.php" hash="aa0fbf9c0cc0a3207565443e35ae3779"/></dir><file name="Customer.php" hash="fe991d98537b7b3a07160d5b9b10802d"/></dir><dir name="Profile"><file name="Collection.php" hash="f5cd814fe62d2af8fbcc2214f94bfeb4"/></dir><file name="Profile.php" hash="6944c811248ef955a51357989ca11dd3"/><dir name="Risk"><file name="Collection.php" hash="558dc26690672dc09ae6fbfa8e780302"/></dir><file name="Risk.php" hash="5c77111382678451da4dde209a43b0fa"/></dir><file name="Observer.php" hash="ce11ba1751b4fb6c6ddf551adca02b4d"/><dir name="Profile"><file name="Client.php" hash="4358736ced5bdc7d2a7fbbf53e2ff07d"/></dir><file name="Profile.php" hash="798cef09bbc0556545edf1f00bae9bf0"/><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="e936830d9e4f74badc3b7663f60436dc"/></dir></dir><file name="Risk.php" hash="fab5519b0e257b8ef2f66f5f76d49f2b"/><dir name="Sales"><file name="Order.php" hash="32320888ae209b1ea3208da59312da5c"/></dir><dir name="Source"><file name="Cctype.php" hash="dd21379a29444a4c58e33e90ddeb300e"/></dir><dir name="Web"><file name="Client.php" hash="d565e254fc281e7c246cc9cfe8c2f39d"/></dir></dir><dir name="Test"><dir name="Model"><dir name="Hosted"><file name="Client.php" hash="8aa8bb4bc740daa59be041827f7cf614"/></dir><dir name="Method"><file name="Hosted.php" hash="9d39c78d0617d136c66c4c52185706a7"/></dir><file name="Observer.php" hash="345883a098197f64e2063a97d17e6274"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ErrorcodesController.php" hash="7149f83536e46413ddf5b159ae4ebf91"/><file name="ThreatController.php" hash="5db39713fbd0ae13e943a891940bb22c"/></dir><dir name="Frontend"><file name="OptimalController.php" hash="3b7c37744a48f2babb5c5e6ffe1f563e"/></dir><file name="HandlerController.php" hash="2308d08c79fae424d5ae04ea273595c7"/></dir><dir name="data"><dir name="optimal_setup"><dir name="csv"><file name="common-codes-0.3.3.csv" hash="e3c9195dbe01cfb5cf341378271b1240"/><file name="webservices-codes-0.3.3.csv" hash="8fc5562ff9bb3e5c3235fa6c7c21c0d5"/></dir><file name="data-upgrade-0.3.4-0.3.5.php" hash="4afe267d997446c46c0a1fcba771d1e1"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="30a4af4a510783219bbee940d185fb19"/><file name="config.xml" hash="404ede7d12d33f4ddd083add6c222441"/><file name="system.xml" hash="7a1bd378b32f879e3711cd2cdcfa2e8f"/></dir><dir name="sql"><dir name="optimal_setup"><file name="install-0.1.1.php" hash="422b6afb2d2320f5d9c59cd5bff0dc3d"/><file name="install-0.2.0.php" hash="6a97d7f7b4513bce80c9bf151bd21fdc"/><file name="install-0.2.1.php" hash="2ec1146f6739ff03f90ea07217e9e968"/><file name="install-0.2.2.php" hash="3fdd9863b235b275593893af34abcefb"/><file name="install-0.2.3.php" hash="e07b474749b6ee431e90343a9c79f46b"/><file name="install-0.2.4.php" hash="e07b474749b6ee431e90343a9c79f46b"/><file name="install-0.2.5.php" hash="84228a0ce89a63179095a9790167715d"/><file name="install-0.2.6.php" hash="2986f567d1e7b4dd3e5ebdd8abd612c4"/><file name="install-0.2.7.php" hash="2986f567d1e7b4dd3e5ebdd8abd612c4"/><file name="install-0.2.9.php" hash="2986f567d1e7b4dd3e5ebdd8abd612c4"/><file name="install-0.3.5.php" hash="4abfc294ba5df2e55772e4474af173da"/><file name="mysql4-install-0.1.1.php" hash="422b6afb2d2320f5d9c59cd5bff0dc3d"/><file name="mysql4-install-0.2.0.php" hash="6a97d7f7b4513bce80c9bf151bd21fdc"/><file name="mysql4-install-0.2.1.php" hash="2ec1146f6739ff03f90ea07217e9e968"/><file name="mysql4-install-0.2.2.php" hash="3fdd9863b235b275593893af34abcefb"/><file name="mysql4-install-0.2.3.php" hash="e07b474749b6ee431e90343a9c79f46b"/><file name="mysql4-install-0.2.4.php" hash="e07b474749b6ee431e90343a9c79f46b"/><file name="mysql4-install-0.2.5.php" hash="84228a0ce89a63179095a9790167715d"/><file name="mysql4-install-0.2.6.php" hash="2986f567d1e7b4dd3e5ebdd8abd612c4"/><file name="mysql4-install-0.2.7.php" hash="2986f567d1e7b4dd3e5ebdd8abd612c4"/><file name="mysql4-install-0.2.9.php" hash="30039fc096f8db2a82a3268b467ef856"/><file name="mysql4-install-0.3.5.php" hash="5e98dddfa3303ede96338c1e73f0febe"/><file name="mysql4-upgrade-0.1.1-0.2.7.php" hash="2986f567d1e7b4dd3e5ebdd8abd612c4"/><file name="mysql4-upgrade-0.4.1-0.4.2.php" hash="8387580ae133615a3de551eaa86a0e2c"/><file name="mysql4-upgrade-0.4.3-0.4.4.php" hash="5cb4f76fccf0f97f9b4c5e5ebd530f70"/><file name="upgrade-0.1.1-0.2.7.php" hash="2986f567d1e7b4dd3e5ebdd8abd612c4"/><file name="upgrade-0.2.9-0.3.0.php" hash="989e6c4043fccfa6cdcba0a09938dd07"/><file name="upgrade-0.3.1-0.3.2.php" hash="aea721b40772c92db786b96fbb9c8bda"/><file name="upgrade-0.3.4-0.3.5.php" hash="5283e3567c7d35e22b4c87bbc89a0eb3"/><file name="upgrade-0.3.7-0.3.8.php" hash="5283e3567c7d35e22b4c87bbc89a0eb3"/><file name="upgrade-0.4.1-0.4.2.php" hash="8387580ae133615a3de551eaa86a0e2c"/><file name="upgrade-0.4.3-0.4.4.php" hash="5cb4f76fccf0f97f9b4c5e5ebd530f70"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="optimal.xml" hash="03c64fd49785bfca34ee3249cc9bc97d"/></dir><dir name="template"><dir name="optimal"><dir name="customer"><dir name="cards"><file name="form.phtml" hash="be217c0a2959b8ef1284d5e45813bd03"/><file name="grid.phtml" hash="33a02b86b53044c4ff5a6c839d86ab01"/></dir><file name="cards.phtml" hash="ed3f6e56b134674e7d8ddcb6a1deac59"/></dir><dir name="form"><file name="creditcard.phtml" hash="a4503c38c0235aa3450a2a3dab765204"/></dir><dir name="info"><file name="creditcard.phtml" hash="c11c746e88ac2b299af4a1f425300bc7"/></dir><file name="threatmeter.phtml" hash="3dd0ea7621038895aa1dd1e322ba7d99"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="optimal"><dir name="form"><file name="creditcard.phtml" hash="550c80a4e0dc4224946de029f4c3ecf6"/></dir><dir name="info"><file name="creditcard.phtml" hash="b40291e8e97dbcb6b7cf2f4b8ffb93f5"/></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Demac_Optimal.xml" hash="c1fb7e819674b01877dc9cae9547f174"/></dir></target></contents>
|
22 |
<compatible/>
|
23 |
<dependencies><required><php><min>5.3.0</min><max>5.5.19</max></php></required></dependencies>
|
24 |
</package>
|