PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.20
Booking for Appointments and Events Calendar – Amelia v1.2.20
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Infrastructure / WP / InstallActions / DB / Location / LocationsTable.php
ameliabooking / src / Infrastructure / WP / InstallActions / DB / Location Last commit date
LocationsTable.php 4 years ago LocationsViewsTable.php 5 years ago
LocationsTable.php
56 lines
1 <?php
2
3 namespace AmeliaBooking\Infrastructure\WP\InstallActions\DB\Location;
4
5 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
6 use AmeliaBooking\Domain\ValueObjects\Picture;
7 use AmeliaBooking\Domain\ValueObjects\String\Address;
8 use AmeliaBooking\Domain\ValueObjects\String\Description;
9 use AmeliaBooking\Domain\ValueObjects\String\Name;
10 use AmeliaBooking\Domain\ValueObjects\String\Phone;
11 use AmeliaBooking\Domain\ValueObjects\String\Url;
12 use AmeliaBooking\Infrastructure\WP\InstallActions\DB\AbstractDatabaseTable;
13
14 /**
15 * Class LocationsTable
16 *
17 * @package AmeliaBooking\Infrastructure\WP\InstallActions\DB\Location
18 */
19 class LocationsTable extends AbstractDatabaseTable
20 {
21
22 const TABLE = 'locations';
23
24 /**
25 * @return string
26 * @throws InvalidArgumentException
27 */
28 public static function buildTable()
29 {
30 $table = self::getTableName();
31
32 $name = Name::MAX_LENGTH;
33 $description = Description::MAX_LENGTH;
34 $address = Address::MAX_LENGTH;
35 $phone = Phone::MAX_LENGTH;
36 $picture = Picture::MAX_LENGTH;
37 $url = Url::MAX_LENGTH;
38
39 return "CREATE TABLE {$table} (
40 `id` int(11) NOT NULL AUTO_INCREMENT,
41 `status` ENUM('hidden', 'visible', 'disabled') NOT NULL default 'visible',
42 `name` varchar ({$name}) NOT NULL default '',
43 `description` text({$description}) NULL,
44 `address` varchar ({$address}) NOT NULL,
45 `phone` varchar ({$phone}) NOT NULL,
46 `latitude` decimal(8, 6) NOT NULL,
47 `longitude` decimal(9, 6) NOT NULL,
48 `pictureFullPath` varchar ({$picture}) NULL,
49 `pictureThumbPath` varchar ({$picture}) NULL,
50 `pin` varchar ({$url}) NULL,
51 `translations` TEXT NULL DEFAULT NULL,
52 PRIMARY KEY (`id`)
53 ) DEFAULT CHARSET=utf8 COLLATE utf8_general_ci";
54 }
55 }
56