Compare commits

...

4 Commits

Author SHA1 Message Date
Shohrat ac1fa3f6f3 from server 2024-04-03 13:18:37 +00:00
root 1af2c5be5d from server 31.01 2023-01-31 23:41:29 +05:00
root 09cab88e8f from server 2023-01-13 19:11:27 +05:00
root 99d3f6fa36 from server 2022-12-05 23:10:04 +05:00
346 changed files with 24373 additions and 8708 deletions

8
.env
View File

@ -5,9 +5,9 @@ APP_KEY=base64:l9GsGrhw5RLlAybs8em56Jr0ZfzSV25SmoZPB6LiVJQ==
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=tps
DB_USERNAME=root
DB_PASSWORD=bt110226
DB_DATABASE=tps_new
DB_USERNAME=shohrat
DB_PASSWORD=Qazwsx12**
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
@ -30,4 +30,4 @@ ROUTES_CACHE=false
ASSET_CACHE=false
DATABASE_TEMPLATES=false
LINK_POLICY=detect
ENABLE_CSRF=true
ENABLE_CSRF=true

View File

@ -57,9 +57,9 @@ return [
'engine' => 'InnoDB',
'host' => 'localhost',
'port' => 3306,
'database' => 'tps',
'username' => 'root',
'password' => 'bt110226',
'database' => 'tps_new',
'username' => 'shohrat',
'password' => 'Qazwsx12**',
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',

View File

@ -170,7 +170,7 @@ return [
'url' => 'URL',
'filename' => 'File Name',
'layout' => 'Layout',
'description' => 'Description',
'description' => 'Keywords',
'preview' => 'Preview',
'meta' => 'Meta',
'meta_title' => 'Meta Title',

View File

@ -0,0 +1,18 @@
<?php namespace Akami\Tps\Controllers;
use Backend\Classes\Controller;
use BackendMenu;
class PortfolioCategory extends Controller
{
public $implement = [ 'Backend\Behaviors\ListController', 'Backend\Behaviors\FormController' ];
public $listConfig = 'config_list.yaml';
public $formConfig = 'config_form.yaml';
public function __construct()
{
parent::__construct();
BackendMenu::setContext('Akami.Tps', 'main-menu-item', 'side-menu-item7');
}
}

View File

@ -0,0 +1,18 @@
<div data-control="toolbar">
<a href="<?= Backend::url('akami/tps/portfoliocategory/create') ?>" class="btn btn-primary oc-icon-plus"><?= e(trans('backend::lang.form.create')) ?></a>
<button
class="btn btn-default oc-icon-trash-o"
disabled="disabled"
onclick="$(this).data('request-data', {
checked: $('.control-list').listWidget('getChecked')
})"
data-request="onDelete"
data-request-confirm="<?= e(trans('backend::lang.list.delete_selected_confirm')) ?>"
data-trigger-action="enable"
data-trigger=".control-list input[type=checkbox]"
data-trigger-condition="checked"
data-request-success="$(this).prop('disabled', true)"
data-stripe-load-indicator>
<?= e(trans('backend::lang.list.delete_selected')) ?>
</button>
</div>

View File

@ -0,0 +1,10 @@
name: PortfolioCategory
form: $/akami/tps/models/portfoliocategory/fields.yaml
modelClass: Akami\Tps\Models\PortfolioCategory
defaultRedirect: akami/tps/portfoliocategory
create:
redirect: 'akami/tps/portfoliocategory/update/:id'
redirectClose: akami/tps/portfoliocategory
update:
redirect: akami/tps/portfoliocategory
redirectClose: akami/tps/portfoliocategory

View File

@ -0,0 +1,12 @@
list: $/akami/tps/models/portfoliocategory/columns.yaml
modelClass: Akami\Tps\Models\PortfolioCategory
title: PortfolioCategory
noRecordsMessage: 'backend::lang.list.no_records'
showSetup: true
showCheckboxes: true
recordsPerPage: 20
toolbar:
buttons: list_toolbar
search:
prompt: 'backend::lang.list.search_prompt'
recordUrl: 'akami/tps/portfoliocategory/update/:id'

View File

