Issues (439)

Security Analysis    no request data  

This project does not seem to handle request data directly as such no vulnerable execution paths were found.

  Cross-Site Scripting
Cross-Site Scripting enables an attacker to inject code into the response of a web-request that is viewed by other users. It can for example be used to bypass access controls, or even to take over other users' accounts.
  File Exposure
File Exposure allows an attacker to gain access to local files that he should not be able to access. These files can for example include database credentials, or other configuration files.
  File Manipulation
File Manipulation enables an attacker to write custom data to files. This potentially leads to injection of arbitrary code on the server.
  Object Injection
Object Injection enables an attacker to inject an object into PHP code, and can lead to arbitrary code execution, file exposure, or file manipulation attacks.
  Code Injection
Code Injection enables an attacker to execute arbitrary code on the server.
  Response Splitting
Response Splitting can be used to send arbitrary responses.
  File Inclusion
File Inclusion enables an attacker to inject custom files into PHP's file loading mechanism, either explicitly passed to include, or for example via PHP's auto-loading mechanism.
  Command Injection
Command Injection enables an attacker to inject a shell command that is execute with the privileges of the web-server. This can be used to expose sensitive data, or gain access of your server.
  SQL Injection
SQL Injection enables an attacker to execute arbitrary SQL code on your database server gaining access to user data, or manipulating user data.
  XPath Injection
XPath Injection enables an attacker to modify the parts of XML document that are read. If that XML document is for example used for authentication, this can lead to further vulnerabilities similar to SQL Injection.
  LDAP Injection
LDAP Injection enables an attacker to inject LDAP statements potentially granting permission to run unauthorized queries, or modify content inside the LDAP tree.
  Header Injection
  Other Vulnerability
This category comprises other attack vectors such as manipulating the PHP runtime, loading custom extensions, freezing the runtime, or similar.
  Regex Injection
Regex Injection enables an attacker to execute arbitrary code in your PHP process.
  XML Injection
XML Injection enables an attacker to read files on your local filesystem including configuration files, or can be abused to freeze your web-server process.
  Variable Injection
Variable Injection enables an attacker to overwrite program variables with custom data, and can lead to further vulnerabilities.
Unfortunately, the security analysis is currently not available for your project. If you are a non-commercial open-source project, please contact support to gain access.

src/BankAccount.php (1 issue)

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
3
namespace Spatie\SchemaOrg;
4
5
use \Spatie\SchemaOrg\Contracts\BankAccountContract;
6
use \Spatie\SchemaOrg\Contracts\FinancialProductContract;
7
use \Spatie\SchemaOrg\Contracts\IntangibleContract;
8
use \Spatie\SchemaOrg\Contracts\ServiceContract;
9
use \Spatie\SchemaOrg\Contracts\ThingContract;
10
11
/**
12
 * A product or service offered by a bank whereby one may deposit, withdraw or
13
 * transfer money and in some cases be paid interest.
14
 *
15
 * @see http://schema.org/BankAccount
16
 *
17
 */
18 View Code Duplication
class BankAccount extends BaseType implements BankAccountContract, FinancialProductContract, IntangibleContract, ServiceContract, ThingContract
0 ignored issues
show
This class seems to be duplicated in your project.

Duplicated code is one of the most pungent code smells. If you need to duplicate the same code in three or more different places, we strongly encourage you to look into extracting the code into a single class or operation.

You can also find more detailed suggestions in the “Code” section of your repository.

