GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.

AbstractThemeConfiguration   C
last analyzed

Complexity

Total Complexity 76

Size/Duplication

Total Lines 732
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 76
lcom 1
cbo 1
dl 0
loc 732
rs 5
c 1
b 0
f 0

76 Methods

Rating   Name   Duplication   Size   Complexity  
A getBillingNewAddressXpath() 0 4 1
A getShippingNewAddressXpath() 0 4 1
A getDoNotUseBillingAddressForShipping() 0 4 1
A getUseBillingAddressForShipping() 0 4 1
A getBillingAddressDropdownXpath() 0 4 1
A getPasswordInputXpath() 0 4 1
A getConfirmPasswordInputXpath() 0 4 1
A getRegisterNewCustomerCheckoutButtonXpath() 0 4 1
A getCustomerEmailInputXpath() 0 4 1
A getCustomerPasswordInputXpath() 0 4 1
A getCustomerButtonXpath() 0 4 1
A getShippingMethodFormXpath() 0 4 1
A getOrderReceivedCompleteXpath() 0 4 1
A getPaymentMethodContinueButtonXpath() 0 4 1
A getShippingMethodContinueButtonXpath() 0 4 1
A getPlaceOrderButtonXpath() 0 4 1
A getPaymentMethodContinueCompleteXpath() 0 4 1
A getDefaultShippingXpath() 0 4 1
A getShippingMethodContinueCompletedXpath() 0 4 1
A getShippingFirstNameXpath() 0 4 1
A setShippingFirstNameXpath() 0 4 1
A getShippingLastNameXpath() 0 4 1
A setShippingLastNameXpath() 0 4 1
A getShippingCompanyXpath() 0 4 1
A setShippingCompanyXpath() 0 4 1
A getShippingEmailAddressXpath() 0 4 1
A setShippingEmailAddressXpath() 0 4 1
A getShippingAddressXpath() 0 4 1
A setShippingAddressXpath() 0 4 1
A getShippingAddress2Xpath() 0 4 1
A setShippingAddress2Xpath() 0 4 1
A getShippingCityXpath() 0 4 1
A setShippingCityXpath() 0 4 1
A getShippingRegionIdXpath() 0 5 1
A setShippingRegionIdXpath() 0 4 1
A getShippingPostCodeXpath() 0 4 1
A setShippingPostCodeXpath() 0 4 1
A getShippingCountryIdXpath() 0 5 1
A setShippingCountryIdXpath() 0 4 1
A getShippingTelephoneXpath() 0 4 1
A setShippingTelephoneXpath() 0 4 1
A getShippingFaxXpath() 0 4 1
A setShippingFaxXpath() 0 4 1
A getShippingContinueButtonXpath() 0 4 1
A setShippingContinueButtonXpath() 0 4 1
A getShippingContinueCompletedXpath() 0 4 1
A setShippingContinueCompletedXpath() 0 4 1
A getBillingContinueCompletedXpath() 0 4 1
A getContinueButtonXpath() 0 4 1
A getGuestCheckoutButtonXpath() 0 4 1
A getBillingFirstNameXpath() 0 4 1
A getBillingLastNameXpath() 0 4 1
A getBillingCompanyXpath() 0 4 1
A getBillingEmailAddressXpath() 0 4 1
A getBillingAddressXpath() 0 4 1
A getBillingAddress2Xpath() 0 4 1
A getBillingCityXpath() 0 4 1
A getBillingRegionIdXpath() 0 5 1
A getBillingPostCodeXpath() 0 4 1
A getBillingCountryIdXpath() 0 5 1
A getBillingTelephoneXpath() 0 4 1
A getBillingFaxXpath() 0 4 1
A getBillingContinueButtonXpath() 0 4 1
A getCartSummaryCheckoutSubTotal() 0 4 1
A getCartSummaryCheckoutTax() 0 4 1
A getCartSummaryCheckoutGrandTotal() 0 4 1
A getCartSummaryCheckoutShippingTotal() 0 4 1
A getCartSummaryCheckoutProductLoopPriceXpath() 0 5 1
A getCartSummaryCheckoutProductLoopNameXpath() 0 5 1
A getCartSummaryCheckoutProductLoopQtyXpath() 0 5 1
A getCartSummaryCheckoutProductLoopSubtotalXpath() 0 5 1
A getShippingByNameXpath() 0 5 1
A getTermsAndConditionsSelectorXpath() 0 5 1
A getOrderNumberExtractorXpath() 0 4 1
A getGuaranteedPageLoadedElementDisplayedXpath() 0 4 1
A setGuaranteedPageLoadedElementDisplayedXpath() 0 4 1

