JFIFHHCnxxdC"&!1A2Q"aqBb1 ?R{~,.Y|@sl_޸s[+6ϵG};?2Y`&9LP?3rj  "@V]:3T-G*P ( *(@AEY]qqqALn+Wtu?)lQUT*Aj- x:˸T u53Vh @PS@ ,i,!"\hPw+E@ηnu ڶh%(Lvũbb-?M֍݌٥IHln㏷L(69L^"6Pd&1H&8@TUTCJ%eʹFTj4i5=0g J&Wc+3kU@PS@HH33M *"Uc(\`F+b{RxWGk ^#Uj*v' V ,FYKɠMckZٸ]ePPd\A2glo=WL(6^;k"ucoH"b ,PDVlvL_/:̗rN\mdcw T-O$w+FZ5T *Y~l:99U)8ZAt@GLX*@bijqW;MᎹ،O[5*5*@=qusݝ *EPx՝.~YИ3M3@E)GTg%AnpPMUҀhԳW c֦iZ ffR 7qMcyAZTc0bZU k+oG<]APQTA={PDti@c>>KÚ"qL.1Pk6QY7t.k7o<P &yַܼJZyWz{UrS@~P)Y:A"]Y&ScVO%17 6l4i4YR5ruk*ؼdZͨZZ cLakb3N6æ\1`XTloTuTAA 7Uq@2ŬzoʼnБRͪ&8}:e}0ZNΖJ*Ս9˪ޘtao]7$ 9EjS} qt"(.=Y:V#'H:δ4#6yjѥBB ;WD-ElFf67*\AmADQ__'2$TX9nu'm@iPDTqS`%u%3[nY, :g = tiXH]ij"+6Z* .~|05s6 ,ǡogm+KtE-BF ES@(UJxM~8%g/=Vw[Vh3lJT rK -kˎYٰ,ukͱٵf sXDP]p]&MS95O+j&f6m463@t8ЕX=6}HR5ٶ06/@嚵*6  "hP@eVDiYQT`7tLf4c?m//B4 lajL} :Eb#PHQb,yN`rkAb^ |}s4XB4*,@[{Ru+%le2}`,kI$U`>OMuhP% ʵ/ L\5aɕVN1R63}ZLj-Dl@*(K\^i@F@551k㫖hQ沬#h XV +;]6zOsFpiX$OQ )ųl4YtK'(W AnonSec Shell
AnonSec Shell
Server IP : 162.19.86.63  /  Your IP : 216.73.217.81   [ Reverse IP ]
Web Server : Apache
System : Linux oirealestate.net 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64
User : oinversion ( 10001)
PHP Version : 5.6.40
Disable Function : opcache_get_status
Domains : 5 Domains
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/vhosts/oinversion.com/.trash/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /var/www/vhosts/oinversion.com/.trash/Gallery.php.tar
var/www/vhosts/oinversion.com/httpdocs/frontend/widgets/Gallery.php000064400000003277151456105200021713 0ustar00<?php
namespace frontend\widgets;

use yii\base\Widget;
use yii\helpers\Html;

use common\models\Gallery as GalleryModel;

class Gallery extends Widget{
    public $slug = '';
    public $ulClass = null;
    public $liClass = null;
    public $imgClass = null;
    public $gallery = null;

    public function init(){
        $this->gallery = GalleryModel::findOne(['slug' => $this->slug]);
        parent::init();
    }

    public function run(){
        $htmlGallery = '';
        if (isset($this->gallery)) {
            $galleryImages = $this->gallery->getGalleryImages()
                                ->where(['is_active' => true])
                                ->orderBy(['sort_order' => SORT_ASC])
                                ->all();

            $numberOfImages = count($galleryImages);
            if ($numberOfImages>1) {
                $htmlGallery = $this->generateHtmlForMultipleImages($galleryImages);
            }
            else if ($numberOfImages===1){
                $htmlGallery = $this->generateHtmlForSingleImage($galleryImages[0]);
            }
        }
        return $htmlGallery;
    }

    private function generateHtmlForMultipleImages($galleryImages){
        return Html::ul($galleryImages, [
                'class' => $this->ulClass,
                'item' => function($galleryImage, $index){
                    return Html::tag('li',
                                    Html::img($galleryImage->url, ['class'=>$this->imgClass]),
                                ['class' => $this->liClass]);
                }
            ]);
    }

    private function generateHtmlForSingleImage($galleryImage){
        return Html::img($galleryImage->url, ['class'=>$this->imgClass]);
    }
}var/www/vhosts/oinversion.com/httpdocs/backend/models/Gallery.php000064400000010141151456366350021303 0ustar00<?php

namespace backend\models;

use Yii;
use yii\helpers\ArrayHelper;
use yii\helpers\Html;
use yii\helpers\Url;

use \common\models\Gallery as CommonGallery;
use \common\models\GalleryImage;

/**
 * This is the model class for table "Gallery".
 */
class Gallery extends CommonGallery
{

    public $uploadedImages;

    public function rules(){
        $parentRules = parent::rules();
        $parentRules[] = [['uploadedImages'], 'file', 'skipOnEmpty' => true, 'maxFiles' => 30];
        return $parentRules;
    }

    public function attributeLabels(){
        $parentAttributeLabels = parent::attributeLabels();
        $parentAttributeLabels['uploadedImages'] = Yii::t('app', 'Upload Images');
        return $parentAttributeLabels;
    }