Loading history...
19
{
20
    /**
21
     * An additional type for the item, typically used for adding more specific
22
     * types from external vocabularies in microdata syntax. This is a
23
     * relationship between something and a class that the thing is in. In RDFa
24
     * syntax, it is better to use the native RDFa syntax - the 'typeof'
25
     * attribute - for multiple types. Schema.org tools may have only weaker
26
     * understanding of extra types, in particular those defined externally.
27
     *
28
     * @param string|string[] $additionalType
29
     *
30
     * @return static
31
     *
32
     * @see http://schema.org/additionalType
33
     */
34
    public function additionalType($additionalType)
35
    {
36
        return $this->setProperty('additionalType', $additionalType);
37
    }
38
39
    /**
40
     * The overall rating, based on a collection of reviews or ratings, of the
41
     * item.
42
     *
43
     * @param \Spatie\SchemaOrg\Contracts\AggregateRatingContract|\Spatie\SchemaOrg\Contracts\AggregateRatingContract[] $aggregateRating
44
     *
45
     * @return static
46
     *
47
     * @see http://schema.org/aggregateRating
48
     */
49
    public function aggregateRating($aggregateRating)
50
    {
51
        return $this->setProperty('aggregateRating', $aggregateRating);
52
    }
53
54
    /**
55
     * An alias for the item.
56
     *
57
     * @param string|string[] $alternateName
58
     *
59
     * @return static
60
     *
61
     * @see http://schema.org/alternateName
62
     */
63
    public function alternateName($alternateName)
64
    {
65
        return $this->setProperty('alternateName', $alternateName);
66
    }
67
68
    /**
69
     * The annual rate that is charged for borrowing (or made by investing),
70
     * expressed as a single percentage number that represents the actual yearly
71
     * cost of funds over the term of a loan. This includes any fees or
72
     * additional costs associated with the transaction.
73
     *
74
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[]|float|float[]|int|int[] $annualPercentageRate
75
     *
76
     * @return static
77
     *
78
     * @see http://schema.org/annualPercentageRate
79
     */
80
    public function annualPercentageRate($annualPercentageRate)
81
    {
82
        return $this->setProperty('annualPercentageRate', $annualPercentageRate);
83
    }
84
85
    /**
86
     * The geographic area where a service or offered item is provided.
87
     *
88
     * @param \Spatie\SchemaOrg\Contracts\AdministrativeAreaContract|\Spatie\SchemaOrg\Contracts\AdministrativeAreaContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[]|\Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[]|string|string[] $areaServed
89
     *
90
     * @return static
91
     *
92
     * @see http://schema.org/areaServed
93
     */
94
    public function areaServed($areaServed)
95
    {
96
        return $this->setProperty('areaServed', $areaServed);
97
    }
98
99
    /**
100
     * An intended audience, i.e. a group for whom something was created.
101
     *
102
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $audience
103
     *
104
     * @return static
105
     *
106
     * @see http://schema.org/audience
107
     */
108
    public function audience($audience)
109
    {
110
        return $this->setProperty('audience', $audience);
111
    }
112
113
    /**
114
     * A means of accessing the service (e.g. a phone bank, a web site, a
115
     * location, etc.).
116
     *
117
     * @param \Spatie\SchemaOrg\Contracts\ServiceChannelContract|\Spatie\SchemaOrg\Contracts\ServiceChannelContract[] $availableChannel
118
     *
119
     * @return static
120
     *
121
     * @see http://schema.org/availableChannel
122
     */
123
    public function availableChannel($availableChannel)
124
    {
125
        return $this->setProperty('availableChannel', $availableChannel);
126
    }
127
128
    /**
129
     * An award won by or for this item.
130
     *
131
     * @param string|string[] $award
132
     *
133
     * @return static
134
     *
135
     * @see http://schema.org/award
136
     */
137
    public function award($award)
138
    {
139
        return $this->setProperty('award', $award);
140
    }
141
142
    /**
143
     * The brand(s) associated with a product or service, or the brand(s)
144
     * maintained by an organization or business person.
145
     *
146
     * @param \Spatie\SchemaOrg\Contracts\BrandContract|\Spatie\SchemaOrg\Contracts\BrandContract[]|\Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[] $brand
147
     *
148
     * @return static
149
     *
150
     * @see http://schema.org/brand
151
     */
152
    public function brand($brand)
153
    {
154
        return $this->setProperty('brand', $brand);
155
    }
156
157
    /**
158
     * An entity that arranges for an exchange between a buyer and a seller.  In
159
     * most cases a broker never acquires or releases ownership of a product or
160
     * service involved in an exchange.  If it is not clear whether an entity is
161
     * a broker, seller, or buyer, the latter two terms are preferred.
162
     *
163
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $broker
164
     *
165
     * @return static
166
     *
167
     * @see http://schema.org/broker
168
     */
169
    public function broker($broker)
170
    {
171
        return $this->setProperty('broker', $broker);
172
    }
173
174
    /**
175
     * A category for the item. Greater signs or slashes can be used to
176
     * informally indicate a category hierarchy.
177
     *
178
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[]|string|string[] $category
179
     *
180
     * @return static
181
     *
182
     * @see http://schema.org/category
183
     */
184
    public function category($category)
185
    {
186
        return $this->setProperty('category', $category);
187
    }
188
189
    /**
190
     * A description of the item.
191
     *
192
     * @param string|string[] $description
193
     *
194
     * @return static
195
     *
196
     * @see http://schema.org/description
197
     */
198
    public function description($description)
199
    {
200
        return $this->setProperty('description', $description);
201
    }
202
203
    /**
204
     * A sub property of description. A short description of the item used to
205
     * disambiguate from other, similar items. Information from other properties
206
     * (in particular, name) may be necessary for the description to be useful
207
     * for disambiguation.
208
     *
209
     * @param string|string[] $disambiguatingDescription
210
     *
211
     * @return static
212
     *
213
     * @see http://schema.org/disambiguatingDescription
214
     */
215
    public function disambiguatingDescription($disambiguatingDescription)
216
    {
217
        return $this->setProperty('disambiguatingDescription', $disambiguatingDescription);
218
    }
219
220
    /**
221
     * Description of fees, commissions, and other terms applied either to a
222
     * class of financial product, or by a financial service organization.
223
     *
224
     * @param string|string[] $feesAndCommissionsSpecification
225
     *
226
     * @return static
227
     *
228
     * @see http://schema.org/feesAndCommissionsSpecification
229
     */
230
    public function feesAndCommissionsSpecification($feesAndCommissionsSpecification)
231
    {
232
        return $this->setProperty('feesAndCommissionsSpecification', $feesAndCommissionsSpecification);
233
    }
234
235
    /**
236
     * Indicates an OfferCatalog listing for this Organization, Person, or
237
     * Service.
238
     *
239
     * @param \Spatie\SchemaOrg\Contracts\OfferCatalogContract|\Spatie\SchemaOrg\Contracts\OfferCatalogContract[] $hasOfferCatalog
240
     *
241
     * @return static
242
     *
243
     * @see http://schema.org/hasOfferCatalog
244
     */
245
    public function hasOfferCatalog($hasOfferCatalog)
246
    {
247
        return $this->setProperty('hasOfferCatalog', $hasOfferCatalog);
248
    }
249
250
    /**
251
     * The hours during which this service or contact is available.
252
     *
253
     * @param \Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract|\Spatie\SchemaOrg\Contracts\OpeningHoursSpecificationContract[] $hoursAvailable
254
     *
255
     * @return static
256
     *
257
     * @see http://schema.org/hoursAvailable
258
     */
259
    public function hoursAvailable($hoursAvailable)
260
    {
261
        return $this->setProperty('hoursAvailable', $hoursAvailable);
262
    }
263
264
    /**
265
     * The identifier property represents any kind of identifier for any kind of
266
     * [[Thing]], such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides
267
     * dedicated properties for representing many of these, either as textual
268
     * strings or as URL (URI) links. See [background
269
     * notes](/docs/datamodel.html#identifierBg) for more details.
270
     *
271
     * @param \Spatie\SchemaOrg\Contracts\PropertyValueContract|\Spatie\SchemaOrg\Contracts\PropertyValueContract[]|string|string[] $identifier
272
     *
273
     * @return static
274
     *
275
     * @see http://schema.org/identifier
276
     */
277
    public function identifier($identifier)
278
    {
279
        return $this->setProperty('identifier', $identifier);
280
    }
281
282
    /**
283
     * An image of the item. This can be a [[URL]] or a fully described
284
     * [[ImageObject]].
285
     *
286
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $image
287
     *
288
     * @return static
289
     *
290
     * @see http://schema.org/image
291
     */
292
    public function image($image)
293
    {
294
        return $this->setProperty('image', $image);
295
    }
296
297
    /**
298
     * The interest rate, charged or paid, applicable to the financial product.
299
     * Note: This is different from the calculated annualPercentageRate.
300
     *
301
     * @param \Spatie\SchemaOrg\Contracts\QuantitativeValueContract|\Spatie\SchemaOrg\Contracts\QuantitativeValueContract[]|float|float[]|int|int[] $interestRate
302
     *
303
     * @return static
304
     *
305
     * @see http://schema.org/interestRate
306
     */
307
    public function interestRate($interestRate)
308
    {
309
        return $this->setProperty('interestRate', $interestRate);
310
    }
311
312
    /**
313
     * A pointer to another, somehow related product (or multiple products).
314
     *
315
     * @param \Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[]|\Spatie\SchemaOrg\Contracts\ServiceContract|\Spatie\SchemaOrg\Contracts\ServiceContract[] $isRelatedTo
316
     *
317
     * @return static
318
     *
319
     * @see http://schema.org/isRelatedTo
320
     */
321
    public function isRelatedTo($isRelatedTo)
322
    {
323
        return $this->setProperty('isRelatedTo', $isRelatedTo);
324
    }
325
326
    /**
327
     * A pointer to another, functionally similar product (or multiple
328
     * products).
329
     *
330
     * @param \Spatie\SchemaOrg\Contracts\ProductContract|\Spatie\SchemaOrg\Contracts\ProductContract[]|\Spatie\SchemaOrg\Contracts\ServiceContract|\Spatie\SchemaOrg\Contracts\ServiceContract[] $isSimilarTo
331
     *
332
     * @return static
333
     *
334
     * @see http://schema.org/isSimilarTo
335
     */
336
    public function isSimilarTo($isSimilarTo)
337
    {
338
        return $this->setProperty('isSimilarTo', $isSimilarTo);
339
    }
340
341
    /**
342
     * An associated logo.
343
     *
344
     * @param \Spatie\SchemaOrg\Contracts\ImageObjectContract|\Spatie\SchemaOrg\Contracts\ImageObjectContract[]|string|string[] $logo
345
     *
346
     * @return static
347
     *
348
     * @see http://schema.org/logo
349
     */
350
    public function logo($logo)
351
    {
352
        return $this->setProperty('logo', $logo);
353
    }
354
355
    /**
356
     * Indicates a page (or other CreativeWork) for which this thing is the main
357
     * entity being described. See [background
358
     * notes](/docs/datamodel.html#mainEntityBackground) for details.
359
     *
360
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|string|string[] $mainEntityOfPage
361
     *
362
     * @return static
363
     *
364
     * @see http://schema.org/mainEntityOfPage
365
     */
366
    public function mainEntityOfPage($mainEntityOfPage)
367
    {
368
        return $this->setProperty('mainEntityOfPage', $mainEntityOfPage);
369
    }
370
371
    /**
372
     * The name of the item.
373
     *
374
     * @param string|string[] $name
375
     *
376
     * @return static
377
     *
378
     * @see http://schema.org/name
379
     */
380
    public function name($name)
381
    {
382
        return $this->setProperty('name', $name);
383
    }
384
385
    /**
386
     * An offer to provide this item&#x2014;for example, an offer to sell a
387
     * product, rent the DVD of a movie, perform a service, or give away tickets
388
     * to an event. Use [[businessFunction]] to indicate the kind of transaction
389
     * offered, i.e. sell, lease, etc. This property can also be used to
390
     * describe a [[Demand]]. While this property is listed as expected on a
391
     * number of common types, it can be used in others. In that case, using a
392
     * second type, such as Product or a subtype of Product, can clarify the
393
     * nature of the offer.
394
     *
395
     * @param \Spatie\SchemaOrg\Contracts\DemandContract|\Spatie\SchemaOrg\Contracts\DemandContract[]|\Spatie\SchemaOrg\Contracts\OfferContract|\Spatie\SchemaOrg\Contracts\OfferContract[] $offers
396
     *
397
     * @return static
398
     *
399
     * @see http://schema.org/offers
400
     */
401
    public function offers($offers)
402
    {
403
        return $this->setProperty('offers', $offers);
404
    }
405
406
    /**
407
     * Indicates a potential Action, which describes an idealized action in
408
     * which this thing would play an 'object' role.
409
     *
410
     * @param \Spatie\SchemaOrg\Contracts\ActionContract|\Spatie\SchemaOrg\Contracts\ActionContract[] $potentialAction
411
     *
412
     * @return static
413
     *
414
     * @see http://schema.org/potentialAction
415
     */
416
    public function potentialAction($potentialAction)
417
    {
418
        return $this->setProperty('potentialAction', $potentialAction);
419
    }
420
421
    /**
422
     * The tangible thing generated by the service, e.g. a passport, permit,
423
     * etc.
424
     *
425
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $produces
426
     *
427
     * @return static
428
     *
429
     * @see http://schema.org/produces
430
     */
431
    public function produces($produces)
432
    {
433
        return $this->setProperty('produces', $produces);
434
    }
435
436
    /**
437
     * The service provider, service operator, or service performer; the goods
438
     * producer. Another party (a seller) may offer those services or goods on
439
     * behalf of the provider. A provider may also serve as the seller.
440
     *
441
     * @param \Spatie\SchemaOrg\Contracts\OrganizationContract|\Spatie\SchemaOrg\Contracts\OrganizationContract[]|\Spatie\SchemaOrg\Contracts\PersonContract|\Spatie\SchemaOrg\Contracts\PersonContract[] $provider
442
     *
443
     * @return static
444
     *
445
     * @see http://schema.org/provider
446
     */
447
    public function provider($provider)
448
    {
449
        return $this->setProperty('provider', $provider);
450
    }
451
452
    /**
453
     * Indicates the mobility of a provided service (e.g. 'static', 'dynamic').
454
     *
455
     * @param string|string[] $providerMobility
456
     *
457
     * @return static
458
     *
459
     * @see http://schema.org/providerMobility
460
     */
461
    public function providerMobility($providerMobility)
462
    {
463
        return $this->setProperty('providerMobility', $providerMobility);
464
    }
465
466
    /**
467
     * A review of the item.
468
     *
469
     * @param \Spatie\SchemaOrg\Contracts\ReviewContract|\Spatie\SchemaOrg\Contracts\ReviewContract[] $review
470
     *
471
     * @return static
472
     *
473
     * @see http://schema.org/review
474
     */
475
    public function review($review)
476
    {
477
        return $this->setProperty('review', $review);
478
    }
479
480
    /**
481
     * URL of a reference Web page that unambiguously indicates the item's
482
     * identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or
483
     * official website.
484
     *
485
     * @param string|string[] $sameAs
486
     *
487
     * @return static
488
     *
489
     * @see http://schema.org/sameAs
490
     */
491
    public function sameAs($sameAs)
492
    {
493
        return $this->setProperty('sameAs', $sameAs);
494
    }
495
496
    /**
497
     * The geographic area where the service is provided.
498
     *
499
     * @param \Spatie\SchemaOrg\Contracts\AdministrativeAreaContract|\Spatie\SchemaOrg\Contracts\AdministrativeAreaContract[]|\Spatie\SchemaOrg\Contracts\GeoShapeContract|\Spatie\SchemaOrg\Contracts\GeoShapeContract[]|\Spatie\SchemaOrg\Contracts\PlaceContract|\Spatie\SchemaOrg\Contracts\PlaceContract[] $serviceArea
500
     *
501
     * @return static
502
     *
503
     * @see http://schema.org/serviceArea
504
     */
505
    public function serviceArea($serviceArea)
506
    {
507
        return $this->setProperty('serviceArea', $serviceArea);
508
    }
509
510
    /**
511
     * The audience eligible for this service.
512
     *
513
     * @param \Spatie\SchemaOrg\Contracts\AudienceContract|\Spatie\SchemaOrg\Contracts\AudienceContract[] $serviceAudience
514
     *
515
     * @return static
516
     *
517
     * @see http://schema.org/serviceAudience
518
     */
519
    public function serviceAudience($serviceAudience)
520
    {
521
        return $this->setProperty('serviceAudience', $serviceAudience);
522
    }
523
524
    /**
525
     * The tangible thing generated by the service, e.g. a passport, permit,
526
     * etc.
527
     *
528
     * @param \Spatie\SchemaOrg\Contracts\ThingContract|\Spatie\SchemaOrg\Contracts\ThingContract[] $serviceOutput
529
     *
530
     * @return static
531
     *
532
     * @see http://schema.org/serviceOutput
533
     */
534
    public function serviceOutput($serviceOutput)
535
    {
536
        return $this->setProperty('serviceOutput', $serviceOutput);
537
    }
538
539
    /**
540
     * The type of service being offered, e.g. veterans' benefits, emergency
541
     * relief, etc.
542
     *
543
     * @param string|string[] $serviceType
544
     *
545
     * @return static
546
     *
547
     * @see http://schema.org/serviceType
548
     */
549
    public function serviceType($serviceType)
550
    {
551
        return $this->setProperty('serviceType', $serviceType);
552
    }
553
554
    /**
555
     * A slogan or motto associated with the item.
556
     *
557
     * @param string|string[] $slogan
558
     *
559
     * @return static
560
     *
561
     * @see http://schema.org/slogan
562
     */
563
    public function slogan($slogan)
564
    {
565
        return $this->setProperty('slogan', $slogan);
566
    }
567
568
    /**
569
     * A CreativeWork or Event about this Thing.
570
     *
571
     * @param \Spatie\SchemaOrg\Contracts\CreativeWorkContract|\Spatie\SchemaOrg\Contracts\CreativeWorkContract[]|\Spatie\SchemaOrg\Contracts\EventContract|\Spatie\SchemaOrg\Contracts\EventContract[] $subjectOf
572
     *
573
     * @return static
574
     *
575
     * @see http://schema.org/subjectOf
576
     */
577
    public function subjectOf($subjectOf)
578
    {
579
        return $this->setProperty('subjectOf', $subjectOf);
580
    }
581
582
    /**
583
     * URL of the item.
584
     *
585
     * @param string|string[] $url
586
     *
587
     * @return static
588
     *
589
     * @see http://schema.org/url
590
     */
591
    public function url($url)
592
    {
593
        return $this->setProperty('url', $url);
594
    }
595
596
}
597