@ -0,0 +1,46 @@
<?php Block::put('breadcrumb') ?>
<ul>
<li><a href="<?= Backend::url('akami/tps/portfoliocategory') ?>">PortfolioCategory</a></li>
<li><?= e($this->pageTitle) ?></li>
</ul>
<?php Block::endPut() ?>
<?php if (!$this->fatalError): ?>
<?= Form::open(['class' => 'layout']) ?>
<div class="layout-row">
<?= $this->formRender() ?>
</div>
<div class="form-buttons">
<div class="loading-indicator-container">
<button
type="submit"
data-request="onSave"
data-hotkey="ctrl+s, cmd+s"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-primary">
<?= e(trans('backend::lang.form.create')) ?>
</button>
<button
type="button"
data-request="onSave"
data-request-data="close:1"
data-hotkey="ctrl+enter, cmd+enter"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-default">
<?= e(trans('backend::lang.form.create_and_close')) ?>
</button>
<span class="btn-text">
<?= e(trans('backend::lang.form.or')) ?> <a href="<?= Backend::url('akami/tps/portfoliocategory') ?>"><?= e(trans('backend::lang.form.cancel')) ?></a>
</span>
</div>
</div>
<?= Form::close() ?>
<?php else: ?>
<p class="flash-message static error"><?= e(trans($this->fatalError)) ?></p>
<p><a href="<?= Backend::url('akami/tps/portfoliocategory') ?>" class="btn btn-default"><?= e(trans('backend::lang.form.return_to_list')) ?></a></p>
<?php endif ?>

View File

@ -0,0 +1 @@
<?= $this->listRender() ?>

View File

@ -0,0 +1,22 @@
<?php Block::put('breadcrumb') ?>
<ul>
<li><a href="<?= Backend::url('akami/tps/portfoliocategory') ?>">PortfolioCategory</a></li>
<li><?= e($this->pageTitle) ?></li>
</ul>
<?php Block::endPut() ?>
<?php if (!$this->fatalError): ?>
<div class="form-preview">
<?= $this->formRenderPreview() ?>
</div>
<?php else: ?>
<p class="flash-message static error"><?= e($this->fatalError) ?></p>
<?php endif ?>
<p>
<a href="<?= Backend::url('akami/tps/portfoliocategory') ?>" class="btn btn-default oc-icon-chevron-left">
<?= e(trans('backend::lang.form.return_to_list')) ?>
</a>
</p>

View File

@ -0,0 +1,54 @@
<?php Block::put('breadcrumb') ?>
<ul>
<li><a href="<?= Backend::url('akami/tps/portfoliocategory') ?>">PortfolioCategory</a></li>
<li><?= e($this->pageTitle) ?></li>
</ul>
<?php Block::endPut() ?>
<?php if (!$this->fatalError): ?>
<?= Form::open(['class' => 'layout']) ?>
<div class="layout-row">
<?= $this->formRender() ?>
</div>
<div class="form-buttons">
<div class="loading-indicator-container">
<button
type="submit"
data-request="onSave"
data-request-data="redirect:0"
data-hotkey="ctrl+s, cmd+s"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-primary">
<?= e(trans('backend::lang.form.save')) ?>
</button>
<button
type="button"
data-request="onSave"
data-request-data="close:1"
data-hotkey="ctrl+enter, cmd+enter"
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
class="btn btn-default">
<?= e(trans('backend::lang.form.save_and_close')) ?>
</button>
<button
type="button"
class="oc-icon-trash-o btn-icon danger pull-right"
data-request="onDelete"
data-load-indicator="<?= e(trans('backend::lang.form.deleting')) ?>"
data-request-confirm="<?= e(trans('backend::lang.form.confirm_delete')) ?>">
</button>
<span class="btn-text">
<?= e(trans('backend::lang.form.or')) ?> <a href="<?= Backend::url('akami/tps/portfoliocategory') ?>"><?= e(trans('backend::lang.form.cancel')) ?></a>
</span>
</div>
</div>
<?= Form::close() ?>
<?php else: ?>
<p class="flash-message static error"><?= e(trans($this->fatalError)) ?></p>
<p><a href="<?= Backend::url('akami/tps/portfoliocategory') ?>" class="btn btn-default"><?= e(trans('backend::lang.form.return_to_list')) ?></a></p>
<?php endif ?>

View File