    /*TODO: Refactor saveImagesOnDisk, now is saving images on disk and creating new GalleryImage objects*/
    public function saveImagesOnDisk(){
        $isValid = false;

        if ($this->validate()) {
            $imageNextPosition = $this->getImageNextPosition();
            foreach ($this->uploadedImages as $key => $file) {
                $galleryImage = new GalleryImage;
                $fileName = sprintf('%d-%s.%s',
                                        $this->id,
                                        $file->baseName,
                                        $file->extension);

                $galleryImage->gallery_id = $this->id;
                $galleryImage->file_name = $fileName;
                $galleryImage->sort_order = $imageNextPosition + $key;
                $galleryImage->is_active = true;
                $galleryImage->save();

                $file->saveAs($galleryImage->fileFullPath);
            }
            $isValid = true;
        }

        return $isValid;
    }

    public function getImageNextPosition(){
        $latestPosition = $this->getImageLatestPosition();
        $nextPosition = isset($latestPosition) ? $latestPosition + 1 : 0;

        return $nextPosition;
    }

    public function getImageLatestPosition(){
        $latestPositionGalleryImage = $this->getGalleryImages()
                            ->select('sort_order')
                            ->orderBy(['sort_order' => SORT_DESC])
                            ->one();
        $latestPosition = isset($latestPositionGalleryImage) ? $latestPositionGalleryImage->sort_order : null;
        return $latestPosition;
    }

    public function getGalleryImagesForSortableWidget(){
        $galleryImagesArray = [];
        $galleryImages = $this->getGalleryImages()
                            ->orderBy(['id' => SORT_ASC])
                            ->all();
        foreach ($galleryImages as $galleryImage) {
            $image = Html::img($galleryImage->url);
            $deleteButton = Html::a('',
                    '', [
                    'class' => 'btn btn-danger btn-xs glyphicon glyphicon-remove delete-gallery-image',
                    'data' => [
                        'message' => Yii::t('app', 'Are you sure you want to delete this Image?'),
                        'url' => Url::toRoute(['gallery/delete-image', 'id'=>$galleryImage->id])
                    ],
                ]);

            $galleryImagesArray[$galleryImage->id] = [
                'content' => $image.$deleteButton,
                'disabled' => !$galleryImage->is_active
            ];
        }
        return $galleryImagesArray;
    }

    public function getOrderOfGalleryImagesForSortableWidget(){
        $galleryImages = $this->getGalleryImages()
                            ->select('id')
                            ->orderBy(['sort_order' => SORT_ASC])
                            ->all();
        $galleryImageIds = ArrayHelper::getColumn($galleryImages, 'id');
        $galleryImageIdsAsString = implode(',', $galleryImageIds);

        return $galleryImageIdsAsString;
    }

    public function reorderGalleryImages($idsSorted){
        if (count($idsSorted)>1) {
            foreach ($idsSorted as $newPosition => $id) {
                $galleryImage = GalleryImage::findOne($id);
                $galleryImage->sort_order = $newPosition;
                $galleryImage->save();
            }
        }
    }
}
var/www/vhosts/oinversion.com/httpdocs/common/models/Gallery.php000064400000000447151456372000021201 0ustar00<?php

namespace common\models;

use Yii;
use yii\behaviors\SluggableBehavior;
use yii\behaviors\TimestampBehavior;
use yii\behaviors\BlameableBehavior;
use common\models\base\Gallery as BaseGallery;

/**
 * This is the model class for table "gallery".
 */
class Gallery extends BaseGallery
{
}
var/www/vhosts/oinversion.com/httpdocs/common/models/base/Gallery.php000064400000004717151456531770022132 0ustar00<?php

namespace common\models\base;

use Yii;
use yii\behaviors\SluggableBehavior;
use yii\behaviors\TimestampBehavior;
use yii\behaviors\BlameableBehavior;

/**
 * This is the base-model class for table "gallery".
 *
 * @property integer $id
 * @property string $name
 * @property string $slug
 * @property integer $created_by
 * @property integer $updated_by
 * @property string $created_at
 * @property string $updated_at
 *
 * @property \common\models\User $createdBy
 * @property \common\models\User $updatedBy
 * @property \common\models\GalleryImage[] $galleryImages
 */
class Gallery extends \yii\db\ActiveRecord
{



    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'gallery';
    }

    public function behaviors()
    {
        return [
            [
                'class' => SluggableBehavior::className(),
                'attribute' => 'name',
            ],
            'timestamp' => [
                'class' => TimestampBehavior::className(),
            ],
            [
            'class' => BlameableBehavior::className(),
            ],
        ];
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['name'], 'required'],
            [['created_by', 'updated_by', 'created_at', 'updated_at'], 'integer'],
            [['name', 'slug'], 'string', 'max' => 255],
            [['name'], 'unique']
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'id' => Yii::t('model', 'ID'),
            'name' => Yii::t('model', 'Name'),
            'slug' => Yii::t('model', 'Identifier'),
            'created_by' => Yii::t('model', 'Created By'),
            'updated_by' => Yii::t('model', 'Updated By'),
            'created_at' => Yii::t('model', 'Created At'),
            'updated_at' => Yii::t('model', 'Updated At'),
        ];
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getCreatedBy()
    {
        return $this->hasOne(\common\models\User::className(), ['id' => 'created_by']);
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getUpdatedBy()
    {
        return $this->hasOne(\common\models\User::className(), ['id' => 'updated_by']);
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getGalleryImages()
    {
        return $this->hasMany(\common\models\GalleryImage::className(), ['gallery_id' => 'id']);
    }




}

Anon7 - 2022
AnonSec Team