How to fix   Complexity   

Complex Class

Complex classes like AbstractThemeConfiguration often do a lot of different things. To break such a class down, we need to identify a cohesive component within that class. A common approach to find such a component is to look for fields/methods that share the same prefixes, or suffixes. You can also have a look at the cohesion graph to spot any un-connected, or weakly-connected components.

Once you have determined the fields that belong together, you can apply the Extract Class refactoring. If the component makes sense as a sub-class, Extract Subclass is also a candidate, and is often faster.

While breaking up the class, it is a good idea to analyze how other classes use AbstractThemeConfiguration, and based on these observations, apply Extract Interface, too.

1
<?php
2
3
namespace Magium\Magento\Themes\OnePageCheckout;
4
5
6
use Magium\AbstractConfigurableElement;
7
use Magium\Themes\ThemeConfigurationInterface;
8
9
abstract class AbstractThemeConfiguration extends AbstractConfigurableElement implements ThemeConfigurationInterface
10
{
11
12
    /**
13
     * @var string The continue button when choosing the checkout type
14
     */
15
16
    public $continueButtonXpath;
17
18
    /**
19
     * @var string The checkbox (typically) that sets the guest checkout
20
     */
21
22
    public $guestCheckoutButtonXpath;
23
24
    /**
25
     * @var string The checkbox (typically) that sets the new customer checkout
26
     */
27
28
    public $registerNewCustomerCheckoutButtonXpath;
29
30
    public $billingAddressDropdownXpath;
31
32
    public $customerEmailInputXpath;
33
    public $customerPasswordInputXpath;
34
    public $customerButtonXpath;
35
36
    public $billingFirstNameXpath;
37
    public $billingLastNameXpath;
38
    public $billingCompanyXpath;
39
    public $billingEmailAddressXpath;
40
    public $billingAddressXpath;
41
    public $billingAddress2Xpath;
42
    public $billingCityXpath;
43
    /**
44
     * @var string The Xpath string for the region_id OPTION to click.  Must be sprintf() compatible
45
     */
46
    public $billingRegionIdXpath;
47
    public $billingPostCodeXpath;
48
    /**
49
     * @var string The Xpath string for the country OPTION to click.  Must be sprintf() compatible
50
     */
51
    public $billingCountryIdXpath;
52
    public $billingTelephoneXpath;
53
    public $billingFaxXpath;
54
55
    public $useBillingAddressForShipping;
56
    public $doNotUseBillingAddressForShipping;
57
58
    public $billingContinueButtonXpath;
59
    public $billingContinueCompletedXpath;
60
61
62
    public $shippingFirstNameXpath;
63
    public $shippingLastNameXpath;
64
    public $shippingCompanyXpath;
65
    public $shippingEmailAddressXpath;
66
    public $shippingAddressXpath;
67
    public $shippingAddress2Xpath;
68
    public $shippingCityXpath;
69
    /**
70
     * @var string The Xpath string for the region_id OPTION to click.  Must be sprintf() compatible
71
     */
72
    public $shippingRegionIdXpath;
73
    public $shippingPostCodeXpath;
74
    /**
75
     * @var string The Xpath string for the country OPTION to click.  Must be sprintf() compatible
76
     */
77
    public $shippingCountryIdXpath;
78
    public $shippingTelephoneXpath;
79
    public $shippingFaxXpath;
80
    public $shippingContinueButtonXpath;
81
    public $shippingContinueCompletedXpath;
82
    public $shippingMethodContinueCompletedXpath;
83
84
    public $shippingMethodContinueButtonXpath;
85
    public $defaultShippingXpath;
86
87
    public $paymentMethodContinueCompleteXpath;
88
89
    public $paymentMethodContinueButtonXpath;
90
91
    public $placeOrderButtonXpath;
92
93
    public $orderReceivedCompleteXpath;
94
95
    public $shippingMethodFormXpath;
96
97
    public $passwordInputXpath;
98
    public $confirmPasswordInputXpath;
99
100
    /**
101
     * This is a hard one.  Each of the summary checkout products will be iterated over until they cannot be found. Having
102
     * this work in a manner that gets all of the products, in all languages, in all themes, is quite difficult and
103
     * so the Xpath selector needs to be one that can find each individual column with an incrementing iterator.
104
     *
105
     * @see Magium\Magento\Actions\Checkout\Extractors\CartSummary for an example on how this is done
106
     *
107
     * @var string
108
     */
109
110
    public $cartSummaryCheckoutProductLoopPriceXpath;
111
    public $cartSummaryCheckoutProductLoopNameXpath;
112
    public $cartSummaryCheckoutProductLoopQtyXpath;
113
    public $cartSummaryCheckoutProductLoopSubtotalXpath;
114
115
    public $cartSummaryCheckoutSubTotal;
116
    public $cartSummaryCheckoutTax;
117
    public $cartSummaryCheckoutGrandTotal;
118
    public $cartSummaryCheckoutShippingTotal;
119
120
    public $billingNewAddressXpath;
121
    public $shippingNewAddressXpath;
122
123
    public $guaranteedPageLoadedElementDisplayedXpath = '//*[contains(concat(" ",normalize-space(@class)," ")," footer ")]';
124
125
    public $orderNumberExtractorXpath;
126
127
    public $termsAndConditionsSelectorXpath;
128
129
    public $shippingByNameXpath;
130
131
    /**
132
     * @return mixed
133
     */
134
    public function getShippingByNameXpath($name)
135
    {
136
        $xpath = sprintf($this->shippingByNameXpath, $name);
137
        return $this->translatePlaceholders($xpath);
138
    }
139
140
    /**
141
     * @return mixed
142
     */
143
    public function getTermsAndConditionsSelectorXpath($term)
144
    {
145
        $return = sprintf($this->termsAndConditionsSelectorXpath, $term);
146
        return $this->translatePlaceholders($return);
147
    }
148
149
    public function getOrderNumberExtractorXpath()
150
    {
151
        return $this->translatePlaceholders($this->orderNumberExtractorXpath);
152
    }
153
154
    public function getGuaranteedPageLoadedElementDisplayedXpath()
155
    {
156
        return $this->translatePlaceholders($this->guaranteedPageLoadedElementDisplayedXpath);
157
    }
158
159
    /**
160
     * @param mixed $guaranteedPageLoadedElementDisplayedXpath
161
     */
162
    public function setGuaranteedPageLoadedElementDisplayedXpath($guaranteedPageLoadedElementDisplayedXpath)
163
    {
164
        $this->guaranteedPageLoadedElementDisplayedXpath = $guaranteedPageLoadedElementDisplayedXpath;
165
    }
166
167
    /**
168
     * @return string
169
     */
170
    public function getBillingNewAddressXpath()
171
    {
172
        return $this->translatePlaceholders($this->billingNewAddressXpath);
173
    }
174
175
    /**
176
     * @return string
177
     */
178
    public function getShippingNewAddressXpath()
179
    {
180
        return $this->translatePlaceholders($this->shippingNewAddressXpath);
181
    }
182
183
    /**
184
     * @return mixed
185
     */
186
    public function getDoNotUseBillingAddressForShipping()
187
    {
188
        return $this->doNotUseBillingAddressForShipping;
189
    }
190
191
    /**
192
     * @return mixed
193
     */
194
    public function getUseBillingAddressForShipping()
195
    {
196
        return $this->useBillingAddressForShipping;
197
    }
198
199
    /**
200
     * @return string
201
     */
202
    public function getBillingAddressDropdownXpath()
203
    {
204
        return $this->translatePlaceholders($this->billingAddressDropdownXpath);
205
    }
206
207
    /**
208
     * @return string
209
     */
210
    public function getPasswordInputXpath()
211
    {
212
        return $this->translatePlaceholders($this->passwordInputXpath);
213
    }
214
215
    /**
216
     * @return string
217
     */
218
    public function getConfirmPasswordInputXpath()
219
    {
220
        return $this->translatePlaceholders($this->confirmPasswordInputXpath);
221
    }
222
223
224
225
    /**
226
     * @return string
227
     */
228
    public function getRegisterNewCustomerCheckoutButtonXpath()
229
    {
230
        return $this->translatePlaceholders($this->registerNewCustomerCheckoutButtonXpath);
231
    }
232
233
    /**
234
     * @return string
235
     */
236
    public function getCustomerEmailInputXpath()
237
    {
238
        return $this->translatePlaceholders($this->customerEmailInputXpath);
239
    }
240
241
    /**
242
     * @return string
243
     */
244
    public function getCustomerPasswordInputXpath()
245
    {
246
        return $this->translatePlaceholders($this->customerPasswordInputXpath);
247
    }
248
249
    /**
250
     * @return string
251
     */
252
    public function getCustomerButtonXpath()
253
    {
254
        return $this->translatePlaceholders($this->customerButtonXpath);
255
    }
256
257
258
259
    /**
260
     * @return string
261
     */
262
    public function getShippingMethodFormXpath()
263
    {
264
        return $this->translatePlaceholders($this->shippingMethodFormXpath);
265
    }
266
267
    /**
268
     * @return string
269
     */
270
    public function getOrderReceivedCompleteXpath()
271
    {
272
        return $this->translatePlaceholders($this->orderReceivedCompleteXpath);
273
    }
274
275
276
    /**
277
     * @return string
278
     */
279
    public function getPaymentMethodContinueButtonXpath()
280
    {
281
        return $this->translatePlaceholders($this->paymentMethodContinueButtonXpath);
282
    }
283
284
    /**
285
     * @return string
286
     */
287
    public function getShippingMethodContinueButtonXpath()
288
    {
289
        return $this->translatePlaceholders($this->shippingMethodContinueButtonXpath);
290
    }
291
292
     /**
293
      * @return string
294
     */
295
    public function getPlaceOrderButtonXpath()
296
    {
297
        return $this->translatePlaceholders($this->placeOrderButtonXpath);
298
    }
299
300
301
    /**
302
     * @return string
303
     */
304
    public function getPaymentMethodContinueCompleteXpath()
305
    {
306
        return $this->translatePlaceholders($this->paymentMethodContinueCompleteXpath);
307
    }
308
309
310
    public function getDefaultShippingXpath()
311
    {
312
        return $this->translatePlaceholders($this->defaultShippingXpath);
313
    }
314
315
    /**
316
     * @return string
317
     */
318
    public function getShippingMethodContinueCompletedXpath()
319
    {
320
        return $this->translatePlaceholders($this->shippingMethodContinueCompletedXpath);
321
    }
322
323
    /**
324
     * @return string
325
     */
326
    public function getShippingFirstNameXpath()
327
    {
328
        return $this->translatePlaceholders($this->shippingFirstNameXpath);
329
    }
330
331
    /**
332
     * @param string $shippinFirstNameXpath
0 ignored issues
show
Documentation introduced by
There is no parameter named $shippinFirstNameXpath. Did you maybe mean $shippingFirstNameXpath?

This check looks for PHPDoc comments describing methods or function parameters that do not exist on the corresponding method or function. It has, however, found a similar but not annotated parameter which might be a good fit.

Consider the following example. The parameter $ireland is not defined by the method finale(...).

/**
 * @param array $germany
 * @param array $ireland
 */
function finale($germany, $island) {
    return "2:1";
}

The most likely cause is that the parameter was changed, but the annotation was not.

Loading history...
333
     */
334
    public function setShippingFirstNameXpath($shippingFirstNameXpath)
335
    {
336
        $this->shippingFirstNameXpath = $shippingFirstNameXpath;
337
    }
338
339
    /**
340
     * @return string
341
     */
342
    public function getShippingLastNameXpath()
343
    {
344
        return $this->translatePlaceholders($this->shippingLastNameXpath);
345
    }
346
347
    /**
348
     * @param string $shippingLastNameXpath
349
     */
350
    public function setShippingLastNameXpath($shippingLastNameXpath)
351
    {
352
        $this->shippingLastNameXpath = $shippingLastNameXpath;
353
    }
354
355
    /**
356
     * @return string
357
     */
358
    public function getShippingCompanyXpath()
359
    {
360
        return $this->translatePlaceholders($this->shippingCompanyXpath);
361
    }
362
363
    /**
364
     * @param string $shippingCompanyXpath
365
     */
366
    public function setShippingCompanyXpath($shippingCompanyXpath)
367
    {
368
        $this->shippingCompanyXpath = $shippingCompanyXpath;
369
    }
370
371
    /**
372
     * @return string
373
     */
374
    public function getShippingEmailAddressXpath()
375
    {
376
        return $this->translatePlaceholders($this->shippingEmailAddressXpath);
377
    }
378
379
    /**
380
     * @param string $shippingEmailAddressXpath
381
     */
382
    public function setShippingEmailAddressXpath($shippingEmailAddressXpath)
383
    {
384
        $this->shippingEmailAddressXpath = $shippingEmailAddressXpath;
385
    }
386
387
    /**
388
     * @return string
389
     */
390
    public function getShippingAddressXpath()
391
    {
392
        return $this->translatePlaceholders($this->shippingAddressXpath);
393
    }
394
395
    /**
396
     * @param string $shippingAddressXpath
397
     */
398
    public function setShippingAddressXpath($shippingAddressXpath)
399
    {
400
        $this->shippingAddressXpath = $shippingAddressXpath;
401
    }
402
403
    /**
404
     * @return string
405
     */
406
    public function getShippingAddress2Xpath()
407
    {
408
        return $this->translatePlaceholders($this->shippingAddress2Xpath);
409
    }
410
411
    /**
412
     * @param string $shippingAddress2Xpath
413
     */
414
    public function setShippingAddress2Xpath($shippingAddress2Xpath)
415
    {
416
        $this->shippingAddress2Xpath = $shippingAddress2Xpath;
417
    }
418
419
    /**
420
     * @return string
421
     */
422
    public function getShippingCityXpath()
423
    {
424
        return $this->translatePlaceholders($this->shippingCityXpath);
425
    }
426
427
    /**
428
     * @param string $shippingCityXpath
429
     */
430
    public function setShippingCityXpath($shippingCityXpath)
431
    {
432
        $this->shippingCityXpath = $shippingCityXpath;
433
    }
434
435
    /**
436
     * @return string
437
     */
438
    public function getShippingRegionIdXpath($region)
439
    {
440
        $return = sprintf($this->shippingRegionIdXpath, $region);
441
        return $this->translatePlaceholders($return);
442
    }
443
444
    /**
445
     * @param string $shippingRegionIdXpath
446
     */
447
    public function setShippingRegionIdXpath($shippingRegionIdXpath)
448
    {
449
        $this->shippingRegionIdXpath = $shippingRegionIdXpath;
450
    }
451
452
    /**
453
     * @return string
454
     */
455
    public function getShippingPostCodeXpath()
456
    {
457
        return $this->translatePlaceholders($this->shippingPostCodeXpath);
458
    }
459
460
    /**
461
     * @param string $shippingPostCodeXpath
462
     */
463
    public function setShippingPostCodeXpath($shippingPostCodeXpath)
464
    {
465
        $this->shippingPostCodeXpath = $shippingPostCodeXpath;
466
    }
467
468
    /**
469
     * @return string
470
     */
471
    public function getShippingCountryIdXpath($country)
472
    {
473
        $return = sprintf($this->shippingCountryIdXpath, $country);
474
        return $this->translatePlaceholders($return);
475
    }
476
477
    /**
478
     * @param string $shippingCountryIdXpath
479
     */
480
    public function setShippingCountryIdXpath($shippingCountryIdXpath)
481
    {
482
        $this->shippingCountryIdXpath = $shippingCountryIdXpath;
483
    }
484
485
    /**
486
     * @return string
487
     */
488
    public function getShippingTelephoneXpath()
489
    {
490
        return $this->translatePlaceholders($this->shippingTelephoneXpath);
491
    }
492
493
    /**
494
     * @param string $shippingTelephoneXpath
495
     */
496
    public function setShippingTelephoneXpath($shippingTelephoneXpath)
497
    {
498
        $this->shippingTelephoneXpath = $shippingTelephoneXpath;
499
    }
500
501
    /**
502
     * @return string
503
     */
504
    public function getShippingFaxXpath()
505
    {
506
        return $this->translatePlaceholders($this->shippingFaxXpath);
507
    }
508
509
    /**
510
     * @param string $shippingFaxXpath
511
     */
512
    public function setShippingFaxXpath($shippingFaxXpath)
513
    {
514
        $this->shippingFaxXpath = $shippingFaxXpath;
515
    }
516
517
    /**
518
     * @return string
519
     */
520
    public function getShippingContinueButtonXpath()
521
    {
522
        return $this->translatePlaceholders($this->shippingContinueButtonXpath);
523
    }
524
525
    /**
526
     * @param string $shippingContinueButtonXpath
527
     */
528
    public function setShippingContinueButtonXpath($shippingContinueButtonXpath)
529
    {
530
        $this->shippingContinueButtonXpath = $shippingContinueButtonXpath;
531
    }
532
533
    /**
534
     * @return string
535
     */
536
    public function getShippingContinueCompletedXpath()
537
    {
538
        return $this->translatePlaceholders($this->shippingContinueCompletedXpath);
539
    }
540
541
    /**
542
     * @param string $shippingContinueCompletedXpath
543
     */
544
    public function setShippingContinueCompletedXpath($shippingContinueCompletedXpath)
545
    {
546
        $this->shippingContinueCompletedXpath = $shippingContinueCompletedXpath;
547
    }
548
549
    public function getBillingContinueCompletedXpath()
550
    {
551
        return $this->translatePlaceholders($this->billingContinueCompletedXpath);
552
    }
553
554
    public function getContinueButtonXpath()
555
    {
556
        return $this->translatePlaceholders($this->continueButtonXpath);
557
    }
558
559
    public function getGuestCheckoutButtonXpath()
560
    {
561
        return $this->translatePlaceholders($this->guestCheckoutButtonXpath);
562
    }
563
564
    /**
565
     * @return string
566
     */
567
    public function getBillingFirstNameXpath()
568
    {
569
        return $this->translatePlaceholders($this->billingFirstNameXpath);
570
    }
571
572
    /**
573
     * @return string
574
     */
575
    public function getBillingLastNameXpath()
576
    {
577
        return $this->translatePlaceholders($this->billingLastNameXpath);
578
    }
579
580
    /**
581
     * @return string
582
     */
583
    public function getBillingCompanyXpath()
584
    {
585
        return $this->translatePlaceholders($this->billingCompanyXpath);
586
    }
587
588
    /**
589
     * @return string
590
     */
591
    public function getBillingEmailAddressXpath()
592
    {
593
        return $this->translatePlaceholders($this->billingEmailAddressXpath);
594
    }
595
596
    /**
597
     * @return string
598
     */
599
    public function getBillingAddressXpath()
600
    {
601
        return$this->translatePlaceholders( $this->billingAddressXpath);
602
    }
603
604
    /**
605
     * @return string
606
     */
607
    public function getBillingAddress2Xpath()
608
    {
609
        return $this->translatePlaceholders($this->billingAddress2Xpath);
610
    }
611
612
    /**
613
     * @return string
614
     */
615
    public function getBillingCityXpath()
616
    {
617
        return $this->translatePlaceholders($this->billingCityXpath);
618
    }
619
620
    /**
621
     * @return string
622
     */
623
    public function getBillingRegionIdXpath($region)
624
    {
625
        $return = sprintf($this->billingRegionIdXpath, $region);
626
        return $this->translatePlaceholders($return);
627
    }
628
629
    /**
630
     * @return string
631
     */
632
    public function getBillingPostCodeXpath()
633
    {
634
        return $this->translatePlaceholders($this->billingPostCodeXpath);
635
    }
636
637
    /**
638
     * @return string
639
     */
640
    public function getBillingCountryIdXpath($country)
641
    {
642
        $return = sprintf($this->billingCountryIdXpath, $country);
643
        return $this->translatePlaceholders($return);
644
    }
645
646
    /**
647
     * @return string
648
     */
649
    public function getBillingTelephoneXpath()
650
    {
651
        return $this->translatePlaceholders($this->billingTelephoneXpath);
652
    }
653
654
    /**
655
     * @return string
656
     */
657
    public function getBillingFaxXpath()
658
    {
659
        return $this->translatePlaceholders($this->billingFaxXpath);
660
    }
661
662
    /**
663
     * @return string
664
     */
665
    public function getBillingContinueButtonXpath()
666
    {
667
        return $this->translatePlaceholders($this->billingContinueButtonXpath);
668
    }
669
670
    /**
671
     * @return string
672
     */
673
    public function getCartSummaryCheckoutSubTotal()
674
    {
675
        return $this->translatePlaceholders($this->cartSummaryCheckoutSubTotal);
676
    }
677
678
    /**
679
     * @return string
680
     */
681
    public function getCartSummaryCheckoutTax()
682
    {
683
        return $this->translatePlaceholders($this->cartSummaryCheckoutTax);
684
    }
685
686
    /**
687
     * @return string
688
     */
689
    public function getCartSummaryCheckoutGrandTotal()
690
    {
691
        return $this->translatePlaceholders($this->cartSummaryCheckoutGrandTotal);
692
    }
693
694
    /**
695
     * @return string
696
     */
697
    public function getCartSummaryCheckoutShippingTotal()
698
    {
699
        return $this->translatePlaceholders($this->cartSummaryCheckoutShippingTotal);
700
    }
701
702
703
704
    /**
705
     * @return string
706
     */
707
    public function getCartSummaryCheckoutProductLoopPriceXpath($itemCount)
708
    {
709
        $return = sprintf($this->cartSummaryCheckoutProductLoopPriceXpath , $itemCount);
710
        return $this->translatePlaceholders($return);
711
    }
712
713
    /**
714
     * @return string
715
     */
716
    public function getCartSummaryCheckoutProductLoopNameXpath($itemCount)
717
    {
718
        $return = sprintf($this->cartSummaryCheckoutProductLoopNameXpath , $itemCount);
719
        return $this->translatePlaceholders($return);
720
    }
721
722
    /**
723
     * @return string
724
     */
725
    public function getCartSummaryCheckoutProductLoopQtyXpath($itemCount)
726
    {
727
        $return = sprintf($this->cartSummaryCheckoutProductLoopQtyXpath , $itemCount);
728
        return $this->translatePlaceholders($return);
729
    }
730
731
    /**
732
     * @return string
733
     */
734
    public function getCartSummaryCheckoutProductLoopSubtotalXpath($itemCount)
735
    {
736
        $return = sprintf($this->cartSummaryCheckoutProductLoopSubtotalXpath , $itemCount);
737
        return $this->translatePlaceholders($return);
738
    }
739
740
}
741