@ -1,37 +1,51 @@
<?php namespace Akami\Tps\Models;
use Model;
/**
* Model
*/
class Portfolio extends Model
{
use \October\Rain\Database\Traits\Validation;
/*
* Disable timestamps by default.
* Remove this line if timestamps are defined in the database table.
*/
public $timestamps = false;
/**
* @var string The database table used by the model.
*/
public $table = 'akami_tps_portfolio';
public $implement = [
'@RainLab.Translate.Behaviors.TranslatableModel',
];
public $translatable = ['header', 'txt'];
public $jsonable = ['img'];
/**
* @var array Validation rules
*/
public $rules = [
];
}
<?php namespace Akami\Tps\Models;
use Model;
/**
* Model
*/
class Portfolio extends Model
{
use \October\Rain\Database\Traits\Validation;
/*
* Disable timestamps by default.
* Remove this line if timestamps are defined in the database table.
*/
public $timestamps = false;
/**
* @var string The database table used by the model.
*/
public $table = 'akami_tps_portfolio';
public $implement = [
'@RainLab.Translate.Behaviors.TranslatableModel',
];
public $translatable = ['header', 'txt'];
public $belongsTo = [
'category' => \Akami\Tps\Models\PortfolioCategory::class
];
public function scopeGetBYCategory($query, $id)
{
if($id){
return $query->where('category_id', $id);
}
}
public $jsonable = ['img'];
/**
* @var array Validation rules
*/
public $rules = [
];
}

View File

@ -0,0 +1,33 @@
<?php namespace Akami\Tps\Models;
use Model;
/**
* Model
*/
class PortfolioCategory extends Model
{
use \October\Rain\Database\Traits\Validation;
use \October\Rain\Database\Traits\SoftDelete;
protected $dates = ['deleted_at'];
/**
* @var string The database table used by the model.
*/
public $table = 'akami_tps_categories';
public $implement = [
'@RainLab.Translate.Behaviors.TranslatableModel',
];
public $translatable = ['name'];
/**
* @var array Validation rules
*/
public $rules = [
];
}

View File

@ -8,3 +8,8 @@ columns:
txt:
label: txt
type: text
category_id:
label: Category
type: text
select: name
relation: category

View File

@ -17,6 +17,17 @@ fields:
fields:
content:
label: IMG
mode: file
span: full
mode: image
imageWidth: '250'
span: left
type: mediafinder
name:
label: Name
span: right
type: text
category:
label: Category
span: auto
nameFrom: name
descriptionFrom: description
type: relation

View File

@ -0,0 +1,7 @@
columns:
name:
label: name
type: text
note:
label: note
type: text

View File

@ -0,0 +1,9 @@
fields:
name:
label: Name
span: auto
type: text
note:
label: Note
span: auto
type: textarea

View File

@ -5,6 +5,12 @@ columns:
header:
label: header
type: text
searchable: false
img:
label: img
type: text
searchable: false
page:
label: page
type: text
searchable: false

View File

@ -20,3 +20,16 @@ fields:
label: Content
span: full
type: text
page:
label: Page
options:
1: Uslugi
2: 'Реклама в помещениях'
3: 'Выставочные стенды'
4: 'Организация мероприятий'
5: 'Реклама в СМИ'
6: Производство
7: Наружная
span: auto
default: '1'
type: balloon-selector

View File

@ -34,3 +34,7 @@ navigation:
label: Portfolio
url: akami/tps/portfolio
icon: icon-star
side-menu-item7:
label: 'Portfolio Categories'
url: akami/tps/portfoliocategory
icon: icon-sliders

View File

@ -0,0 +1,26 @@
<?php namespace Akami\Tps\Updates;
use Schema;
use October\Rain\Database\Updates\Migration;
class BuilderTableCreateAkamiTpsCategories extends Migration
{
public function up()
{
Schema::create('akami_tps_categories', function($table)
{
$table->engine = 'InnoDB';
$table->increments('id')->unsigned();
$table->timestamp('created_at')->nullable();
$table->timestamp('updated_at')->nullable();
$table->timestamp('deleted_at')->nullable();
$table->string('name')->nullable();
$table->text('note')->nullable();
});
}
public function down()
{
Schema::dropIfExists('akami_tps_categories');
}
}

View File

@ -0,0 +1,23 @@
<?php namespace Akami\Tps\Updates;
use Schema;
use October\Rain\Database\Updates\Migration;
class BuilderTableUpdateAkamiTpsPortfolio2 extends Migration
{
public function up()
{
Schema::table('akami_tps_portfolio', function($table)
{
$table->integer('category_id')->nullable();
});
}
public function down()
{
Schema::table('akami_tps_portfolio', function($table)
{
$table->dropColumn('category_id');
});
}
}

View File

@ -0,0 +1,23 @@
<?php namespace Akami\Tps\Updates;
use Schema;
use October\Rain\Database\Updates\Migration;
class BuilderTableUpdateAkamiTpsServicePage extends Migration
{
public function up()
{
Schema::table('akami_tps_service_page', function($table)
{
$table->string('page')->nullable();
});
}
public function down()
{
Schema::table('akami_tps_service_page', function($table)
{
$table->dropColumn('page');
});
}
}

View File

@ -0,0 +1,23 @@
<?php namespace Akami\Tps\Updates;
use Schema;
use October\Rain\Database\Updates\Migration;
class BuilderTableUpdateAkamiTpsServicePage2 extends Migration
{
public function up()
{
Schema::table('akami_tps_service_page', function($table)
{
$table->string('page', 191)->default('0')->change();
});
}
public function down()
{
Schema::table('akami_tps_service_page', function($table)
{
$table->string('page', 191)->default(null)->change();
});
}
}

View File

@ -21,3 +21,15 @@
1.0.8:
- 'Updated table akami_tps_portfolio'
- builder_table_update_akami_tps_portfolio.php
1.0.9:
- 'Updated table akami_tps_service_page'
- builder_table_update_akami_tps_service_page.php
1.0.10:
- 'Updated table akami_tps_service_page'
- builder_table_update_akami_tps_service_page_2.php
1.0.11:
- 'Created table akami_tps_categories'
- builder_table_create_akami_tps_categories.php
1.0.12:
- 'Updated table akami_tps_portfolio'
- builder_table_update_akami_tps_portfolio_2.php

View File

@ -2897,6 +2897,10 @@ svg.active .svg-elem-21 {
.header .nav .service_nav {
top: -100px;
}
<<<<<<< HEAD
=======
>>>>>>> 4d144c51944115d184406427a566d71cd39df45d
.hero_item-title {
font-size: 22px;
}
@ -2947,12 +2951,20 @@ svg.active .svg-elem-21 {
.about_video-box {
height: 385px;
}
<<<<<<< HEAD
=======
>>>>>>> 4d144c51944115d184406427a566d71cd39df45d
.about.page .about_box-item-title {
font-size: 18px;
}
.about.page .about_box-item-txt {
font-size: 14px;
}
<<<<<<< HEAD
=======
>>>>>>> 4d144c51944115d184406427a566d71cd39df45d
.contact_box {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
@ -3001,6 +3013,10 @@ svg.active .svg-elem-21 {
.service.page .service_box .slick-list {
padding: 0 170px 0 0 !important;
}
<<<<<<< HEAD
=======
>>>>>>> 4d144c51944115d184406427a566d71cd39df45d
.about.page .about_box-item {
width: calc(50% - 82px);
}
@ -3154,6 +3170,10 @@ svg.active .svg-elem-21 {
.service.page .service_box-item-photo {
height: 280px;
}
<<<<<<< HEAD
=======
>>>>>>> 4d144c51944115d184406427a566d71cd39df45d
.main_title {
font-size: 20px;
}
@ -3203,9 +3223,17 @@ svg.active .svg-elem-21 {
.service.page .service_list li p {
line-height: 28px;
}
<<<<<<< HEAD
.about.page .about_box-item {
width: calc(100% - 82px);
}
=======
.about.page .about_box-item {
width: calc(100% - 82px);
}
>>>>>>> 4d144c51944115d184406427a566d71cd39df45d
.modal_inner {
height: unset;
}

View File

View File

View File

View File

View File

View File

View File

View File

0
themes/tps/assets/fonts/Montserrat/Montserrat-Bold.eot Executable file → Normal file
View File

0
themes/tps/assets/fonts/Montserrat/Montserrat-Bold.ttf Executable file → Normal file
View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

0
themes/tps/assets/fonts/Montserrat/Montserrat-Thin.eot Executable file → Normal file
View File

0
themes/tps/assets/fonts/Montserrat/Montserrat-Thin.ttf Executable file → Normal file
View File

View File

View File

View File

View File

View File

View File

0
themes/tps/assets/fonts/Montserrat/demo.html Executable file → Normal file
View File

0
themes/tps/assets/fonts/Montserrat/stylesheet.css Executable file → Normal file
View File

Some files were not shown because too many files have changed in this diff Show More