user shops + shipping
This commit is contained in:
parent
ccc2af4bf7
commit
d4f6a774d0
53 changed files with 2326 additions and 814 deletions
1082
.idea/workspace.xml
generated
1082
.idea/workspace.xml
generated
File diff suppressed because it is too large
Load diff
|
|
@ -5,6 +5,7 @@ namespace App\Http\Controllers\Api;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Input;
|
use Input;
|
||||||
|
use Session;
|
||||||
use \SoapClient;
|
use \SoapClient;
|
||||||
|
|
||||||
class KasController extends Controller
|
class KasController extends Controller
|
||||||
|
|
@ -17,6 +18,7 @@ class KasController extends Controller
|
||||||
private $session_lifetime = 600; // Gültigkeit des Tokens in Sek. bis zur neuen Authentifizierung
|
private $session_lifetime = 600; // Gültigkeit des Tokens in Sek. bis zur neuen Authentifizierung
|
||||||
private $session_update_lifetime = 'Y'; // bei N läuft die Session nach <$session_lifetime> Sekunden ab, bei Y verlängert sich die Session mit jeder Benutzung
|
private $session_update_lifetime = 'Y'; // bei N läuft die Session nach <$session_lifetime> Sekunden ab, bei Y verlängert sich die Session mit jeder Benutzung
|
||||||
private $CredentialToken = false;
|
private $CredentialToken = false;
|
||||||
|
private $kas_flood_delay = 2;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new controller instance.
|
* Create a new controller instance.
|
||||||
|
|
@ -31,6 +33,7 @@ class KasController extends Controller
|
||||||
|
|
||||||
public function action($func, $para = array()){
|
public function action($func, $para = array()){
|
||||||
|
|
||||||
|
$this->checkSession($func);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
$Params = array(); // Parameter für die API-Funktion
|
$Params = array(); // Parameter für die API-Funktion
|
||||||
|
|
@ -42,6 +45,8 @@ class KasController extends Controller
|
||||||
'KasRequestType' => $func, // API-Funktion
|
'KasRequestType' => $func, // API-Funktion
|
||||||
'KasRequestParams' => $para // Parameter an die API-Funktion
|
'KasRequestParams' => $para // Parameter an die API-Funktion
|
||||||
)));
|
)));
|
||||||
|
Session::put('flood_protection.'.$func, time() + $this->kas_flood_delay + 0.2);
|
||||||
|
|
||||||
if(isset($req['Response']['ReturnString']) && $req['Response']['ReturnString'] == "TRUE"){
|
if(isset($req['Response']['ReturnString']) && $req['Response']['ReturnString'] == "TRUE"){
|
||||||
return $req['Response']['ReturnInfo'];
|
return $req['Response']['ReturnInfo'];
|
||||||
}
|
}
|
||||||
|
|
@ -60,8 +65,11 @@ class KasController extends Controller
|
||||||
|
|
||||||
|
|
||||||
private function login(){
|
private function login(){
|
||||||
|
|
||||||
|
$this->checkSession('auth');
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
$SoapLogon = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasAuth.wsdl');
|
$SoapLogon = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasAuth.wsdl');
|
||||||
$this->CredentialToken = $SoapLogon->KasAuth(json_encode(array(
|
$this->CredentialToken = $SoapLogon->KasAuth(json_encode(array(
|
||||||
'KasUser' => $this->kas_user,
|
'KasUser' => $this->kas_user,
|
||||||
|
|
@ -70,6 +78,8 @@ class KasController extends Controller
|
||||||
'SessionLifeTime' => $this->session_lifetime,
|
'SessionLifeTime' => $this->session_lifetime,
|
||||||
'SessionUpdateLifeTime' => $this->session_update_lifetime
|
'SessionUpdateLifeTime' => $this->session_update_lifetime
|
||||||
)));
|
)));
|
||||||
|
Session::put('flood_protection.auth', time() + $this->kas_flood_delay + 0.2);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fehler abfangen und ausgeben
|
// Fehler abfangen und ausgeben
|
||||||
|
|
@ -83,7 +93,19 @@ class KasController extends Controller
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function checkSession($func)
|
||||||
|
{
|
||||||
|
$name = 'flood_protection.'.$func;
|
||||||
|
|
||||||
|
if(Session::exists($name)){
|
||||||
|
$time_to_wait = (float)Session::get($name) - time();
|
||||||
|
Session::forget($name);
|
||||||
|
}else {
|
||||||
|
$time_to_wait = 0;
|
||||||
|
}
|
||||||
|
if ( $time_to_wait >= 0 ) {
|
||||||
|
usleep( intval( $time_to_wait*1000000 ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
104
app/Http/Controllers/ShippingController.php
Executable file
104
app/Http/Controllers/ShippingController.php
Executable file
|
|
@ -0,0 +1,104 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
use App\Models\Shipping;
|
||||||
|
use Input;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Validator;
|
||||||
|
|
||||||
|
|
||||||
|
class ShippingController extends Controller
|
||||||
|
{
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->middleware('superadmin');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||||
|
*/
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
$data = [
|
||||||
|
'values' => Shipping::all(),
|
||||||
|
];
|
||||||
|
return view('admin.shipping.index', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function edit($shipping_id)
|
||||||
|
{
|
||||||
|
if($shipping_id == "new"){
|
||||||
|
$shipping = new Shipping();
|
||||||
|
$shipping->active = 1;
|
||||||
|
|
||||||
|
}else{
|
||||||
|
$shipping = Shipping::findOrFail($shipping_id);
|
||||||
|
|
||||||
|
}
|
||||||
|
$data = [
|
||||||
|
'value' => $shipping,
|
||||||
|
];
|
||||||
|
return view('admin.shipping.edit', $data);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|\Illuminate\View\View
|
||||||
|
*/
|
||||||
|
public function store(Request $request)
|
||||||
|
{
|
||||||
|
$data = Input::all();
|
||||||
|
if ($data['id'] == "new") {
|
||||||
|
$shipping = new Shipping();
|
||||||
|
$rules = array(
|
||||||
|
'name' => 'required',
|
||||||
|
);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$shipping = Shipping::findOrFail($data['id']);
|
||||||
|
$rules = array(
|
||||||
|
'name' => 'required',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
$data = [
|
||||||
|
'value' => $shipping,
|
||||||
|
];
|
||||||
|
$validator = Validator::make(Input::all(), $rules);
|
||||||
|
|
||||||
|
if ($validator->fails()) {
|
||||||
|
return view('admin.shipping.edit', $data)->withErrors($validator);
|
||||||
|
|
||||||
|
}
|
||||||
|
$data = Input::all();
|
||||||
|
|
||||||
|
$shipping->name = $data['name'];
|
||||||
|
$shipping->free = $data['free'];
|
||||||
|
$shipping->active = isset($data['active']) ? true : false;
|
||||||
|
$shipping->save();
|
||||||
|
|
||||||
|
|
||||||
|
\Session()->flash('alert-save', true);
|
||||||
|
|
||||||
|
return redirect(route('admin_shipping_edit', [$shipping->id]));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function deleteShipping($shipping_id)
|
||||||
|
{
|
||||||
|
$shipping = Shipping::findOrFail($shipping_id);
|
||||||
|
$shipping->delete();
|
||||||
|
|
||||||
|
\Session()->flash('alert-success', "Versandkosten gelöscht");
|
||||||
|
return redirect('/admin/shippings');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -5,6 +5,7 @@ namespace App\Http\Controllers\Web;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Models\Product;
|
use App\Models\Product;
|
||||||
|
use Util;
|
||||||
use Yard;
|
use Yard;
|
||||||
use Input;
|
use Input;
|
||||||
|
|
||||||
|
|
@ -56,7 +57,10 @@ class CardController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
public function showCard(){
|
public function showCard(){
|
||||||
return view('web.templates.card');
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop(),
|
||||||
|
];
|
||||||
|
return view('web.templates.card', $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function updateCard(){
|
public function updateCard(){
|
||||||
|
|
@ -73,11 +77,17 @@ class CardController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
public function checkoutCard(){
|
public function checkoutCard(){
|
||||||
return view('web.templates.checkout');
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop(),
|
||||||
|
];
|
||||||
|
return view('web.templates.checkout', $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function checkoutFinalCard(){
|
public function checkoutFinalCard(){
|
||||||
return view('web.templates.checkout-final');
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop(),
|
||||||
|
];
|
||||||
|
return view('web.templates.checkout-final', $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ use App\Http\Controllers\Controller;
|
||||||
use App\Models\Category;
|
use App\Models\Category;
|
||||||
use App\Models\Product;
|
use App\Models\Product;
|
||||||
use Input;
|
use Input;
|
||||||
|
use Util;
|
||||||
|
|
||||||
class SiteController extends Controller
|
class SiteController extends Controller
|
||||||
{
|
{
|
||||||
|
|
@ -22,7 +23,10 @@ class SiteController extends Controller
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
return view('web.index');
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop()
|
||||||
|
];
|
||||||
|
return view('web.index', $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function site($site, $subsite = false, $product_slug = false)
|
public function site($site, $subsite = false, $product_slug = false)
|
||||||
|
|
@ -35,6 +39,7 @@ class SiteController extends Controller
|
||||||
if ($category && $product) {
|
if ($category && $product) {
|
||||||
|
|
||||||
$data = [
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop(),
|
||||||
'subsite' => $subsite,
|
'subsite' => $subsite,
|
||||||
'categories' => Category::where('active', true)->orderBy('pos', 'ASC')->get(),
|
'categories' => Category::where('active', true)->orderBy('pos', 'ASC')->get(),
|
||||||
'product' => $product,
|
'product' => $product,
|
||||||
|
|
@ -51,6 +56,7 @@ class SiteController extends Controller
|
||||||
$category = Category::where('slug', $subsite)->where('active', true)->first();
|
$category = Category::where('slug', $subsite)->where('active', true)->first();
|
||||||
if ($category) {
|
if ($category) {
|
||||||
$data = [
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop(),
|
||||||
'subsite' => $subsite,
|
'subsite' => $subsite,
|
||||||
'categories' => Category::where('active', true)->orderBy('pos', 'ASC')->get(),
|
'categories' => Category::where('active', true)->orderBy('pos', 'ASC')->get(),
|
||||||
'products' => Product::whereHas('categories', function ($query) use ($category) {
|
'products' => Product::whereHas('categories', function ($query) use ($category) {
|
||||||
|
|
@ -65,6 +71,7 @@ class SiteController extends Controller
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$data = [
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop(),
|
||||||
'subsite' => 'alle-produkte',
|
'subsite' => 'alle-produkte',
|
||||||
'categories' => Category::where('active', true)->orderBy('pos', 'ASC')->get(),
|
'categories' => Category::where('active', true)->orderBy('pos', 'ASC')->get(),
|
||||||
'products' => Product::where('active', true)->orderBy('pos', 'ASC')->get(),
|
'products' => Product::where('active', true)->orderBy('pos', 'ASC')->get(),
|
||||||
|
|
@ -72,17 +79,19 @@ class SiteController extends Controller
|
||||||
];
|
];
|
||||||
return view('web.templates.'.$site, $data);
|
return view('web.templates.'.$site, $data);
|
||||||
}
|
}
|
||||||
|
$data = [
|
||||||
|
'user_shop' => Util::getUserShop()
|
||||||
|
];
|
||||||
if($subsite){
|
if($subsite){
|
||||||
if(!view()->exists('web.templates.'.$subsite)){
|
if(!view()->exists('web.templates.'.$subsite)){
|
||||||
abort(404);
|
abort(404);
|
||||||
}
|
}
|
||||||
return view('web.templates.'.$subsite);
|
return view('web.templates.'.$subsite, $data);
|
||||||
}
|
}
|
||||||
if(!view()->exists('web.templates.'.$site)){
|
if(!view()->exists('web.templates.'.$site)){
|
||||||
abort(404);
|
abort(404);
|
||||||
}
|
}
|
||||||
return view('web.templates.'.$site);
|
return view('web.templates.'.$site, $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,7 @@ class Kernel extends HttpKernel
|
||||||
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
|
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
|
||||||
'admin' => \App\Http\Middleware\Admin::class,
|
'admin' => \App\Http\Middleware\Admin::class,
|
||||||
'superadmin' => \App\Http\Middleware\SuperAdmin::class,
|
'superadmin' => \App\Http\Middleware\SuperAdmin::class,
|
||||||
|
'subdomain' => \App\Http\Middleware\Subdomain::class,
|
||||||
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
|
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
|
||||||
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
|
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
|
||||||
'can' => \Illuminate\Auth\Middleware\Authorize::class,
|
'can' => \Illuminate\Auth\Middleware\Authorize::class,
|
||||||
|
|
|
||||||
35
app/Http/Middleware/Subdomain.php
Executable file
35
app/Http/Middleware/Subdomain.php
Executable file
|
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Middleware;
|
||||||
|
|
||||||
|
use App\Models\UserShop;
|
||||||
|
use Closure;
|
||||||
|
use Auth;
|
||||||
|
use phpDocumentor\Reflection\DocBlock\Tags\Uses;
|
||||||
|
use Util;
|
||||||
|
|
||||||
|
class Subdomain
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Handle an incoming request.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @param \Closure $next
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function handle($request, Closure $next)
|
||||||
|
{
|
||||||
|
|
||||||
|
if(!empty($request->route('subdomain'))){
|
||||||
|
$user_shop = UserShop::where('slug', $request->route('subdomain'))->where('active', 1)->first();
|
||||||
|
$request->route()->forgetParameter('subdomain');
|
||||||
|
Util::setPostRoute('user.');
|
||||||
|
if($user_shop){
|
||||||
|
\Session::put('user_shop', $user_shop);
|
||||||
|
return $next($request);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return redirect(config('app.url'));
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
50
app/Models/Shipping.php
Normal file
50
app/Models/Shipping.php
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
class Shipping extends Model
|
||||||
|
{
|
||||||
|
protected $table = 'shippings';
|
||||||
|
|
||||||
|
protected $casts = [
|
||||||
|
'trans_name' => 'array',
|
||||||
|
];
|
||||||
|
|
||||||
|
protected $fillable = [
|
||||||
|
'name', 'active', 'free'
|
||||||
|
];
|
||||||
|
|
||||||
|
public function _format_number($value){
|
||||||
|
return preg_replace("/[^0-9,]/", "", $value);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setFreeAttribute( $value ) {
|
||||||
|
if($value == ""){
|
||||||
|
$this->attributes['free'] = null;
|
||||||
|
}else{
|
||||||
|
$value = $this->_format_number($value);
|
||||||
|
$this->attributes['free'] = floatval(str_replace(',', '.', $value));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public function getFormattedFree()
|
||||||
|
{
|
||||||
|
if($this->attributes['free'] === null) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
if(\App::getLocale() == "en"){
|
||||||
|
return number_format($this->attributes['free'], 2, '.', ',');
|
||||||
|
}
|
||||||
|
return number_format($this->attributes['free'], 2, ',', '.');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function countries(){
|
||||||
|
return $this->hasMany('App\Models\ShippingCountry', 'shipping_id', 'id');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function prices(){
|
||||||
|
return $this->hasMany('App\Models\ShippingPrice', 'shipping_id', 'id');
|
||||||
|
}
|
||||||
|
}
|
||||||
25
app/Models/ShippingCountry.php
Normal file
25
app/Models/ShippingCountry.php
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
class ShippingCountry extends Model
|
||||||
|
{
|
||||||
|
protected $table = 'shipping_countries';
|
||||||
|
|
||||||
|
|
||||||
|
protected $fillable = [
|
||||||
|
'shipping_id', 'country_id'
|
||||||
|
];
|
||||||
|
|
||||||
|
public function shipping()
|
||||||
|
{
|
||||||
|
return $this->belongsTo('App\Models\Shipping', 'shipping_id');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function country()
|
||||||
|
{
|
||||||
|
return $this->belongsTo('App\Models\Country', 'country_id');
|
||||||
|
}
|
||||||
|
}
|
||||||
93
app/Models/ShippingPrice.php
Normal file
93
app/Models/ShippingPrice.php
Normal file
|
|
@ -0,0 +1,93 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
class ShippingPrice extends Model
|
||||||
|
{
|
||||||
|
protected $table = 'shipping_prices';
|
||||||
|
|
||||||
|
protected $fillable = [
|
||||||
|
'shipping_id', 'price', 'tax', 'factor', 'total_from', 'total_to', 'weight_from', 'weight_to',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function shipping()
|
||||||
|
{
|
||||||
|
return $this->belongsTo('App\Models\Shipping', 'shipping_id');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function _format_number($value){
|
||||||
|
return preg_replace("/[^0-9,]/", "", $value);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setPriceAttribute( $value ) {
|
||||||
|
$value = $this->_format_number($value);
|
||||||
|
$this->attributes['price'] = floatval(str_replace(',', '.', $value));
|
||||||
|
}
|
||||||
|
public function setFactorAttribute( $value ) {
|
||||||
|
$value = $this->_format_number($value);
|
||||||
|
$this->attributes['factor'] = floatval(str_replace(',', '.', $value));
|
||||||
|
}
|
||||||
|
public function setTaxAttribute( $value ) {
|
||||||
|
$value = $this->_format_number($value);
|
||||||
|
$this->attributes['tax'] = floatval(str_replace(',', '.', $value));
|
||||||
|
}
|
||||||
|
public function setPriceOldAttribute( $value ) {
|
||||||
|
$value = $this->_format_number($value);
|
||||||
|
$this->attributes['price_old'] = floatval(str_replace(',', '.', $value));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setTotalFromAttribute( $value ) {
|
||||||
|
$value = $this->_format_number($value);
|
||||||
|
$this->attributes['total_from'] = floatval(str_replace(',', '.', $value));
|
||||||
|
}
|
||||||
|
public function setTotalToAttribute( $value ) {
|
||||||
|
$value = $this->_format_number($value);
|
||||||
|
$this->attributes['total_to'] = floatval(str_replace(',', '.', $value));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function getFormattedPrice()
|
||||||
|
{
|
||||||
|
if(\App::getLocale() == "en"){
|
||||||
|
return number_format($this->attributes['price'], 2, '.', ',');
|
||||||
|
}
|
||||||
|
return number_format($this->attributes['price'], 2, ',', '.');
|
||||||
|
}
|
||||||
|
public function getFormattedTax()
|
||||||
|
{
|
||||||
|
if(\App::getLocale() == "en"){
|
||||||
|
return number_format($this->attributes['tax'], 2, '.', ',');
|
||||||
|
}
|
||||||
|
return number_format($this->attributes['tax'], 2, ',', '.');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getFormattedFactor()
|
||||||
|
{
|
||||||
|
if(\App::getLocale() == "en"){
|
||||||
|
return number_format($this->attributes['factor'], 2, '.', ',');
|
||||||
|
}
|
||||||
|
return number_format($this->attributes['factor'], 2, ',', '.');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function getFormatTotalFrom()
|
||||||
|
{
|
||||||
|
if(\App::getLocale() == "en"){
|
||||||
|
return number_format($this->attributes['total_from'], 2, '.', ',');
|
||||||
|
}
|
||||||
|
return number_format($this->attributes['total_from'], 2, ',', '.');
|
||||||
|
}
|
||||||
|
public function getFormattedTotalTo()
|
||||||
|
{
|
||||||
|
if(\App::getLocale() == "en"){
|
||||||
|
return number_format($this->attributes['total_to'], 2, '.', ',');
|
||||||
|
}
|
||||||
|
return number_format($this->attributes['total_to'], 2, ',', '.');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -55,7 +55,7 @@ class UserShop extends Model
|
||||||
|
|
||||||
public function getSubdomainStatus()
|
public function getSubdomainStatus()
|
||||||
{
|
{
|
||||||
if($this->is_online != NULL){
|
if($this->is_online !== NULL){
|
||||||
return $this->is_online;
|
return $this->is_online;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ namespace App\Services;
|
||||||
class Util
|
class Util
|
||||||
{
|
{
|
||||||
|
|
||||||
|
private static $postRoute = 'base.';
|
||||||
|
|
||||||
public static function formatDate(){
|
public static function formatDate(){
|
||||||
if(\App::getLocale() == "en"){
|
if(\App::getLocale() == "en"){
|
||||||
|
|
@ -28,4 +29,30 @@ class Util
|
||||||
}
|
}
|
||||||
return 'd.m.Y - H:i';
|
return 'd.m.Y - H:i';
|
||||||
}
|
}
|
||||||
|
public static function getPostRoute(){
|
||||||
|
return self::$postRoute;
|
||||||
|
}
|
||||||
|
public static function setPostRoute($postRoute){
|
||||||
|
self::$postRoute = $postRoute;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getUserShop(){
|
||||||
|
if(\Session::has('user_shop')){
|
||||||
|
if($user_shop = \Session::get('user_shop')){
|
||||||
|
return $user_shop;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function addRoute($p = []){
|
||||||
|
$b = [];
|
||||||
|
if(\Session::has('user_shop')){
|
||||||
|
if($user_shop = \Session::get('user_shop')){
|
||||||
|
$b = ['subdomain' => $user_shop->slug];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return array_merge($p, $b);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -31,6 +31,9 @@ class CreateProductsTable extends Migration
|
||||||
|
|
||||||
$table->decimal('price_old', 8, 2)->nullable(); //streichpreis
|
$table->decimal('price_old', 8, 2)->nullable(); //streichpreis
|
||||||
|
|
||||||
|
$table->unsignedInteger('weight')->nullable();
|
||||||
|
|
||||||
|
|
||||||
$table->string('contents')->nullable();
|
$table->string('contents')->nullable();
|
||||||
$table->string('number')->nullable();
|
$table->string('number')->nullable();
|
||||||
$table->string('icons')->nullable(); //as array cast
|
$table->string('icons')->nullable(); //as array cast
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class CreateShippingsTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('shippings', function (Blueprint $table) {
|
||||||
|
$table->increments('id');
|
||||||
|
|
||||||
|
$table->string('name')->index();
|
||||||
|
$table->text('trans_name')->nullable();
|
||||||
|
|
||||||
|
$table->decimal('free', 8, 2)->nullable();
|
||||||
|
|
||||||
|
$table->boolean('active')->default(false);
|
||||||
|
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('shippings');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,49 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class CreateShippingPricesTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('shipping_prices', function (Blueprint $table) {
|
||||||
|
$table->increments('id');
|
||||||
|
$table->unsignedInteger('shipping_id');
|
||||||
|
|
||||||
|
$table->decimal('price', 8, 2)->nullable();
|
||||||
|
$table->decimal('tax', 5, 2)->nullable();
|
||||||
|
$table->decimal('factor', 5, 2)->nullable();
|
||||||
|
|
||||||
|
$table->decimal('total_from', 8, 2)->nullable();
|
||||||
|
$table->decimal('total_to', 8, 2)->nullable();
|
||||||
|
|
||||||
|
$table->unsignedInteger('weight_from')->nullable();
|
||||||
|
$table->unsignedInteger('weight_to')->nullable();
|
||||||
|
|
||||||
|
|
||||||
|
$table->timestamps();
|
||||||
|
|
||||||
|
$table->foreign('shipping_id')
|
||||||
|
->references('id')
|
||||||
|
->on('shippings')
|
||||||
|
->onDelete('cascade');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('shipping_prices');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class CreateShippingCountriesTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('shipping_countries', function (Blueprint $table) {
|
||||||
|
$table->increments('id');
|
||||||
|
$table->unsignedInteger('shipping_id');
|
||||||
|
$table->unsignedInteger('country_id')->nullable()->index();
|
||||||
|
|
||||||
|
$table->timestamps();
|
||||||
|
|
||||||
|
$table->foreign('shipping_id')
|
||||||
|
->references('id')
|
||||||
|
->on('shippings')
|
||||||
|
->onDelete('cascade');
|
||||||
|
|
||||||
|
$table->foreign('country_id')
|
||||||
|
->references('id')
|
||||||
|
->on('countries');
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('shipping_countries');
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
public/assets/images/logo_bio.png
Normal file
BIN
public/assets/images/logo_bio.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
BIN
public/assets/images/logo_derma.png
Normal file
BIN
public/assets/images/logo_derma.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 30 KiB |
|
|
@ -128,6 +128,7 @@
|
||||||
"OK": "OK",
|
"OK": "OK",
|
||||||
"Contacts": "Kontake",
|
"Contacts": "Kontake",
|
||||||
"active": "aktiviert",
|
"active": "aktiviert",
|
||||||
|
"inactive": "deaktiviert",
|
||||||
"verified": "verifiziert",
|
"verified": "verifiziert",
|
||||||
"'E-Mail": "'E-Mail",
|
"'E-Mail": "'E-Mail",
|
||||||
"create new Contact": "Neuen Kontakt erstellen",
|
"create new Contact": "Neuen Kontakt erstellen",
|
||||||
|
|
@ -189,10 +190,13 @@
|
||||||
"available":"erreichbar",
|
"available":"erreichbar",
|
||||||
"not available":"nicht erreichbar",
|
"not available":"nicht erreichbar",
|
||||||
"active since":"Aktiv seit",
|
"active since":"Aktiv seit",
|
||||||
|
"open since":"Eröffnet seit",
|
||||||
"Domain":"Domain",
|
"Domain":"Domain",
|
||||||
"name":"Name",
|
"name":"Name",
|
||||||
"not available copy":" Bei neu angelegten Shops dauert es einige Minuten, bis die Domain zu erreichen ist. Bitte schauen Sie in einigen Minuten noch einmal nach.",
|
"not available copy":" Bei neu angelegten Shops dauert es einige Minuten, bis die Domain zu erreichen ist. Bitte schauen Sie in einigen Minuten noch einmal nach.",
|
||||||
"shop image":"Dein Shop Bild",
|
"shop image":"Dein Shop Bild",
|
||||||
"shop image copy":"Lade hier ein Foto / Bild / Logo von Dir hoch.",
|
"shop image copy":"Lade hier ein Foto / Bild / Logo von Dir hoch.",
|
||||||
|
"open your shop": "Eröffne Deinen eigenen mivita-Shop",
|
||||||
|
"settings your shop":"Deine Shop-Einstellungen",
|
||||||
"":""
|
"":""
|
||||||
}
|
}
|
||||||
72
resources/views/admin/shipping/edit.blade.php
Executable file
72
resources/views/admin/shipping/edit.blade.php
Executable file
|
|
@ -0,0 +1,72 @@
|
||||||
|
@extends('layouts.layout-2')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
|
||||||
|
@if ($errors->any())
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-12">
|
||||||
|
<div class="alert alert-danger">
|
||||||
|
<ul>
|
||||||
|
@foreach ($errors->all() as $error)
|
||||||
|
<li>{{ $error }}</li>
|
||||||
|
@endforeach
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<h4 class="font-weight-bold py-2 mb-2">
|
||||||
|
{{ __('Create/Edit Versandkosten') }}
|
||||||
|
</h4>
|
||||||
|
|
||||||
|
{!! Form::open(['url' => route('admin_shipping_store'), 'class' => 'form-horizontal', 'id'=>'']) !!}
|
||||||
|
<input type="hidden" name="id" id="id" value="@if($value->id>0){{$value->id}}@else new @endif">
|
||||||
|
|
||||||
|
<div class="text-left mt-0 mb-2">
|
||||||
|
<button type="submit" class="btn btn-submit">{{ __('save') }}</button>
|
||||||
|
<a href="{{ route('admin_shippings') }}" class="btn btn-default">{{ __('back') }}</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="card mb-2">
|
||||||
|
|
||||||
|
<h5 class="card-header">
|
||||||
|
{{ __('Versandkosten') }}
|
||||||
|
|
||||||
|
</h5>
|
||||||
|
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="custom-control custom-checkbox float-right">
|
||||||
|
{!! Form::checkbox('active', 1, $value->active, ['class'=>'custom-control-input']) !!}
|
||||||
|
<span class="custom-control-label">{{__('aktiv')}}</span>
|
||||||
|
</label>
|
||||||
|
<label class="form-label" for="name">{{ __('Name') }}*</label>
|
||||||
|
{{ Form::text('name', $value->name, array('placeholder'=>__('Name'), 'class'=>'form-control'.($errors->has('name') ? ' is-invalid' : ''), 'id'=>'name', 'required')) }}
|
||||||
|
</div>
|
||||||
|
@if ($errors->has('name'))
|
||||||
|
<span class="invalid-feedback" style="display: inline-block;">
|
||||||
|
<strong>{{ $errors->first('name') }}</strong>
|
||||||
|
</span>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="form-label" for="title">{{ __('Free') }}</label>
|
||||||
|
{{ Form::text('free', $value->getFormattedFree(), array('placeholder'=>__('Free'), 'class'=>'form-control', 'id'=>'free')) }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="text-left mt-0 mb-2">
|
||||||
|
<button type="submit" class="btn btn-submit">{{ __('save') }}</button>
|
||||||
|
<a href="{{ route('admin_shippings') }}" class="btn btn-default">{{ __('back') }}</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{!! Form::close() !!}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@endsection
|
||||||
59
resources/views/admin/shipping/index.blade.php
Executable file
59
resources/views/admin/shipping/index.blade.php
Executable file
|
|
@ -0,0 +1,59 @@
|
||||||
|
@extends('layouts.layout-2')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
<div class="card">
|
||||||
|
<h6 class="card-header">
|
||||||
|
{{__('Versandkosten')}}
|
||||||
|
</h6>
|
||||||
|
<div class="card-datatable table-responsive">
|
||||||
|
<table class="datatables-style table table-striped table-bordered">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="max-width: 60px;"> </th>
|
||||||
|
<th>{{__('Name')}}</th>
|
||||||
|
<th>{{__('Status')}}</th>
|
||||||
|
<th></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@foreach($values as $value)
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<a href="{{route('admin_shipping_edit', [$value->id])}}" class="btn icon-btn btn-sm btn-primary">
|
||||||
|
<span class="far fa-edit"></span>
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td>{{ $value->name }}</td>
|
||||||
|
<td data-sort="{{ $value->active }}">@if($value->active) <span class="badge badge-pill badge-success"><i class="far fa-check"></i></span>@else<span class="badge badge-pill badge-danger"><i class="far fa-times"></i></span>@endif</td>
|
||||||
|
<td><a class="text-danger" href="{{ route('admin_shipping_delete', [$value->id]) }}" onclick="return confirm('{{__('Really delete entry?')}}');"><i class="far fa-trash-alt"></i></a></td>
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<div class="mt-4 ml-4">
|
||||||
|
<a href="{{route('admin_shipping_edit', ['new'])}}" class="btn btn-sm btn-primary">
|
||||||
|
{{__('Neue Versandkosten erstellen')}}
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$( document ).ready(function() {
|
||||||
|
|
||||||
|
$('.datatables-style').dataTable({
|
||||||
|
"bLengthChange": false,
|
||||||
|
"iDisplayLength": 50,
|
||||||
|
"aoColumns": [
|
||||||
|
{ "sWidth": "10%" },
|
||||||
|
{ "sWidth": "80%" },
|
||||||
|
{ "sWidth": "10%" },
|
||||||
|
],
|
||||||
|
"language": {
|
||||||
|
"url": "/js/German.json"
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
@endsection
|
||||||
|
|
@ -54,7 +54,21 @@
|
||||||
@if($user->active == 1 && !$user->user_shop)
|
@if($user->active == 1 && !$user->user_shop)
|
||||||
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
|
||||||
<h4>{{__('Your Shop') }}</h4>
|
<h4>{{__('Your Shop') }}</h4>
|
||||||
<a href="{{route('user_shop')}}" class="btn btn-secondary">{{__('open your shop')}}</a>
|
@if($user->shop)
|
||||||
|
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
|
||||||
|
<strong>{{__('open since')}}</strong> {{__('at')}} {{ $user->shop->getActiveDateFormat() }}</p>
|
||||||
|
@if($user->shop->active)
|
||||||
|
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
|
||||||
|
<strong>{{__('Status')}}</strong> {{ __('active') }}</p>
|
||||||
|
@else
|
||||||
|
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
|
||||||
|
<strong>{{__('Status')}}</strong> {{ __('inactive') }}</p>
|
||||||
|
@endif
|
||||||
|
<a href="{{route('user_shop')}}" class="btn btn-secondary">{{__('settings your shop')}}</a>
|
||||||
|
|
||||||
|
@else
|
||||||
|
<a href="{{route('user_shop')}}" class="btn btn-secondary">{{__('open your shop')}}</a>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@endif
|
@endif
|
||||||
|
|
|
||||||
|
|
@ -117,6 +117,8 @@
|
||||||
|
|
||||||
<script src="{{ asset('/vendor/libs/summernote/dist/summernote-bs4.min.js') }}"></script>
|
<script src="{{ asset('/vendor/libs/summernote/dist/summernote-bs4.min.js') }}"></script>
|
||||||
<script src="{{ asset('/vendor/libs/summernote/lang/summernote-de-DE.js') }}"></script>
|
<script src="{{ asset('/vendor/libs/summernote/lang/summernote-de-DE.js') }}"></script>
|
||||||
|
<script src="{{ asset('/vendor/libs/summernote-cleaner/summernote-cleaner.js') }}"></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="{{ asset('/js/forms_file-upload.js') }}"></script>
|
<script src="{{ asset('/js/forms_file-upload.js') }}"></script>
|
||||||
<script src="{{ asset('/vendor/libs/slim-image-cropper/slim/slim.kickstart.min.js') }}"></script>
|
<script src="{{ asset('/vendor/libs/slim-image-cropper/slim/slim.kickstart.min.js') }}"></script>
|
||||||
|
|
@ -136,6 +138,20 @@
|
||||||
$('.summernote').summernote({
|
$('.summernote').summernote({
|
||||||
height: 140,
|
height: 140,
|
||||||
lang: 'de-DE',
|
lang: 'de-DE',
|
||||||
|
cleaner:{
|
||||||
|
action: 'both', // both|button|paste 'button' only cleans via toolbar button, 'paste' only clean when pasting content, both does both options.
|
||||||
|
newline: '<br>', // Summernote's default is to use '<p><br></p>'
|
||||||
|
notStyle: 'position:absolute;top:0;left:0;right:0', // Position of Notification
|
||||||
|
icon: '<i class="note-icon">[Your Button]</i>',
|
||||||
|
keepHtml: false, // Remove all Html formats
|
||||||
|
keepOnlyTags: ['<p>', '<br>', '<ul>', '<li>', '<b>', '<strong>','<i>', '<a>'], // If keepHtml is true, remove all tags except these
|
||||||
|
keepClasses: false, // Remove Classes
|
||||||
|
badTags: ['style', 'script', 'applet', 'embed', 'noframes', 'noscript', 'html'], // Remove full tags with contents
|
||||||
|
badAttributes: ['style', 'start'], // Remove attributes from remaining tags
|
||||||
|
limitChars: false, // 0/false|# 0/false disables option
|
||||||
|
limitDisplay: 'both', // text|html|both
|
||||||
|
limitStop: false // true/false
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$('.summernote-small').summernote({
|
$('.summernote-small').summernote({
|
||||||
|
|
@ -148,9 +164,27 @@
|
||||||
['fontsize', ['fontsize']],
|
['fontsize', ['fontsize']],
|
||||||
['color', ['color']],
|
['color', ['color']],
|
||||||
['para', ['ul', 'ol', 'paragraph']],
|
['para', ['ul', 'ol', 'paragraph']],
|
||||||
['height', ['height']]
|
['height', ['height']],
|
||||||
]
|
['view',['fullscreen','codeview']],
|
||||||
|
|
||||||
|
],
|
||||||
|
cleaner:{
|
||||||
|
action: 'both', // both|button|paste 'button' only cleans via toolbar button, 'paste' only clean when pasting content, both does both options.
|
||||||
|
newline: '<br>', // Summernote's default is to use '<p><br></p>'
|
||||||
|
notStyle: 'position:absolute;top:0;left:0;right:0', // Position of Notification
|
||||||
|
icon: '<i class="note-icon">[Your Button]</i>',
|
||||||
|
keepHtml: false, // Remove all Html formats
|
||||||
|
keepOnlyTags: ['<p>', '<br>', '<ul>', '<li>', '<b>', '<strong>','<i>', '<a>'], // If keepHtml is true, remove all tags except these
|
||||||
|
keepClasses: false, // Remove Classes
|
||||||
|
badTags: ['style', 'script', 'applet', 'embed', 'noframes', 'noscript', 'html'], // Remove full tags with contents
|
||||||
|
badAttributes: ['style', 'start'], // Remove attributes from remaining tags
|
||||||
|
limitChars: false, // 0/false|# 0/false disables option
|
||||||
|
limitDisplay: 'both', // text|html|both
|
||||||
|
limitStop: false // true/false
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
$('.note-status-output').hide();
|
||||||
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,10 @@
|
||||||
<a href="{{ route('admin_users') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-ribbon"></i><div>{{ __('User Rechte') }}</div></a>
|
<a href="{{ route('admin_users') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-ribbon"></i><div>{{ __('User Rechte') }}</div></a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="sidenav-item{{ Request::is('admin/shippings') ? ' active' : '' }} {{ Request::is('admin/shipping/edit/*') ? ' active' : '' }}">
|
||||||
|
<a href="{{ route('admin_shippings') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-gift"></i><div>{{ __('Versandkosten') }}</div></a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@endif
|
@endif
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,11 @@
|
||||||
</li>
|
</li>
|
||||||
@if(!$user->shop->getSubdomainStatus())
|
@if(!$user->shop->getSubdomainStatus())
|
||||||
<li class="list-group-item d-flex justify-content-between align-items-center">
|
<li class="list-group-item d-flex justify-content-between align-items-center">
|
||||||
<small>{{ __('not available copy') }}</small>
|
<small>{{ __('not available copy') }}
|
||||||
|
<a href="" class="btn icon-btn btn-xs btn-outline-primary">
|
||||||
|
<span class="lnr lnr-redo"></span>
|
||||||
|
</a>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
@endif
|
@endif
|
||||||
<li class="list-group-item d-flex justify-content-between align-items-center">
|
<li class="list-group-item d-flex justify-content-between align-items-center">
|
||||||
|
|
|
||||||
|
|
@ -1,230 +1 @@
|
||||||
@extends('web.layouts.layout')
|
@include($user_shop ?'web.user.start' : 'web.start')
|
||||||
|
|
||||||
@section('content')
|
|
||||||
|
|
||||||
|
|
||||||
<style type="text/css">
|
|
||||||
.tp-caption {
|
|
||||||
text-shadow: none;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<!-- REVOLUTION SLIDER -->
|
|
||||||
<section id="slider" class="slider fullwidthbanner-container roundedcorners">
|
|
||||||
|
|
||||||
<div class="fullwidthbanner" data-height="500" data-navigationStyle="">
|
|
||||||
<ul class="hide">
|
|
||||||
|
|
||||||
<!-- SLIDE -->
|
|
||||||
<li data-transition="fade" data-slotamount="1" data-masterspeed="1000" data-saveperformance="off"
|
|
||||||
data-title="Slide">
|
|
||||||
|
|
||||||
<img src="{{ asset('assets/images/1x1.png') }}" data-lazyload="{{ asset('assets/images/slider-hg_gruen-mitte.jpg') }}" alt=""
|
|
||||||
data-bgfit="cover" data-bgposition="center top" data-bgrepeat="no-repeat"/>
|
|
||||||
|
|
||||||
<div class="overlay dark-0"><!-- dark overlay [1 to 9 opacity] --></div>
|
|
||||||
|
|
||||||
<div class="tp-caption customin ltl tp-resizeme text_white"
|
|
||||||
data-x="center"
|
|
||||||
data-y="60"
|
|
||||||
data-customin="x:0;y:150;z:0;rotationZ:0;scaleX:1;scaleY:1;skewX:0;skewY:0;opacity:0;transformPerspective:200;transformOrigin:50% 0%;"
|
|
||||||
data-speed="800"
|
|
||||||
data-start="1000"
|
|
||||||
data-easing="easeOutQuad"
|
|
||||||
data-splitin="none"
|
|
||||||
data-splitout="none"
|
|
||||||
data-elementdelay="0.01"
|
|
||||||
data-endelementdelay="0.1"
|
|
||||||
data-endspeed="1000"
|
|
||||||
data-endeasing="Power4.easeIn" style="z-index: 10;">
|
|
||||||
<span class="weight-400">Deutscher Direktvertrieb für</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tp-caption customin ltl tp-resizeme large_bold_white"
|
|
||||||
data-x="center"
|
|
||||||
data-y="100"
|
|
||||||
data-customin="x:0;y:150;z:0;rotationZ:0;scaleX:1;scaleY:1;skewX:0;skewY:0;opacity:0;transformPerspective:200;transformOrigin:50% 0%;"
|
|
||||||
data-speed="800"
|
|
||||||
data-start="1200"
|
|
||||||
data-easing="easeOutQuad"
|
|
||||||
data-splitin="none"
|
|
||||||
data-splitout="none"
|
|
||||||
data-elementdelay="0.01"
|
|
||||||
data-endelementdelay="0.1"
|
|
||||||
data-endspeed="1000"
|
|
||||||
data-endeasing="Power4.easeIn" style="z-index: 10;">
|
|
||||||
<span class="h1">100% Premium Bio Aloe Vera</span>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<div class="tp-bannertimer"></div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<!-- /REVOLUTION SLIDER -->
|
|
||||||
|
|
||||||
|
|
||||||
<!-- -->
|
|
||||||
<section>
|
|
||||||
<div class="container">
|
|
||||||
|
|
||||||
<p class="">MIVITA ist ein Unternehmen mit Standort in Deutschland, das innovative und umweltfreundliche
|
|
||||||
sowie hochwertige Produkte vertreibt. Seit seinem Markteintritt bekennt sich das MIVITA Unternehmen zu einem
|
|
||||||
Werteverständnis, bei dem die Zufriedenheit der Kunden, wie auch die Verantwortung für die Umwelt im Fokus
|
|
||||||
stehen.</p>
|
|
||||||
|
|
||||||
<div class="divider divider-center divider-color"><!-- divider -->
|
|
||||||
<i class="fa fa-chevron-down"></i>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- BORN TO BE A WINNER -->
|
|
||||||
<article class="row">
|
|
||||||
<div class="col-md-6">
|
|
||||||
<!-- OWL SLIDER -->
|
|
||||||
<div class="owl-carousel buttons-autohide controlls-over nomargin"
|
|
||||||
data-plugin-options='{"items": 1, "autoHeight": true, "navigation": true, "pagination": true, "transitionStyle":"backSlide", "progressBar":"true"}'>
|
|
||||||
<div>
|
|
||||||
<img class="img-responsive" src="{{ asset('assets/images/aloe-vera-farm-mallorca.jpg') }}" alt="">
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<img class="img-responsive" src="{{ asset('assets/images/beratung-ruth-mallorca.jpg') }}" alt="">
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<img class="img-responsive" src="{{ asset('assets/images/mivita-schulung-mallorca.jpg') }}" alt="">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<!-- /OWL SLIDER -->
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<h2>Warum MIVITA?</h2>
|
|
||||||
<p>Unsere Kunden vertrauen zurecht auf die exzellenten Eigenschaften der MIVITA Produkte. Damit trifft
|
|
||||||
jeder aktiv eine kluge Entscheidung für Gesundheit und Umwelt.</p>
|
|
||||||
|
|
||||||
<p>Wir legen nicht nur auf die Qualität unserer Produkte einen hohen Stellenwert, sondern natürlich auch
|
|
||||||
auf umfassende, kompetente Beratung durch freundliche und fachkundige Berater und Beraterinnen.</p>
|
|
||||||
|
|
||||||
<p>Wir entwickeln und vertreiben ausschließlich Produkte, die qualitativ hochwertig sind. So sind sie
|
|
||||||
bei sachgemäßer Anwendung und Pflege langlebig und sehr ergiebig. Faktoren, die uns die
|
|
||||||
Zufriedenheit unserer Kunden sichern.</p>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
<!-- /BORN TO BE A WINNER -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<!-- / -->
|
|
||||||
|
|
||||||
|
|
||||||
<!-- -->
|
|
||||||
<section>
|
|
||||||
<div class="container">
|
|
||||||
|
|
||||||
<!-- FEATURED BOXES 3 -->
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-4 col-xs-6">
|
|
||||||
<div class="text-center">
|
|
||||||
<h3 class="h3">Aloe Vera</h3>
|
|
||||||
<p class="">Mit höchstem Anspruch arbeiten wir gemeinsam mit der Aloe Vera Farm auf Mallorca
|
|
||||||
zusammen, die weltweite Qualität der Spitzenklasse garantiert.</p>
|
|
||||||
|
|
||||||
<a href="/aloevera">
|
|
||||||
Mehr
|
|
||||||
<!-- /word rotator -->
|
|
||||||
<span class="word-rotator" data-delay="2000">
|
|
||||||
<span class="items">
|
|
||||||
<span>lesen</span>
|
|
||||||
<span>JETZT</span>
|
|
||||||
</span>
|
|
||||||
</span><!-- /word rotator -->
|
|
||||||
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
|
||||||
</a>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-4 col-xs-6">
|
|
||||||
<div class="text-center">
|
|
||||||
<h3 class="h3">Produkte</h3>
|
|
||||||
<p class="">Hier findest Du einen Überblick über das komplette Premium-Produktsortiment von MIVITA.
|
|
||||||
Vom hochwertigen Aloe Saft bis zu wohltuender Kosmetik.</p>
|
|
||||||
|
|
||||||
<a href="/produkte">
|
|
||||||
Mehr
|
|
||||||
<!-- /word rotator -->
|
|
||||||
<span class="word-rotator" data-delay="2000">
|
|
||||||
<span class="items">
|
|
||||||
<span>lesen</span>
|
|
||||||
<span>JETZT</span>
|
|
||||||
</span>
|
|
||||||
</span><!-- /word rotator -->
|
|
||||||
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
|
||||||
</a>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-4 col-xs-6">
|
|
||||||
<div class="text-center">
|
|
||||||
<h3 class="h3">Vertriebspartner</h3>
|
|
||||||
<p class="">Werde auch Du ein Vertriebspartner von MIVITA und baue Dir Dein eigenes Geschäft mit
|
|
||||||
Qualitätsprodukten auf. Wenn Du magst, kannst Du sofort starten ...</p>
|
|
||||||
|
|
||||||
<a href="/geschaeftsmodell/karrierechancen">
|
|
||||||
Mehr
|
|
||||||
<!-- /word rotator -->
|
|
||||||
<span class="word-rotator" data-delay="2000">
|
|
||||||
<span class="items">
|
|
||||||
<span>lesen</span>
|
|
||||||
<span>JETZT</span>
|
|
||||||
</span>
|
|
||||||
</span><!-- /word rotator -->
|
|
||||||
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
|
||||||
</a>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<!-- /FEATURED BOXES 3 -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<!-- / -->
|
|
||||||
|
|
||||||
<!-- -->
|
|
||||||
<section>
|
|
||||||
<div class="container">
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
|
|
||||||
<div class="col-lg-6">
|
|
||||||
|
|
||||||
<p>MIVITA ist exklusiver Partner der Farm Aloe Vera de Mallorca im Bereich Direktvertrieb Deutschland.
|
|
||||||
Hier haben zwei Unternehmen zusammengefunden, für die Qualität und Nachhaltigkeit oberstes Gebot
|
|
||||||
sind. Nur so lassen sich langfristig zufriedene Kunden zu echten Fans unserer Produkte gewinnen.</p>
|
|
||||||
<blockquote>
|
|
||||||
<p><i>„Mensch, Tier und Natur zuliebe ... Nachhaltigkeit und Produkte, die wirklich „guttun“, sind
|
|
||||||
uns wichtig.“</i></p>
|
|
||||||
<p>Alois Ried - Inhaber MIVITA</p>
|
|
||||||
</blockquote>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-6">
|
|
||||||
|
|
||||||
<div class="embed-responsive embed-responsive-16by9 box-shadow-1">
|
|
||||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/ChHAxy6SbkM?rel=0"
|
|
||||||
frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<!-- / -->
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@endsection
|
|
||||||
|
|
|
||||||
|
|
@ -85,11 +85,11 @@
|
||||||
<div class="copyright">
|
<div class="copyright">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<ul class="pull-right nomargin list-inline mobile-block">
|
<ul class="pull-right nomargin list-inline mobile-block">
|
||||||
<li {{ Request::is('datenschutz') ? ' active' : '' }} "><a
|
<li class="{{ Request::is('data_protected') ? ' active' : '' }}"><a
|
||||||
href="{{ url('/datenschutz') }}">Datenschutzerklärung</a></li>
|
href="{{ url('/data_protected') }}">Datenschutzerklärung</a></li>
|
||||||
<li>•</li>
|
<li>•</li>
|
||||||
<li {{ Request::is('impressum') ? ' active' : '' }} "><a
|
<li class="{{ Request::is('imprint') ? ' active' : '' }} "><a
|
||||||
href="{{ url('/impressum') }}">Impressum</a></li>
|
href="{{ url('/imprint') }}">Impressum</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
© All Rights Reserved, mivita.care
|
© All Rights Reserved, mivita.care
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -94,7 +94,7 @@
|
||||||
<em style="font-size: 0.9em">inkl. MwSt. zzgl. Versandkosten</em>
|
<em style="font-size: 0.9em">inkl. MwSt. zzgl. Versandkosten</em>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<a href="{{ route('card_show') }}" class="btn btn-primary btn-block mt-3">zum Warenkorb</a>
|
<a href="{{ route(Util::getPostRoute().'card_show', Util::addRoute()) }}" class="btn btn-primary btn-block mt-3">zum Warenkorb</a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -123,7 +123,7 @@
|
||||||
Aloe Vera
|
Aloe Vera
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="{{ Request::is('/produkte/*') ? ' active' : '' }}">
|
<li class="{{ Request::is('produkte/*') ? ' active' : '' }}">
|
||||||
<a href="{{url('/produkte/alle-produkte')}}/">
|
<a href="{{url('/produkte/alle-produkte')}}/">
|
||||||
Produktwelt
|
Produktwelt
|
||||||
</a>
|
</a>
|
||||||
|
|
|
||||||
230
resources/views/web/start.blade.php
Normal file
230
resources/views/web/start.blade.php
Normal file
|
|
@ -0,0 +1,230 @@
|
||||||
|
@extends('web.layouts.layout')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
|
||||||
|
|
||||||
|
<style type="text/css">
|
||||||
|
.tp-caption {
|
||||||
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<!-- REVOLUTION SLIDER -->
|
||||||
|
<section id="slider" class="slider fullwidthbanner-container roundedcorners">
|
||||||
|
|
||||||
|
<div class="fullwidthbanner" data-height="500" data-navigationStyle="">
|
||||||
|
<ul class="hide">
|
||||||
|
|
||||||
|
<!-- SLIDE -->
|
||||||
|
<li data-transition="fade" data-slotamount="1" data-masterspeed="1000" data-saveperformance="off"
|
||||||
|
data-title="Slide">
|
||||||
|
|
||||||
|
<img src="{{ asset('assets/images/1x1.png') }}" data-lazyload="{{ asset('assets/images/slider-hg_gruen-mitte.jpg') }}" alt=""
|
||||||
|
data-bgfit="cover" data-bgposition="center top" data-bgrepeat="no-repeat"/>
|
||||||
|
|
||||||
|
<div class="overlay dark-0"><!-- dark overlay [1 to 9 opacity] --></div>
|
||||||
|
|
||||||
|
<div class="tp-caption customin ltl tp-resizeme text_white"
|
||||||
|
data-x="center"
|
||||||
|
data-y="60"
|
||||||
|
data-customin="x:0;y:150;z:0;rotationZ:0;scaleX:1;scaleY:1;skewX:0;skewY:0;opacity:0;transformPerspective:200;transformOrigin:50% 0%;"
|
||||||
|
data-speed="800"
|
||||||
|
data-start="1000"
|
||||||
|
data-easing="easeOutQuad"
|
||||||
|
data-splitin="none"
|
||||||
|
data-splitout="none"
|
||||||
|
data-elementdelay="0.01"
|
||||||
|
data-endelementdelay="0.1"
|
||||||
|
data-endspeed="1000"
|
||||||
|
data-endeasing="Power4.easeIn" style="z-index: 10;">
|
||||||
|
<span class="weight-400">Deutscher Direktvertrieb für</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tp-caption customin ltl tp-resizeme large_bold_white"
|
||||||
|
data-x="center"
|
||||||
|
data-y="100"
|
||||||
|
data-customin="x:0;y:150;z:0;rotationZ:0;scaleX:1;scaleY:1;skewX:0;skewY:0;opacity:0;transformPerspective:200;transformOrigin:50% 0%;"
|
||||||
|
data-speed="800"
|
||||||
|
data-start="1200"
|
||||||
|
data-easing="easeOutQuad"
|
||||||
|
data-splitin="none"
|
||||||
|
data-splitout="none"
|
||||||
|
data-elementdelay="0.01"
|
||||||
|
data-endelementdelay="0.1"
|
||||||
|
data-endspeed="1000"
|
||||||
|
data-endeasing="Power4.easeIn" style="z-index: 10;">
|
||||||
|
<span class="h1">100% Premium Bio Aloe Vera</span>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div class="tp-bannertimer"></div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
<!-- /REVOLUTION SLIDER -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- -->
|
||||||
|
<section>
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
<p class="">MIVITA ist ein Unternehmen mit Standort in Deutschland, das innovative und umweltfreundliche
|
||||||
|
sowie hochwertige Produkte vertreibt. Seit seinem Markteintritt bekennt sich das MIVITA Unternehmen zu einem
|
||||||
|
Werteverständnis, bei dem die Zufriedenheit der Kunden, wie auch die Verantwortung für die Umwelt im Fokus
|
||||||
|
stehen.</p>
|
||||||
|
|
||||||
|
<div class="divider divider-center divider-color"><!-- divider -->
|
||||||
|
<i class="fa fa-chevron-down"></i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- BORN TO BE A WINNER -->
|
||||||
|
<article class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<!-- OWL SLIDER -->
|
||||||
|
<div class="owl-carousel buttons-autohide controlls-over nomargin"
|
||||||
|
data-plugin-options='{"items": 1, "autoHeight": true, "navigation": true, "pagination": true, "transitionStyle":"backSlide", "progressBar":"true"}'>
|
||||||
|
<div>
|
||||||
|
<img class="img-responsive" src="{{ asset('assets/images/aloe-vera-farm-mallorca.jpg') }}" alt="">
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img class="img-responsive" src="{{ asset('assets/images/beratung-ruth-mallorca.jpg') }}" alt="">
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img class="img-responsive" src="{{ asset('assets/images/mivita-schulung-mallorca.jpg') }}" alt="">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<!-- /OWL SLIDER -->
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<h2>Warum MIVITA?</h2>
|
||||||
|
<p>Unsere Kunden vertrauen zurecht auf die exzellenten Eigenschaften der MIVITA Produkte. Damit trifft
|
||||||
|
jeder aktiv eine kluge Entscheidung für Gesundheit und Umwelt.</p>
|
||||||
|
|
||||||
|
<p>Wir legen nicht nur auf die Qualität unserer Produkte einen hohen Stellenwert, sondern natürlich auch
|
||||||
|
auf umfassende, kompetente Beratung durch freundliche und fachkundige Berater und Beraterinnen.</p>
|
||||||
|
|
||||||
|
<p>Wir entwickeln und vertreiben ausschließlich Produkte, die qualitativ hochwertig sind. So sind sie
|
||||||
|
bei sachgemäßer Anwendung und Pflege langlebig und sehr ergiebig. Faktoren, die uns die
|
||||||
|
Zufriedenheit unserer Kunden sichern.</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
<!-- /BORN TO BE A WINNER -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
<!-- / -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- -->
|
||||||
|
<section>
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
<!-- FEATURED BOXES 3 -->
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-4 col-xs-6">
|
||||||
|
<div class="text-center">
|
||||||
|
<h3 class="h3">Aloe Vera</h3>
|
||||||
|
<p class="">Mit höchstem Anspruch arbeiten wir gemeinsam mit der Aloe Vera Farm auf Mallorca
|
||||||
|
zusammen, die weltweite Qualität der Spitzenklasse garantiert.</p>
|
||||||
|
|
||||||
|
<a href="/aloevera">
|
||||||
|
Mehr
|
||||||
|
<!-- /word rotator -->
|
||||||
|
<span class="word-rotator" data-delay="2000">
|
||||||
|
<span class="items">
|
||||||
|
<span>lesen</span>
|
||||||
|
<span>JETZT</span>
|
||||||
|
</span>
|
||||||
|
</span><!-- /word rotator -->
|
||||||
|
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4 col-xs-6">
|
||||||
|
<div class="text-center">
|
||||||
|
<h3 class="h3">Produkte</h3>
|
||||||
|
<p class="">Hier findest Du einen Überblick über das komplette Premium-Produktsortiment von MIVITA.
|
||||||
|
Vom hochwertigen Aloe Saft bis zu wohltuender Kosmetik.</p>
|
||||||
|
|
||||||
|
<a href="/produkte">
|
||||||
|
Mehr
|
||||||
|
<!-- /word rotator -->
|
||||||
|
<span class="word-rotator" data-delay="2000">
|
||||||
|
<span class="items">
|
||||||
|
<span>lesen</span>
|
||||||
|
<span>JETZT</span>
|
||||||
|
</span>
|
||||||
|
</span><!-- /word rotator -->
|
||||||
|
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4 col-xs-6">
|
||||||
|
<div class="text-center">
|
||||||
|
<h3 class="h3">Vertriebspartner</h3>
|
||||||
|
<p class="">Werde auch Du ein Vertriebspartner von MIVITA und baue Dir Dein eigenes Geschäft mit
|
||||||
|
Qualitätsprodukten auf. Wenn Du magst, kannst Du sofort starten ...</p>
|
||||||
|
|
||||||
|
<a href="/geschaeftsmodell/karrierechancen">
|
||||||
|
Mehr
|
||||||
|
<!-- /word rotator -->
|
||||||
|
<span class="word-rotator" data-delay="2000">
|
||||||
|
<span class="items">
|
||||||
|
<span>lesen</span>
|
||||||
|
<span>JETZT</span>
|
||||||
|
</span>
|
||||||
|
</span><!-- /word rotator -->
|
||||||
|
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<!-- /FEATURED BOXES 3 -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
<!-- / -->
|
||||||
|
|
||||||
|
<!-- -->
|
||||||
|
<section>
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-lg-6">
|
||||||
|
|
||||||
|
<p>MIVITA ist exklusiver Partner der Farm Aloe Vera de Mallorca im Bereich Direktvertrieb Deutschland.
|
||||||
|
Hier haben zwei Unternehmen zusammengefunden, für die Qualität und Nachhaltigkeit oberstes Gebot
|
||||||
|
sind. Nur so lassen sich langfristig zufriedene Kunden zu echten Fans unserer Produkte gewinnen.</p>
|
||||||
|
<blockquote>
|
||||||
|
<p><i>„Mensch, Tier und Natur zuliebe ... Nachhaltigkeit und Produkte, die wirklich „guttun“, sind
|
||||||
|
uns wichtig.“</i></p>
|
||||||
|
<p>Alois Ried - Inhaber MIVITA</p>
|
||||||
|
</blockquote>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-6">
|
||||||
|
|
||||||
|
<div class="embed-responsive embed-responsive-16by9 box-shadow-1">
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/ChHAxy6SbkM?rel=0"
|
||||||
|
frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
<!-- / -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@endsection
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
@ -120,7 +120,7 @@
|
||||||
|
|
||||||
@if(Yard::instance('shopping')->content()->count())
|
@if(Yard::instance('shopping')->content()->count())
|
||||||
<!-- CART -->
|
<!-- CART -->
|
||||||
{!! Form::open(['url' => route('card_update'), 'class' => 'cartContent clearfix', 'id'=>'']) !!}
|
{!! Form::open(['url' => route(Util::getPostRoute().'card_update', Util::addRoute()), 'class' => 'cartContent clearfix', 'id'=>'']) !!}
|
||||||
|
|
||||||
<!-- cart content -->
|
<!-- cart content -->
|
||||||
<div id="cartContent">
|
<div id="cartContent">
|
||||||
|
|
@ -149,7 +149,7 @@
|
||||||
<span>{{ $row->name }}</span>
|
<span>{{ $row->name }}</span>
|
||||||
<small>Lieferzeit: 1-3 Werktage</small>
|
<small>Lieferzeit: 1-3 Werktage</small>
|
||||||
</a>
|
</a>
|
||||||
<a href="{{ route('card_remove', [$row->rowId]) }}" class="remove_item"><i class="fa fa-times"></i></a>
|
<a href="{{ route(Util::getPostRoute().'card_remove', Util::addRoute([$row->rowId])) }}" class="remove_item"><i class="fa fa-times"></i></a>
|
||||||
|
|
||||||
<div class="total_price"><span>{{ $row->subtotal() }} </span> €</div>
|
<div class="total_price"><span>{{ $row->subtotal() }} </span> €</div>
|
||||||
<div class="qty"><input type="number" value="{{ $row->qty }}" name="quantity[{{$row->rowId}}]" maxlength="3" max="999" min="1" /> × {{ $row->price() }} € </div>
|
<div class="qty"><input type="number" value="{{ $row->qty }}" name="quantity[{{$row->rowId}}]" maxlength="3" max="999" min="1" /> × {{ $row->price() }} € </div>
|
||||||
|
|
@ -158,7 +158,7 @@
|
||||||
|
|
||||||
@endforeach
|
@endforeach
|
||||||
</div>
|
</div>
|
||||||
<a href="{{route('card_delete')}}" class="btn btn-default margin-top-20 margin-right-10 pull-left"><i class="glyphicon glyphicon-remove"></i> Warenkorb löschen</a>
|
<a href="{{route(Util::getPostRoute().'card_delete', Util::addRoute())}}" class="btn btn-default margin-top-20 margin-right-10 pull-left"><i class="glyphicon glyphicon-remove"></i> Warenkorb löschen</a>
|
||||||
<button type="submit" class="btn btn-primary margin-top-20 pull-right"><i class="glyphicon glyphicon-refresh"></i> Warenkorb aktualisieren</button>
|
<button type="submit" class="btn btn-primary margin-top-20 pull-right"><i class="glyphicon glyphicon-refresh"></i> Warenkorb aktualisieren</button>
|
||||||
|
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
|
|
@ -213,7 +213,7 @@
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
<a href="{{ route('card_checkout') }}" class="btn btn-primary btn-lg btn-block size-15 mt-4"><i class="fa fa-mail-forward"></i> zur Kasse</a>
|
<a href="{{ route(Util::getPostRoute().'card_checkout', Util::addRoute()) }}" class="btn btn-primary btn-lg btn-block size-15 mt-4"><i class="fa fa-mail-forward"></i> zur Kasse</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
@ -103,7 +103,7 @@
|
||||||
|
|
||||||
<!-- CHECKOUT -->
|
<!-- CHECKOUT -->
|
||||||
<div class="">
|
<div class="">
|
||||||
{!! Form::open(['url' => route('card_checkout_final'), 'class' => 'row clearfix', 'id'=>'']) !!}
|
{!! Form::open(['url' => route(Util::getPostRoute().'card_checkout_final', Util::addRoute()), 'class' => 'row clearfix', 'id'=>'']) !!}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<section>
|
<section>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<section>
|
<section>
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
@ -117,7 +117,7 @@
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<div class="shop-item-price text-right">
|
<div class="shop-item-price text-right">
|
||||||
{!! Form::open(['url' => route('card_add_post', [$product->id]), 'class' => 'mb-0', 'id'=>'']) !!}
|
{!! Form::open(['url' => route(Util::getPostRoute().'card_add_post', Util::addRoute([$product->id])), 'class' => 'mb-0', 'id'=>'']) !!}
|
||||||
<div class="qty float-left">
|
<div class="qty float-left">
|
||||||
<input type="number" value="1" name="quantity" maxlength="3" max="999" min="1"><br>
|
<input type="number" value="1" name="quantity" maxlength="3" max="999" min="1"><br>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
@extends('web.layouts.layout')
|
|
||||||
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
@ -103,7 +105,7 @@
|
||||||
|
|
||||||
<!-- buttons -->
|
<!-- buttons -->
|
||||||
<div class="shop-item-buttons text-left">
|
<div class="shop-item-buttons text-left">
|
||||||
<a href="{{ route('card_add_get', [$product->id, 1, $product->slug]) }}" data-quantity="1" data-product_id="{{ $product->id }}" aria-label="{{ $product->getLang('name') }} zu deinem Warenkorb hinzufügen" class="btn btn-primary btn-xs" rel="nofollow">
|
<a href="{{ route(Util::getPostRoute().'card_add_get', Util::addRoute([$product->id, 1, $product->slug])) }}" data-quantity="1" data-product_id="{{ $product->id }}" aria-label="{{ $product->getLang('name') }} zu deinem Warenkorb hinzufügen" class="btn btn-primary btn-xs" rel="nofollow">
|
||||||
<i class="fa fa-cart-plus"></i> In den Warenkorb
|
<i class="fa fa-cart-plus"></i> In den Warenkorb
|
||||||
</a>
|
</a>
|
||||||
<a class="float-right btn btn-primary btn-xs" href="{{ url('/produkte/'.$subsite.'/'.$product->slug) }}">
|
<a class="float-right btn btn-primary btn-xs" href="{{ url('/produkte/'.$subsite.'/'.$product->slug) }}">
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@extends('web.layouts.layout')
|
@extends($user_shop ?'web.user.layouts.layout' : 'web.layouts.layout')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
|
|
|
||||||
79
resources/views/web/user/layouts/application.blade.php
Normal file
79
resources/views/web/user/layouts/application.blade.php
Normal file
|
|
@ -0,0 +1,79 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<title>mivita care</title>
|
||||||
|
<meta name="description" content="" />
|
||||||
|
<meta name="Author" content="" />
|
||||||
|
|
||||||
|
<!-- mobile settings -->
|
||||||
|
<meta name="viewport" content="width=device-width, maximum-scale=1, initial-scale=1, user-scalable=0" />
|
||||||
|
<!--[if IE]><meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'><![endif]-->
|
||||||
|
|
||||||
|
<!-- WEB FONTS : use %7C instead of | (pipe) -->
|
||||||
|
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600%7CRaleway:300,400,500,600,700%7CLato:300,400,400italic,600,700" rel="stylesheet" type="text/css" />
|
||||||
|
|
||||||
|
<!-- CORE CSS -->
|
||||||
|
|
||||||
|
<!-- REVOLUTION SLIDER -->
|
||||||
|
<link href="{{ asset('/assets/plugins/slider.revolution/css/extralayers.css') }}" rel="stylesheet" type="text/css" />
|
||||||
|
<link href="{{ asset('/assets/plugins/slider.revolution/css/settings.css') }}" rel="stylesheet" type="text/css" />
|
||||||
|
<link href="{{ asset('/assets/css/mystyle.css') }}" rel="stylesheet" type="text/css" />
|
||||||
|
<link href="{{ asset('/assets/css/custom-style.css') }}" rel="stylesheet" type="text/css" />
|
||||||
|
<link href="{{ asset('assets/css/custom-forms-v2.css') }}" rel="stylesheet" type="text/css" />
|
||||||
|
|
||||||
|
|
||||||
|
<style type="text/css">
|
||||||
|
|
||||||
|
.text-primary {
|
||||||
|
color:#a5d0a5 !important;
|
||||||
|
}
|
||||||
|
div.side-nav ul.list-group-bordered > li.list-group-item.active > a:hover{
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body class="smoothscroll enable-animation">
|
||||||
|
|
||||||
|
@yield('layout-content')
|
||||||
|
|
||||||
|
<!-- SCROLL TO TOP -->
|
||||||
|
<a href="#" id="toTop"></a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- JAVASCRIPT FILES -->
|
||||||
|
<script type="text/javascript">var plugin_path = "{{ url('/assets/plugins/').'/' }}"</script>
|
||||||
|
<script type="text/javascript" src="{{ asset('/assets/plugins/jquery/jquery-2.2.3.min.js') }}"></script>
|
||||||
|
<script type="text/javascript" src="{{ asset('/assets/js/scripts.js') }}"></script>
|
||||||
|
<!-- <script type="text/javascript" src="{{ asset('/assets/js/jquery.contact-form.js') }}"></script> -->
|
||||||
|
<!-- REVOLUTION SLIDER -->
|
||||||
|
<script type="text/javascript" src="{{ asset('/assets/plugins/slider.revolution/js/jquery.themepunch.tools.min.js') }}"></script>
|
||||||
|
<script type="text/javascript" src="{{ asset('/assets/plugins/slider.revolution/js/jquery.themepunch.revolution.min.js') }}"></script>
|
||||||
|
<script type="text/javascript" src="{{ asset('/assets/js/view/demo.revolution_slider.js') }}"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
/** CHECKOUT
|
||||||
|
** *********************** **/
|
||||||
|
// New Account show|hide
|
||||||
|
jQuery("#accountswitch").bind("click", function() {
|
||||||
|
jQuery('#newaccount').slideToggle(200);
|
||||||
|
});
|
||||||
|
|
||||||
|
// Shipping Address show|hide
|
||||||
|
jQuery("#shipswitch").bind("click", function() {
|
||||||
|
jQuery('#shipping').slideToggle(200, function() {
|
||||||
|
|
||||||
|
// scroll down to shipping area.
|
||||||
|
if(jQuery('#shipping').is(":visible")) {
|
||||||
|
_scrollTo('#shipping', 150);
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
62
resources/views/web/user/layouts/includes/footer.blade.php
Normal file
62
resources/views/web/user/layouts/includes/footer.blade.php
Normal file
|
|
@ -0,0 +1,62 @@
|
||||||
|
|
||||||
|
<div class="alert alert-success bordered-bottom nomargin">
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-md-12"><!-- left text -->
|
||||||
|
|
||||||
|
<p class="font-lato weight-400 size-20">
|
||||||
|
Du möchtest Kontakt aufnehmen?
|
||||||
|
</p>
|
||||||
|
{!! $user_shop->info !!}
|
||||||
|
</div><!-- /left text -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- /CALLOUT -->
|
||||||
|
<style>div.row > div img.img-responsive { width: auto } </style>
|
||||||
|
<!-- FOOTER -->
|
||||||
|
<footer id="footer">
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-xs-4">
|
||||||
|
<!-- Footer Logo -->
|
||||||
|
<img class="footer-logo img-responsive" src="{{asset('/assets/images/logo_mivita.png')}}" alt=""/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-xs-4">
|
||||||
|
<!-- Footer Logo -->
|
||||||
|
<img class="footer-logo img-responsive" src="{{asset('/assets/images/logo_bio.png')}}" alt=""/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-xs-4">
|
||||||
|
<!-- Footer Logo -->
|
||||||
|
<img class="footer-logo img-responsive" src="{{asset('/assets/images/logo_derma.png')}}" alt=""/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="copyright">
|
||||||
|
<div class="container">
|
||||||
|
<ul class="pull-right nomargin list-inline mobile-block">
|
||||||
|
<li class="{{ Request::is('data_protected') ? ' active' : '' }}"><a
|
||||||
|
href="{{ url('/data_protected') }}">Datenschutzerklärung</a></li>
|
||||||
|
<li>•</li>
|
||||||
|
<li class="{{ Request::is('imprint') ? ' active' : '' }} "><a
|
||||||
|
href="{{ url('/imprint') }}">Impressum</a></li>
|
||||||
|
</ul>
|
||||||
|
© All Rights Reserved, mivita.care
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
<!-- /FOOTER -->
|
||||||
135
resources/views/web/user/layouts/includes/header.blade.php
Normal file
135
resources/views/web/user/layouts/includes/header.blade.php
Normal file
|
|
@ -0,0 +1,135 @@
|
||||||
|
<div id="header" class="sticky clearfix">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
#header li.quick-cart .quick-cart-box {
|
||||||
|
-webkit-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3);
|
||||||
|
-moz-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3);
|
||||||
|
box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3);
|
||||||
|
}
|
||||||
|
#header li.quick-cart .quick-cart-footer > span {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
.quick-cart-wrapper span.price {
|
||||||
|
color: #666666;
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.quick-cart-wrapper h5 {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
#header li.quick-cart .quick-cart-footer {
|
||||||
|
padding: 10px 10px 10px 10px;
|
||||||
|
background-color: #ebebeb;
|
||||||
|
}
|
||||||
|
#header li.quick-cart .quick-cart-box {
|
||||||
|
padding-bottom: 0;
|
||||||
|
}
|
||||||
|
#header ul.nav-second-main {
|
||||||
|
margin-top: 25px;
|
||||||
|
}
|
||||||
|
@media only screen and (max-width: 992px){
|
||||||
|
|
||||||
|
#header ul.nav-second-main
|
||||||
|
{
|
||||||
|
margin-top: 0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#header.fixed ul.nav-second-main {
|
||||||
|
margin-top: 8px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<!-- TOP NAV -->
|
||||||
|
<header id="topNav">
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
<!-- Mobile Menu Button -->
|
||||||
|
<button class="btn btn-mobile" data-toggle="collapse" data-target=".nav-main-collapse">
|
||||||
|
<i class="fa fa-bars"></i>
|
||||||
|
</button>
|
||||||
|
|
||||||
|
<ul class="pull-right nav nav-pills nav-second-main has-topBar">
|
||||||
|
|
||||||
|
<!-- QUICK SHOP CART -->
|
||||||
|
<li class="quick-cart">
|
||||||
|
|
||||||
|
<a href="#" style="border: 1px solid #c3c3c3; padding: 10px;">
|
||||||
|
<span style="position: relative">
|
||||||
|
<span class="badge badge-success btn-xs badge-corner">{{ Yard::instance('shopping')->count() }}</span>
|
||||||
|
<i class="fa fa-shopping-cart"></i>
|
||||||
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
@if(Yard::instance('shopping')->count())
|
||||||
|
<span class="">{{ \Yard::instance('shopping')->subtotal() }} € </span>
|
||||||
|
@endif
|
||||||
|
</a>
|
||||||
|
<div class="quick-cart-box" style="display: none;">
|
||||||
|
<h4>Warenkorb</h4>
|
||||||
|
|
||||||
|
<div class="quick-cart-wrapper">
|
||||||
|
|
||||||
|
|
||||||
|
@foreach(Yard::instance('shopping')->content() as $row)
|
||||||
|
|
||||||
|
<a href="{{ url('/produkte/alle-produkte/'.$row->options->slug) }}"><!-- cart item -->
|
||||||
|
@if($row->options->has('image'))
|
||||||
|
<img src="{{ route('product_image', [$row->options->image]) }}" width="50" height="66" alt="">
|
||||||
|
@else
|
||||||
|
<img src="{{ asset('/assets/images/1x1.png') }}" width="50" height="66" alt="">
|
||||||
|
@endif
|
||||||
|
<h5>{{ $row->name }}</h5>
|
||||||
|
<span class="price">{{ $row->qty }}x <strong>{{ $row->price() }} €</strong></span>
|
||||||
|
|
||||||
|
</a><!-- /cart item -->
|
||||||
|
|
||||||
|
@endforeach
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- quick cart footer -->
|
||||||
|
<div class="quick-cart-footer clearfix">
|
||||||
|
<div class="text-left">
|
||||||
|
<strong>Zwischensumme:</strong> <strong class="pull-right">{{ Yard::instance('shopping')->subtotal() }} €</strong>
|
||||||
|
<br>
|
||||||
|
<em style="font-size: 0.9em">inkl. MwSt. zzgl. Versandkosten</em>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<a href="{{ route(Util::getPostRoute().'card_show', Util::addRoute()) }}" class="btn btn-primary btn-block mt-3">zum Warenkorb</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Logo -->
|
||||||
|
<a class="logo pull-left" href="{{ url('/') }}">
|
||||||
|
<img class="fixed_top" src="/assets/images/logo_mivita.png" alt="mivita" />
|
||||||
|
<img class="fixed_scroll" src="/assets/images/logo_mivita_fixed.png" alt="mivita" />
|
||||||
|
</a>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="navbar-collapse pull-right nav-main-collapse collapse">
|
||||||
|
<nav class="nav-main">
|
||||||
|
<ul id="topMain" class="nav nav-pills nav-main nav-onepage">
|
||||||
|
<li class="{{ Request::is('/') ? ' active' : '' }}">
|
||||||
|
<a href="/">
|
||||||
|
{{ $user_shop->name }} Shop
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="{{ Request::is('produkte/*') ? ' active' : '' }}">
|
||||||
|
<a href="{{url('/produkte/alle-produkte')}}/">
|
||||||
|
Produktwelt
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<!-- /Top Nav -->
|
||||||
|
|
||||||
|
</div>
|
||||||
23
resources/views/web/user/layouts/layout.blade.php
Normal file
23
resources/views/web/user/layouts/layout.blade.php
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
@extends('web.user.layouts.application')
|
||||||
|
|
||||||
|
@section('layout-content')
|
||||||
|
|
||||||
|
@include('web.user.layouts.includes.header')
|
||||||
|
|
||||||
|
<!-- wrapper -->
|
||||||
|
<div id="wrapper">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@yield('content')
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- /FOOTER -->
|
||||||
|
@include('web.user.layouts.includes.footer')
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<!-- /wrapper -->
|
||||||
|
|
||||||
|
@endsection
|
||||||
121
resources/views/web/user/start.blade.php
Normal file
121
resources/views/web/user/start.blade.php
Normal file
|
|
@ -0,0 +1,121 @@
|
||||||
|
@extends('web.user.layouts.layout')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
|
||||||
|
|
||||||
|
<style type="text/css">
|
||||||
|
.tp-caption {
|
||||||
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- -->
|
||||||
|
<section>
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- BORN TO BE A WINNER -->
|
||||||
|
<article class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
|
||||||
|
@if($user_shop->isImage())
|
||||||
|
<img class="img-responsive" src="{{ url($user_shop->getImage()) }}" alt="">
|
||||||
|
@else
|
||||||
|
<h2>{{ $user_shop->title }}</h2>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<!-- OWL SLIDER -->
|
||||||
|
<!-- /OWL SLIDER -->
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
@if($user_shop->isImage())
|
||||||
|
<h2>{{ $user_shop->title }}</h2>
|
||||||
|
@endif
|
||||||
|
{!! $user_shop->copy !!}
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
<!-- /BORN TO BE A WINNER -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
<!-- / -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- -->
|
||||||
|
<section>
|
||||||
|
<div class="container">
|
||||||
|
|
||||||
|
<!-- FEATURED BOXES 3 -->
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-4 col-xs-6">
|
||||||
|
<div class="text-center">
|
||||||
|
<h3 class="h3">Aloe Vera</h3>
|
||||||
|
<p class="">Mit höchstem Anspruch arbeiten wir gemeinsam mit der Aloe Vera Farm auf Mallorca
|
||||||
|
zusammen, die weltweite Qualität der Spitzenklasse garantiert.</p>
|
||||||
|
|
||||||
|
<a href="/aloevera">
|
||||||
|
Mehr
|
||||||
|
<!-- /word rotator -->
|
||||||
|
<span class="word-rotator" data-delay="2000">
|
||||||
|
<span class="items">
|
||||||
|
<span>lesen</span>
|
||||||
|
<span>JETZT</span>
|
||||||
|
</span>
|
||||||
|
</span><!-- /word rotator -->
|
||||||
|
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4 col-xs-6">
|
||||||
|
<div class="text-center">
|
||||||
|
<h3 class="h3">Produkte</h3>
|
||||||
|
<p class="">Hier findest Du einen Überblick über das komplette Premium-Produktsortiment von MIVITA.
|
||||||
|
Vom hochwertigen Aloe Saft bis zu wohltuender Kosmetik.</p>
|
||||||
|
|
||||||
|
<a href="/produkte">
|
||||||
|
Mehr
|
||||||
|
<!-- /word rotator -->
|
||||||
|
<span class="word-rotator" data-delay="2000">
|
||||||
|
<span class="items">
|
||||||
|
<span>lesen</span>
|
||||||
|
<span>JETZT</span>
|
||||||
|
</span>
|
||||||
|
</span><!-- /word rotator -->
|
||||||
|
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4 col-xs-6">
|
||||||
|
<div class="text-center">
|
||||||
|
<h3 class="h3">Vertriebspartner</h3>
|
||||||
|
<p class="">Werde auch Du ein Vertriebspartner von MIVITA und baue Dir Dein eigenes Geschäft mit
|
||||||
|
Qualitätsprodukten auf. Wenn Du magst, kannst Du sofort starten ...</p>
|
||||||
|
|
||||||
|
<a href="/geschaeftsmodell/karrierechancen">
|
||||||
|
Mehr
|
||||||
|
<!-- /word rotator -->
|
||||||
|
<span class="word-rotator" data-delay="2000">
|
||||||
|
<span class="items">
|
||||||
|
<span>lesen</span>
|
||||||
|
<span>JETZT</span>
|
||||||
|
</span>
|
||||||
|
</span><!-- /word rotator -->
|
||||||
|
<i class="glyphicon glyphicon-menu-right size-12"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<!-- /FEATURED BOXES 3 -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
<!-- / -->
|
||||||
|
|
||||||
|
@endsection
|
||||||
312
routes/_web.php
Executable file
312
routes/_web.php
Executable file
|
|
@ -0,0 +1,312 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
|--------------------------------------------------------------------------
|
||||||
|
| Web Routes
|
||||||
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
| Here is where you can register web routes for your application. These
|
||||||
|
| routes are loaded by the RouteServiceProvider within a group which
|
||||||
|
| contains the "web" middleware group. Now create something great!
|
||||||
|
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ROUTING FOR CRM / CMS*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//Route::group(['domain' => '{subdomain}.mivita.local', 'middleware' => 'subdomain'], $RoutesOnlyForExamp);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ROUTING the SUBDOMAINS*/
|
||||||
|
/*
|
||||||
|
Route::group(['domain' => '{subdomain}.mivita.local'], $RoutesOnlyForExamp);
|
||||||
|
|
||||||
|
Route::group(['domain' => 'mivita.local'], $RoutesOnlyForExamp);
|
||||||
|
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Route::get('/data_protected', 'HomeController@legalDataProtected')->name('data_protected');
|
||||||
|
Route::get('/imprint', 'HomeController@legalImprint')->name('imprint');
|
||||||
|
|
||||||
|
Route::get('storage/images/{from}/{slug}', function($from = null, $slug = null) {
|
||||||
|
if ($from == 'shop'){
|
||||||
|
$image = \App\Models\UserShop::where('filename', $slug)->first();
|
||||||
|
$path = storage_path('app/public').'/images/shop'.'/'.$image->filename;
|
||||||
|
|
||||||
|
}
|
||||||
|
if (file_exists($path)) {
|
||||||
|
return Response::file($path);
|
||||||
|
}
|
||||||
|
})->name('storage_images');
|
||||||
|
|
||||||
|
|
||||||
|
Route::domain('mivita.local')->group(function () {
|
||||||
|
|
||||||
|
Route::get('/', 'Web\SiteController@index')->name('/');
|
||||||
|
Route::get('/{site}/{subsite?}/{product_slug?}', 'Web\SiteController@site')->name('site');
|
||||||
|
Route::get('/card/add/{id}/{quantity?}/{product_slug?}', 'Web\CardController@addToCardGet')->name('card_add_get');
|
||||||
|
Route::post('/card/add/{id}', 'Web\CardController@addToCardPost')->name('card_add_post');
|
||||||
|
Route::get('/card/show', 'Web\CardController@showCard')->name('card_show');
|
||||||
|
Route::get('/card/checkout', 'Web\CardController@checkoutCard')->name('card_checkout');
|
||||||
|
Route::post('/card/checkout_final', 'Web\CardController@checkoutFinalCard')->name('card_checkout_final');
|
||||||
|
Route::post('/card/update', 'Web\CardController@updateCard')->name('card_update');
|
||||||
|
Route::get('/card/remove/{rowId}', 'Web\CardController@removeCard')->name('card_remove');
|
||||||
|
Route::get('/card/delete', 'Web\CardController@deleteCard')->name('card_delete');
|
||||||
|
|
||||||
|
Route::get('product/image/{slug}', function($slug = null)
|
||||||
|
{
|
||||||
|
$image = \App\Models\ProductImage::where('slug', $slug)->first();
|
||||||
|
$path = storage_path('app/public').'/images/product'.'/'.$image->product_id.'/'.$image->filename;
|
||||||
|
if (file_exists($path)) {
|
||||||
|
return Response::file($path);
|
||||||
|
}
|
||||||
|
})->name('product_image');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
Route::domain('mein.mivita.local')->group(function () {
|
||||||
|
|
||||||
|
Auth::routes();
|
||||||
|
Route::get('/logout', function(){
|
||||||
|
Auth::logout();
|
||||||
|
return Redirect::to('login');
|
||||||
|
})->name('logout');
|
||||||
|
|
||||||
|
Route::get('locale/{locale}', function ($locale) {
|
||||||
|
\Session::put('locale', $locale);
|
||||||
|
if(Auth::check()){
|
||||||
|
$user = Auth::user();
|
||||||
|
$user->lang = $locale;
|
||||||
|
$user->save();
|
||||||
|
}
|
||||||
|
return redirect()->back();
|
||||||
|
})->name('locale');
|
||||||
|
|
||||||
|
|
||||||
|
Route::post('/loading/modal', 'HomeController@loadingModal')->name('loading_modal');
|
||||||
|
Route::get('/', 'HomeController@index')->name('home');
|
||||||
|
Route::get('/user/update_email_confirm/{token}', 'UserUpdateEmailController@activateMail')->name('user_update_email_confirm');
|
||||||
|
Route::post('/user/check/mail', 'HomeController@checkMail')->name('user_check_mail');
|
||||||
|
|
||||||
|
Route::get('/register/verify/{confirmationCode}', 'HomeController@verify')->name('register_verify');
|
||||||
|
|
||||||
|
Route::get('/status/register', 'HomeController@statusRegister')->name('status_register');
|
||||||
|
Route::get('/status/verify', 'HomeController@statusVerify')->name('status_verify');
|
||||||
|
Route::get('/status/error', 'HomeController@statusError')->name('status_error');
|
||||||
|
Route::get('/status/not/found', 'HomeController@notFound')->name('not_found');
|
||||||
|
|
||||||
|
|
||||||
|
Route::group(['middleware' => ['auth']], function()
|
||||||
|
{
|
||||||
|
Route::get('storage/{type?}/{file?}', function($type = null, $file = null)
|
||||||
|
{
|
||||||
|
if($type == 'xls'){
|
||||||
|
$path = storage_path("app/export/");
|
||||||
|
$filename = $file.'.xls';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (file_exists($path.$filename)) {
|
||||||
|
return Response::download($path.$filename, $filename);
|
||||||
|
}
|
||||||
|
})->name('storage');
|
||||||
|
|
||||||
|
Route::get('/home', 'HomeController@show')->name('home');
|
||||||
|
|
||||||
|
|
||||||
|
/* Route::get('/user/edit', 'UserController@userEdit')->name('user_edit');
|
||||||
|
|
||||||
|
*/
|
||||||
|
Route::get('/user/edit', 'UserDataController@userEdit')->name('user_edit');
|
||||||
|
Route::post('/user/edit', 'UserDataController@userEditStore')->name('user_edit');
|
||||||
|
Route::post('/user/data/store', 'UserDataController@userDataStore')->name('user_data_store');
|
||||||
|
|
||||||
|
|
||||||
|
Route::get('/user/update_password', 'UserUpdatePasswordController@updatePassword')->name('user_update_password');
|
||||||
|
Route::post('/user/update_password', 'UserUpdatePasswordController@updatePasswordStore')->name('user_update_password');
|
||||||
|
|
||||||
|
Route::get('/user/update_password_first', 'UserUpdatePasswordController@updatePasswordFirst')->name('user_update_password_first');
|
||||||
|
Route::post('/user/update_password_first', 'UserUpdatePasswordController@updatePasswordFirstStore')->name('user_update_password_first');
|
||||||
|
|
||||||
|
Route::get('/user/update_email', 'UserUpdateEmailController@index')->name('user_update_email');
|
||||||
|
Route::post('/user/update_email', 'UserUpdateEmailController@update')->name('user_update_email');
|
||||||
|
|
||||||
|
Route::get('/user/delete_account', 'UserDeleteController@deleteAccount')->name('user_delete_account');
|
||||||
|
Route::post('/user/delete_account', 'UserDeleteController@deleteAccountAction')->name('user_delete_account');
|
||||||
|
|
||||||
|
Route::post('/user/data/accepted/form', 'UserDataController@userDataAcceptedForm')->name('user_data_accepted_form');
|
||||||
|
|
||||||
|
Route::get('/user/data/free', 'UserDataController@userDataFree')->name('user_data_free');
|
||||||
|
Route::post('/user/data/free/form', 'UserDataController@userDataFreeForm')->name('user_data_free_form');
|
||||||
|
|
||||||
|
Route::get('/user/shop', 'UserShopController@index')->name('user_shop');
|
||||||
|
Route::post('/user/shop/store', 'UserShopController@store')->name('user_shop_store');
|
||||||
|
Route::post('/user/shop/register/form', 'UserShopController@userShopRegisterForm')->name('user_shop_register_form');
|
||||||
|
Route::post('/user/shop/name/check', 'UserShopController@checkUserShopName')->name('user_shop_name_check');
|
||||||
|
Route::post('/user/shop/upload/image', 'UserShopController@uploadImage')->name('user_shop_upload_image');
|
||||||
|
Route::get('/user/shop/delete/image', 'UserShopController@deleteImage')->name('user_shop_delete_image');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
Route::group(['middleware' => ['admin']], function()
|
||||||
|
{
|
||||||
|
//translate
|
||||||
|
Route::get('/admin/translate/all', 'TranslationController@index')->name('admin_translate_all');
|
||||||
|
Route::get('/admin/translate/all/edit/{lang}/{from?}', 'TranslationController@edit')->name('admin_translate_all_edit');
|
||||||
|
Route::post('/admin/translate/all/update/{lang}/{from?}', 'TranslationController@update')->name('admin_translate_all_update');
|
||||||
|
|
||||||
|
Route::get('/admin/translate/file', 'TranslationFileController@index')->name('admin_translate_file');
|
||||||
|
Route::get('/admin/translation/file/{file}/{language?}/{langsource?}/{show?}', 'TranslationFileController@edit')->name('admin_translate_file_edit');
|
||||||
|
Route::post('/admin/translation/file/{file}/{language?}/{langsource?}/{show?}', 'TranslationFileController@update')->name('admin_translate_file_update');
|
||||||
|
|
||||||
|
//products
|
||||||
|
Route::get('admin/product/show', 'ProductController@index')->name('admin_product_show');
|
||||||
|
Route::post('admin/product/store', 'ProductController@store')->name('admin_product_store');
|
||||||
|
Route::get('admin/product/edit/{id}', 'ProductController@edit')->name('admin_product_edit');
|
||||||
|
Route::get('admin/product/delete/{id}', 'ProductController@delete')->name('admin_product_delete');
|
||||||
|
//products images
|
||||||
|
Route::post('admin/product/upload/image', 'ProductController@uploadImage')->name('admin_product_upload_image');
|
||||||
|
Route::get('admin/product/{image_id}/{product_id}', 'ProductController@deleteImage')->name('admin_product_delete_image');
|
||||||
|
//products categories
|
||||||
|
Route::get('admin/product/categories', 'CategoryController@index')->name('admin_product_categories');
|
||||||
|
Route::post('admin/product/category/store', 'CategoryController@store')->name('admin_product_category_store');
|
||||||
|
Route::get('admin/product/category/delete/{id}', 'CategoryController@delete')->name('admin_product_category_delete');
|
||||||
|
//products attributes
|
||||||
|
Route::get('admin/product/attributes', 'AttributeController@index')->name('admin_product_attributes');
|
||||||
|
Route::post('admin/product/attribute/store', 'AttributeController@store')->name('admin_product_attribute_store');
|
||||||
|
Route::get('admin/product/attribute/delete/{id}', 'AttributeController@delete')->name('admin_product_attribute_delete');
|
||||||
|
|
||||||
|
|
||||||
|
//Route::get('/admin/products/import', 'ImportProductController@import')->name('admin_product_import');
|
||||||
|
|
||||||
|
//leads
|
||||||
|
Route::get('datatables/leads', 'DataTableController@getLeads')->name('datatables-leads');
|
||||||
|
|
||||||
|
Route::get('/admin/leads', 'LeadController@index')->name('admin_leads');
|
||||||
|
Route::get('/admin/lead/edit/{id}', 'LeadController@edit')->name('admin_lead_edit');
|
||||||
|
|
||||||
|
Route::get('/admin/lead/change_mail/{id}', 'UserUpdateEmailController@adminChangeMail')->name('admin_lead_change_mail');
|
||||||
|
Route::post('/admin/lead/change_mail/{id}', 'UserUpdateEmailController@adminUpdateMail')->name('admin_lead_change_mail');
|
||||||
|
|
||||||
|
Route::post('/admin/lead/store', 'LeadController@store')->name('admin_lead_store');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
//login pages for superadmin
|
||||||
|
Route::group(['middleware' => ['superadmin']], function() {
|
||||||
|
//leads
|
||||||
|
Route::get('/admin/users', 'AdminUserController@index')->name('admin_users');
|
||||||
|
Route::get('/admin/user/edit/{user_id}', 'AdminUserController@edit')->name('admin_user_edit');
|
||||||
|
Route::post('/admin/user/store', 'AdminUserController@store')->name('admin_user_store');
|
||||||
|
Route::get('/admin/user/delete/{user_id}', 'AdminUserController@deleteUser')->name('admin_user_delete');
|
||||||
|
|
||||||
|
Route::get('data_table', 'DataTableController@datatable')->name('data_table');
|
||||||
|
// Route::get('datatables/leads', 'DataTableController@getLeads')->name('datatables-leads');
|
||||||
|
Route::get('data/table/users', 'DataTableController@getUsers')->name('data_table_users');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
Route::domain('{subdomain}.mivita.local')->group(function () {
|
||||||
|
|
||||||
|
Route::group(['middleware' => ['subdomain']], function() {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
|
//Route::get('/', 'HomeController@index')->name('/');
|
||||||
|
|
||||||
|
/*Route::post('/register/data', 'HomeController@register')->name('register_data');
|
||||||
|
Route::post('/user/check/mail', 'HomeController@checkMail')->name('user_check_mail');
|
||||||
|
|
||||||
|
Route::get('/register/verify/{confirmationCode}', 'HomeController@verify')->name('register_verify');
|
||||||
|
|
||||||
|
Route::get('/status/register', 'HomeController@statusRegister')->name('status_register');
|
||||||
|
Route::get('/status/verify', 'HomeController@statusVerify')->name('status_verify');
|
||||||
|
Route::get('/status/error', 'HomeController@statusError')->name('status_error');
|
||||||
|
|
||||||
|
|
||||||
|
Route::get('/user/update_email_confirm/{token}', 'UpdateEmailController@activateMail')->name('user_update_email_confirm');
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*Route::get('storage/{what}/{path}/{id}/{file_name}', function($what = null, $path = null, $id = null, $file_name = null)
|
||||||
|
{
|
||||||
|
$path = storage_path().'/app/'.$path.'/'.$id.'/images/'.$what.'/'.$file_name;
|
||||||
|
if (file_exists($path)) {
|
||||||
|
return Response::file($path);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Route::get('storage/{user_id}/{file_name}', function($user_id = null, $file_name = null)
|
||||||
|
{
|
||||||
|
$path = storage_path().'/'.'app'.'/user/' . $user_id . '/verification/' . $file_name;
|
||||||
|
if (file_exists($path)) {
|
||||||
|
return Response::file($path);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
use App\Mail\MailResetPassword;
|
||||||
|
|
||||||
|
Route::get('/send_test_email', function(){
|
||||||
|
|
||||||
|
try {
|
||||||
|
// Mail::to('kevin.adametz@me.com')->send(new MailResetPassword('asdasd', Auth::user()));
|
||||||
|
|
||||||
|
Mail::raw('Sending emails with Mailgun and Laravel is easy!', function($message) {
|
||||||
|
$message->to('kevin.adametz@me.com', 'Kevin Adametz');
|
||||||
|
$message->subject('testing Networktrips');
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
dd($e->getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
$fail = Mail::failures();
|
||||||
|
|
||||||
|
if(!empty($fail)) throw new \Exception('Could not send message to '.$fail[0]);
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
@ -23,38 +23,29 @@ Route::get('storage/images/{from}/{slug}', function($from = null, $slug = null)
|
||||||
}
|
}
|
||||||
})->name('storage_images');
|
})->name('storage_images');
|
||||||
|
|
||||||
|
Route::get('product/image/{slug}', function($slug = null)
|
||||||
|
{
|
||||||
|
$image = \App\Models\ProductImage::where('slug', $slug)->first();
|
||||||
|
$path = storage_path('app/public').'/images/product'.'/'.$image->product_id.'/'.$image->filename;
|
||||||
|
if (file_exists($path)) {
|
||||||
|
return Response::file($path);
|
||||||
|
}
|
||||||
|
})->name('product_image');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Route::domain('mivita.local')->group(function () {
|
Route::domain('mivita.local')->group(function () {
|
||||||
|
|
||||||
Route::get('/', 'Web\SiteController@index')->name('/');
|
Route::get('/', 'Web\SiteController@index')->name('/');
|
||||||
|
Route::get('/card/add/{id}/{quantity?}/{product_slug?}', 'Web\CardController@addToCardGet')->name('base.card_add_get');
|
||||||
Route::get('product/image/{slug}', function($slug = null)
|
Route::post('/card/add/{id}', 'Web\CardController@addToCardPost')->name('base.card_add_post');
|
||||||
{
|
Route::get('/card/show', 'Web\CardController@showCard')->name('base.card_show');
|
||||||
$image = \App\Models\ProductImage::where('slug', $slug)->first();
|
Route::get('/card/checkout', 'Web\CardController@checkoutCard')->name('base.card_checkout');
|
||||||
$path = storage_path('app/public').'/images/product'.'/'.$image->product_id.'/'.$image->filename;
|
Route::post('/card/checkout_final', 'Web\CardController@checkoutFinalCard')->name('base.card_checkout_final');
|
||||||
if (file_exists($path)) {
|
Route::post('/card/update', 'Web\CardController@updateCard')->name('base.card_update');
|
||||||
return Response::file($path);
|
Route::get('/card/remove/{rowId}', 'Web\CardController@removeCard')->name('base.card_remove');
|
||||||
}
|
Route::get('/card/delete', 'Web\CardController@deleteCard')->name('base.card_delete');
|
||||||
})->name('product_image');
|
Route::get('/{site}/{subsite?}/{product_slug?}', 'Web\SiteController@site')->name('base.site');
|
||||||
|
|
||||||
Route::get('/card/add/{id}/{quantity?}/{product_slug?}', 'Web\CardController@addToCardGet')->name('card_add_get');
|
|
||||||
|
|
||||||
Route::post('/card/add/{id}', 'Web\CardController@addToCardPost')->name('card_add_post');
|
|
||||||
|
|
||||||
Route::get('/card/show', 'Web\CardController@showCard')->name('card_show');
|
|
||||||
|
|
||||||
Route::get('/card/checkout', 'Web\CardController@checkoutCard')->name('card_checkout');
|
|
||||||
Route::post('/card/checkout_final', 'Web\CardController@checkoutFinalCard')->name('card_checkout_final');
|
|
||||||
|
|
||||||
Route::post('/card/update', 'Web\CardController@updateCard')->name('card_update');
|
|
||||||
|
|
||||||
Route::get('/card/remove/{rowId}', 'Web\CardController@removeCard')->name('card_remove');
|
|
||||||
|
|
||||||
Route::get('/card/delete', 'Web\CardController@deleteCard')->name('card_delete');
|
|
||||||
|
|
||||||
Route::get('/{site}/{subsite?}/{product_slug?}', 'Web\SiteController@site')->name('site');
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -185,11 +176,6 @@ Route::domain('mein.mivita.local')->group(function () {
|
||||||
|
|
||||||
Route::post('/admin/lead/store', 'LeadController@store')->name('admin_lead_store');
|
Route::post('/admin/lead/store', 'LeadController@store')->name('admin_lead_store');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
//login pages for superadmin
|
//login pages for superadmin
|
||||||
|
|
@ -200,13 +186,14 @@ Route::domain('mein.mivita.local')->group(function () {
|
||||||
Route::post('/admin/user/store', 'AdminUserController@store')->name('admin_user_store');
|
Route::post('/admin/user/store', 'AdminUserController@store')->name('admin_user_store');
|
||||||
Route::get('/admin/user/delete/{user_id}', 'AdminUserController@deleteUser')->name('admin_user_delete');
|
Route::get('/admin/user/delete/{user_id}', 'AdminUserController@deleteUser')->name('admin_user_delete');
|
||||||
|
|
||||||
|
Route::get('/admin/shippings', 'ShippingController@index')->name('admin_shippings');
|
||||||
|
Route::get('/admin/shipping/edit/{shipping_id}', 'ShippingController@edit')->name('admin_shipping_edit');
|
||||||
|
Route::post('/admin/shipping/store', 'ShippingController@store')->name('admin_shipping_store');
|
||||||
|
Route::get('/admin/shipping/delete/{shipping_id}', 'ShippingController@deleteUser')->name('admin_shipping_delete');
|
||||||
|
|
||||||
Route::get('data_table', 'DataTableController@datatable')->name('data_table');
|
Route::get('data_table', 'DataTableController@datatable')->name('data_table');
|
||||||
// Route::get('datatables/leads', 'DataTableController@getLeads')->name('datatables-leads');
|
// Route::get('datatables/leads', 'DataTableController@getLeads')->name('datatables-leads');
|
||||||
Route::get('data/table/users', 'DataTableController@getUsers')->name('data_table_users');
|
Route::get('data/table/users', 'DataTableController@getUsers')->name('data_table_users');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -215,12 +202,22 @@ Route::domain('mein.mivita.local')->group(function () {
|
||||||
|
|
||||||
/* ROUTING the SUBDOMAINS*/
|
/* ROUTING the SUBDOMAINS*/
|
||||||
|
|
||||||
Route::domain('{sub}.mivita.local')->group(function () {
|
Route::domain('{subdomain}.mivita.local')->group(function () {
|
||||||
|
|
||||||
|
Route::group(['middleware' => ['subdomain']], function() {
|
||||||
|
|
||||||
Route::get('/', function ($sub) {
|
Route::get('/', 'Web\SiteController@index')->name('');
|
||||||
die($sub);
|
Route::get('/card/add/{id}/{quantity?}/{product_slug?}', 'Web\CardController@addToCardGet')->name('user.card_add_get');
|
||||||
});
|
Route::post('/card/add/{id}', 'Web\CardController@addToCardPost')->name('user.card_add_post');
|
||||||
|
Route::get('/card/show', 'Web\CardController@showCard')->name('user.card_show');
|
||||||
|
Route::get('/card/checkout', 'Web\CardController@checkoutCard')->name('user.card_checkout');
|
||||||
|
Route::post('/card/checkout_final', 'Web\CardController@checkoutFinalCard')->name('user.card_checkout_final');
|
||||||
|
Route::post('/card/update', 'Web\CardController@updateCard')->name('user.card_update');
|
||||||
|
Route::get('/card/remove/{rowId}', 'Web\CardController@removeCard')->name('user.card_remove');
|
||||||
|
Route::get('/card/delete', 'Web\CardController@deleteCard')->name('user.card_delete');
|
||||||
|
Route::get('/{site}/{subsite?}/{product_slug?}', 'Web\SiteController@site')->name('user.site');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue