Merge master
This commit is contained in:
parent
9342b0a773
commit
f301a2daf7
|
|
@ -12,5 +12,6 @@ installed
|
||||||
_ide_helper.php
|
_ide_helper.php
|
||||||
*.swp
|
*.swp
|
||||||
|
|
||||||
|
|
||||||
# Do not include backup lang files
|
# Do not include backup lang files
|
||||||
resources/lang/*/[a-zA-Z]*20[0-9][0-9][0-1][0-9][0-3][0-9]_[0-2][0-9][0-5][0-9][0-5][0-9].php
|
resources/lang/*/[a-zA-Z]*20[0-9][0-9][0-1][0-9][0-3][0-9]_[0-2][0-9][0-5][0-9][0-5][0-9].php
|
||||||
|
|
@ -168,7 +168,7 @@ class EventCheckInController extends MyBaseController
|
||||||
if ($attendee->has_arrived) {
|
if ($attendee->has_arrived) {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => 'error',
|
'status' => 'error',
|
||||||
'message' => trans("Controllers.attendee_already_checked_in", ["time"=> $attendee->arrival_time->format(env("DEFAULT_DATETIME_FORMAT"))])
|
'message' => trans("Controllers.attendee_already_checked_in", ["time"=> $attendee->arrival_time->format(config("attendize.default_datetime_format"))])
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,14 +2,15 @@
|
||||||
|
|
||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
use App\Models\Event;
|
|
||||||
use App\Models\EventImage;
|
|
||||||
use App\Models\Organiser;
|
|
||||||
use Auth;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Image;
|
|
||||||
use Log;
|
use Log;
|
||||||
|
use Auth;
|
||||||
|
use Image;
|
||||||
use Validator;
|
use Validator;
|
||||||
|
use App\Models\Event;
|
||||||
|
use App\Models\Organiser;
|
||||||
|
use App\Models\EventImage;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Spatie\GoogleCalendar\Event as GCEvent;
|
||||||
|
|
||||||
class EventController extends MyBaseController
|
class EventController extends MyBaseController
|
||||||
{
|
{
|
||||||
|
|
@ -224,6 +225,7 @@ class EventController extends MyBaseController
|
||||||
$event->title = $request->get('title');
|
$event->title = $request->get('title');
|
||||||
$event->description = strip_tags($request->get('description'));
|
$event->description = strip_tags($request->get('description'));
|
||||||
$event->start_date = $request->get('start_date');
|
$event->start_date = $request->get('start_date');
|
||||||
|
$event->google_tag_manager_code = $request->get('google_tag_manager_code');
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If the google place ID is the same as before then don't update the venue
|
* If the google place ID is the same as before then don't update the venue
|
||||||
|
|
@ -265,6 +267,7 @@ class EventController extends MyBaseController
|
||||||
}
|
}
|
||||||
|
|
||||||
$event->end_date = $request->get('end_date');
|
$event->end_date = $request->get('end_date');
|
||||||
|
$event->event_image_position = $request->get('event_image_position');
|
||||||
|
|
||||||
if ($request->get('remove_current_image') == '1') {
|
if ($request->get('remove_current_image') == '1') {
|
||||||
EventImage::where('event_id', '=', $event->id)->delete();
|
EventImage::where('event_id', '=', $event->id)->delete();
|
||||||
|
|
@ -341,4 +344,20 @@ class EventController extends MyBaseController
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Puplish event and redirect
|
||||||
|
* @param Integer|false $event_id
|
||||||
|
* @return \Illuminate\Http\RedirectResponse
|
||||||
|
*/
|
||||||
|
public function makeEventLive($event_id = false) {
|
||||||
|
$event = Event::scope()->findOrFail($event_id);
|
||||||
|
$event->is_live = 1;
|
||||||
|
$event->save();
|
||||||
|
\Session::flash('message', trans('Event.go_live'));
|
||||||
|
|
||||||
|
return redirect()->action(
|
||||||
|
'EventDashboardController@showDashboard', ['event_id' => $event_id]
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,12 @@
|
||||||
|
|
||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use DateTime;
|
||||||
|
use DatePeriod;
|
||||||
|
use DateInterval;
|
||||||
|
use Carbon\Carbon;
|
||||||
use App\Models\Event;
|
use App\Models\Event;
|
||||||
use App\Models\EventStats;
|
use App\Models\EventStats;
|
||||||
use Carbon\Carbon;
|
|
||||||
use DateInterval;
|
|
||||||
use DatePeriod;
|
|
||||||
use DateTime;
|
|
||||||
|
|
||||||
class EventDashboardController extends MyBaseController
|
class EventDashboardController extends MyBaseController
|
||||||
{
|
{
|
||||||
|
|
@ -89,4 +89,15 @@ class EventDashboardController extends MyBaseController
|
||||||
|
|
||||||
return view('ManageEvent.Dashboard', $data);
|
return view('ManageEvent.Dashboard', $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Redirect to event dashboard
|
||||||
|
* @param Integer|false $event_id
|
||||||
|
* @return \Illuminate\Http\RedirectResponse
|
||||||
|
*/
|
||||||
|
public function redirectToDashboard($event_id = false) {
|
||||||
|
return redirect()->action(
|
||||||
|
'EventDashboardController@showDashboard', ['event_id' => $event_id]
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
|
class IndexController extends Controller
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* redirect index page
|
||||||
|
* @param Request $request http request
|
||||||
|
* @return \Illuminate\Http\RedirectResponse
|
||||||
|
*/
|
||||||
|
public function showIndex(Request $request)
|
||||||
|
{
|
||||||
|
return redirect()->route('showSelectOrganiser');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -51,6 +51,7 @@ class OrganiserCustomizeController extends MyBaseController
|
||||||
$organiser->name = $request->get('name');
|
$organiser->name = $request->get('name');
|
||||||
$organiser->about = $request->get('about');
|
$organiser->about = $request->get('about');
|
||||||
$organiser->google_analytics_code = $request->get('google_analytics_code');
|
$organiser->google_analytics_code = $request->get('google_analytics_code');
|
||||||
|
$organiser->google_tag_manager_code = $request->get('google_tag_manager_code');
|
||||||
$organiser->email = $request->get('email');
|
$organiser->email = $request->get('email');
|
||||||
$organiser->enable_organiser_page = $request->get('enable_organiser_page');
|
$organiser->enable_organiser_page = $request->get('enable_organiser_page');
|
||||||
$organiser->facebook = $request->get('facebook');
|
$organiser->facebook = $request->get('facebook');
|
||||||
|
|
|
||||||
|
|
@ -44,11 +44,4 @@ Route::group(['prefix' => 'api', 'middleware' => 'auth:api'], function () {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
Route::get('/', function () {
|
|
||||||
return response()->json([
|
|
||||||
'Hello' => Auth::guard('api')->user()->full_name . '!'
|
|
||||||
]);
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
@ -41,16 +41,6 @@ Route::group(
|
||||||
'as' => 'logout',
|
'as' => 'logout',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
|
||||||
Route::get('/terms_and_conditions', [
|
|
||||||
'as' => 'termsAndConditions',
|
|
||||||
function () {
|
|
||||||
return 'TODO: add terms and cond';
|
|
||||||
}
|
|
||||||
]);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Route::group(['middleware' => ['installed']], function () {
|
Route::group(['middleware' => ['installed']], function () {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -326,27 +316,17 @@ Route::group(
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
Route::get('{event_id}', function ($event_id) {
|
Route::get('{event_id}/', [
|
||||||
return Redirect::route('showEventDashboard', [
|
'uses' => 'EventDashboardController@redirectToDashboard',
|
||||||
'event_id' => $event_id,
|
]
|
||||||
]);
|
);
|
||||||
});
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @todo Move to a controller
|
* @todo Move to a controller
|
||||||
*/
|
*/
|
||||||
Route::get('{event_id}/go_live', [
|
Route::get('{event_id}/go_live', [
|
||||||
'as' => 'MakeEventLive',
|
'as' => 'MakeEventLive',
|
||||||
function ($event_id) {
|
'uses' => 'EventController@makeEventLive',
|
||||||
$event = \App\Models\Event::scope()->findOrFail($event_id);
|
|
||||||
$event->is_live = 1;
|
|
||||||
$event->save();
|
|
||||||
\Session::flash('message', trans('Event.go_live'));
|
|
||||||
|
|
||||||
return Redirect::route('showEventDashboard', [
|
|
||||||
'event_id' => $event_id,
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -720,18 +700,9 @@ Route::group(
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
Route::get('/', function () {
|
Route::get('/', [
|
||||||
return Redirect::route('showSelectOrganiser');
|
'as' => 'index',
|
||||||
// I prefer it that way:
|
'uses' => 'IndexController@showIndex',
|
||||||
// return Redirect::route('showOrganiserHome', ["organiser_id"=>1]);
|
|
||||||
});
|
|
||||||
|
|
||||||
Route::get('/terms_and_conditions', [
|
|
||||||
'as' => 'termsAndConditions',
|
|
||||||
function () {
|
|
||||||
return 'TODO: add terms and cond';
|
|
||||||
}
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||||
|
use Illuminate\Support\Str;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Attendize.com - Event Management & Ticketing
|
Attendize.com - Event Management & Ticketing
|
||||||
|
|
@ -44,8 +45,16 @@ class Attendee extends MyBaseModel
|
||||||
parent::boot();
|
parent::boot();
|
||||||
|
|
||||||
static::creating(function ($order) {
|
static::creating(function ($order) {
|
||||||
$order->private_reference_number = str_pad(random_int(0, pow(10, 9) - 1), 9, '0', STR_PAD_LEFT);
|
|
||||||
|
do {
|
||||||
|
//generate a random string using Laravel's str_random helper
|
||||||
|
$token = Str::Random(15);
|
||||||
|
} //check if the token already exists and if it does, try again
|
||||||
|
|
||||||
|
while (Attendee::where('private_reference_number', $token)->first());
|
||||||
|
$order->private_reference_number = $token;
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ namespace App\Models;
|
||||||
use File;
|
use File;
|
||||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||||
use PDF;
|
use PDF;
|
||||||
|
use Illuminate\Support\Str;
|
||||||
|
|
||||||
class Order extends MyBaseModel
|
class Order extends MyBaseModel
|
||||||
{
|
{
|
||||||
|
|
@ -179,7 +180,14 @@ class Order extends MyBaseModel
|
||||||
parent::boot();
|
parent::boot();
|
||||||
|
|
||||||
static::creating(function ($order) {
|
static::creating(function ($order) {
|
||||||
$order->order_reference = strtoupper(str_random(5)) . date('jn');
|
do {
|
||||||
|
//generate a random string using Laravel's str_random helper
|
||||||
|
$token = Str::Random(5) . date('jn');
|
||||||
|
} //check if the token already exists and if it does, try again
|
||||||
|
|
||||||
|
while (Order::where('order_reference', $token)->first());
|
||||||
|
$order->order_reference = $token;
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -69,5 +69,8 @@ return [
|
||||||
'default_payment_gateway' => 1, #Stripe=1 Paypal=2
|
'default_payment_gateway' => 1, #Stripe=1 Paypal=2
|
||||||
|
|
||||||
'cdn_url_user_assets' => '',
|
'cdn_url_user_assets' => '',
|
||||||
'cdn_url_static_assets' => ''
|
'cdn_url_static_assets' => '',
|
||||||
|
|
||||||
|
'google_analytics_id' => env('GOOGLE_ANALYTICS_ID'),
|
||||||
|
'google_maps_geocoding_key' => env('GOOGLE_MAPS_GEOCODING_KEY')
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class AddEventImagePositionToEvents extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::table('events', function (Blueprint $table) {
|
||||||
|
$table->string('event_image_position')->nullable();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::table('events', function (Blueprint $table) {
|
||||||
|
$table->dropColumn('event_image_position');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class ChangePrivateReferenceNumberColumnType extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
* Change Private Reference Number from INT to VARCHAR ColumnType
|
||||||
|
* and increases the character count to 15
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::table('attendees', function (Blueprint $table) {
|
||||||
|
$table->string('private_reference_number', 15)->change();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::table('attendees', function ($table) {
|
||||||
|
$table->integer('private_reference_number')->change();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class AddGtmFieldToOrganiser extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::table('organisers', function (Blueprint $table) {
|
||||||
|
$table->string('google_tag_manager_code', 20)->after('google_analytics_code')
|
||||||
|
->nullable();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::table('organisers', function (Blueprint $table) {
|
||||||
|
$table->dropColumn('google_tag_manager_code');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
|
||||||
|
class AddGtmFieldToEvent extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::table('events', function (Blueprint $table) {
|
||||||
|
$table->string('google_tag_manager_code', 20)->after('ticket_sub_text_color')->nullable();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::table('events', function (Blueprint $table) {
|
||||||
|
$table->dropColumn('google_tag_manager_code');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -107,9 +107,27 @@ var checkinApp = new Vue({
|
||||||
}
|
}
|
||||||
|
|
||||||
qrcode.callback = this.QrCheckin;
|
qrcode.callback = this.QrCheckin;
|
||||||
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
|
|
||||||
|
|
||||||
navigator.getUserMedia({
|
// FIX SAFARI CAMERA
|
||||||
|
if (navigator.mediaDevices === undefined) {
|
||||||
|
navigator.mediaDevices = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (navigator.mediaDevices.getUserMedia === undefined) {
|
||||||
|
navigator.mediaDevices.getUserMedia = function(constraints) {
|
||||||
|
var getUserMedia = navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
|
||||||
|
|
||||||
|
if (!getUserMedia) {
|
||||||
|
return Promise.reject(new Error('getUserMedia is not implemented in this browser'));
|
||||||
|
}
|
||||||
|
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
getUserMedia.call(navigator, constraints, resolve, reject);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
navigator.mediaDevices.getUserMedia({
|
||||||
video: {
|
video: {
|
||||||
facingMode: 'environment'
|
facingMode: 'environment'
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 67 KiB |
|
|
@ -50,6 +50,15 @@ Demo Back-end Demo: http://attendize.website/signup<br />
|
||||||
---
|
---
|
||||||
Feel free to fork and contribute. If you are unsure about adding a feature create a Github issue to ask for Feedback. Read the [contribution guidelines](http://www.attendize.com/contributions.html)
|
Feel free to fork and contribute. If you are unsure about adding a feature create a Github issue to ask for Feedback. Read the [contribution guidelines](http://www.attendize.com/contributions.html)
|
||||||
|
|
||||||
|
### Submitting an issue
|
||||||
|
If you are creating an issue/bug report for Attendize please let us know the following.
|
||||||
|
1. The version of Attendize you are using. e.g. master branch or release tag.
|
||||||
|
2. Are you running Attendize in Docker or using a Virtual Machine.
|
||||||
|
3. What version or Operating System are you using. e.g. Ubuntu 14.04
|
||||||
|
4. The version of PHP you are using. e.g PHP 7.1
|
||||||
|
5. Are you using Attendize with Nginx or Apache.
|
||||||
|
6. Steps to reproduce the bug.
|
||||||
|
|
||||||
### Installation
|
### Installation
|
||||||
---
|
---
|
||||||
To get developing straight away use the [Pre-configured Docker Environment](http://www.attendize.com/getting_started.html#running-attendize-in-docker-for-development)<br />
|
To get developing straight away use the [Pre-configured Docker Environment](http://www.attendize.com/getting_started.html#running-attendize-in-docker-for-development)<br />
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,12 @@ return array (
|
||||||
'event_end_date' => 'Event End Date',
|
'event_end_date' => 'Event End Date',
|
||||||
'event_flyer' => 'Event Flyer',
|
'event_flyer' => 'Event Flyer',
|
||||||
'event_image' => 'Event Image (Flyer or Graphic etc.)',
|
'event_image' => 'Event Image (Flyer or Graphic etc.)',
|
||||||
|
'event_image_position' => 'Event Image Position',
|
||||||
|
'event_image_position_hide' => 'Hidden',
|
||||||
|
'event_image_position_before' => 'Before',
|
||||||
|
'event_image_position_after' => 'After',
|
||||||
|
'event_image_position_left' => 'Left',
|
||||||
|
'event_image_position_right' => 'Right',
|
||||||
'event_orders' => 'Event Orders',
|
'event_orders' => 'Event Orders',
|
||||||
'event_start_date' => 'Event Start Date',
|
'event_start_date' => 'Event Start Date',
|
||||||
'event_title' => 'Event Title',
|
'event_title' => 'Event Title',
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,8 @@ return array (
|
||||||
'events' => 'Events',
|
'events' => 'Events',
|
||||||
'google_analytics_code' => 'Google Analytics Code',
|
'google_analytics_code' => 'Google Analytics Code',
|
||||||
'google_analytics_code_placeholder' => 'UA-XXXXX-X',
|
'google_analytics_code_placeholder' => 'UA-XXXXX-X',
|
||||||
|
'google_tag_manager_code' => 'Google Tag Manager Code',
|
||||||
|
'google_tag_manager_code_placeholder' => 'GTM-XXXXX',
|
||||||
'header_background_color' => 'Header Background Color',
|
'header_background_color' => 'Header Background Color',
|
||||||
'hide_additional_organiser_options' => 'Hide Additional Organiser Options',
|
'hide_additional_organiser_options' => 'Hide Additional Organiser Options',
|
||||||
'make_organiser_hidden' => 'Hide organiser page from the public.',
|
'make_organiser_hidden' => 'Hide organiser page from the public.',
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,12 @@ return array(
|
||||||
'event_end_date' => 'Fecha de finalización del evento',
|
'event_end_date' => 'Fecha de finalización del evento',
|
||||||
'event_flyer' => 'Folleto del evento',
|
'event_flyer' => 'Folleto del evento',
|
||||||
'event_image' => 'Imagen del evento (folleto o gráfico, etc.)',
|
'event_image' => 'Imagen del evento (folleto o gráfico, etc.)',
|
||||||
|
'event_image_position' => 'Imagen posición',
|
||||||
|
'event_image_position_hide' => 'Oculto',
|
||||||
|
'event_image_position_before'=> 'Antes de',
|
||||||
|
'event_image_position_after' => 'Después',
|
||||||
|
'event_image_position_left' => 'Lado Izquierdo',
|
||||||
|
'event_image_position_right' => 'Lado derecho',
|
||||||
'event_orders' => 'Pedidos de Eventos',
|
'event_orders' => 'Pedidos de Eventos',
|
||||||
'event_start_date' => 'Fecha de inicio del evento',
|
'event_start_date' => 'Fecha de inicio del evento',
|
||||||
'event_title' => 'Título del evento',
|
'event_title' => 'Título del evento',
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,12 @@ return array (
|
||||||
'event_end_date' => 'Date de fin de l\'événement',
|
'event_end_date' => 'Date de fin de l\'événement',
|
||||||
'event_flyer' => 'Fascicule de l\'événement',
|
'event_flyer' => 'Fascicule de l\'événement',
|
||||||
'event_image' => 'Image pour l\'événement (fasciule, graphique, etc.)',
|
'event_image' => 'Image pour l\'événement (fasciule, graphique, etc.)',
|
||||||
|
'event_image_position' => 'Position de l\'image',
|
||||||
|
'event_image_position_hide' => 'Cachée',
|
||||||
|
'event_image_position_before' => 'Avant',
|
||||||
|
'event_image_position_after' => 'Après',
|
||||||
|
'event_image_position_left' => 'A gauche',
|
||||||
|
'event_image_position_right' => 'A droite',
|
||||||
'event_orders' => 'Commandes pour l\'événement',
|
'event_orders' => 'Commandes pour l\'événement',
|
||||||
'event_start_date' => 'Date de début de l\'événement',
|
'event_start_date' => 'Date de début de l\'événement',
|
||||||
'event_title' => 'Titre de l\'événement',
|
'event_title' => 'Titre de l\'événement',
|
||||||
|
|
|
||||||
|
|
@ -20,5 +20,5 @@ return array (
|
||||||
'question_options' => 'Options de la question',
|
'question_options' => 'Options de la question',
|
||||||
'question_placeholder' => 'par ex. Merci de saisir votre adresse complète ?',
|
'question_placeholder' => 'par ex. Merci de saisir votre adresse complète ?',
|
||||||
'question_type' => 'Type de question',
|
'question_type' => 'Type de question',
|
||||||
'require_this_question_for_ticket(s)' => 'Exiger une réponse pour le(s) billet(s)',
|
'require_this_question_for_ticket(s)' => 'Activer cette question pour le(s) billet(s)',
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,12 @@ return array (
|
||||||
'event_end_date' => 'Data zakończenia wydarzenia',
|
'event_end_date' => 'Data zakończenia wydarzenia',
|
||||||
'event_flyer' => 'Broszura',
|
'event_flyer' => 'Broszura',
|
||||||
'event_image' => 'Obraz Wydarzenia',
|
'event_image' => 'Obraz Wydarzenia',
|
||||||
|
'event_image_position' => 'Pozycja Obrazu',
|
||||||
|
'event_image_position_hide' => 'Ukryty',
|
||||||
|
'event_image_position_before' => 'Przed',
|
||||||
|
'event_image_position_after' => 'Po',
|
||||||
|
'event_image_position_left' => 'Lewa Strona',
|
||||||
|
'event_image_position_right' => 'Prawa Strona',
|
||||||
'event_orders' => 'Zamówienia wydarzenia',
|
'event_orders' => 'Zamówienia wydarzenia',
|
||||||
'event_start_date' => 'Data rozpoczęcia wydarzenia',
|
'event_start_date' => 'Data rozpoczęcia wydarzenia',
|
||||||
'event_title' => 'Tytuł Wydarzenia',
|
'event_title' => 'Tytuł Wydarzenia',
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
@include('Shared/Layouts/ViewJavascript')
|
@include('Shared/Layouts/ViewJavascript')
|
||||||
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0">
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
|
|
||||||
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
||||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@
|
||||||
@stop
|
@stop
|
||||||
|
|
||||||
@section('head')
|
@section('head')
|
||||||
{!! HTML::script('https://maps.googleapis.com/maps/api/js?libraries=places&key='.env("GOOGLE_MAPS_GEOCODING_KEY")) !!}
|
{!! HTML::script('https://maps.googleapis.com/maps/api/js?libraries=places&key='.config("attendize.google_maps_geocoding_key")) !!}
|
||||||
{!! HTML::script('vendor/geocomplete/jquery.geocomplete.min.js') !!}
|
{!! HTML::script('vendor/geocomplete/jquery.geocomplete.min.js') !!}
|
||||||
<script>
|
<script>
|
||||||
$(function () {
|
$(function () {
|
||||||
|
|
@ -245,7 +245,7 @@
|
||||||
<td>{{ $affiliate->visits }}</td>
|
<td>{{ $affiliate->visits }}</td>
|
||||||
<td>{{ $affiliate->tickets_sold }}</td>
|
<td>{{ $affiliate->tickets_sold }}</td>
|
||||||
<td>{{ money($affiliate->sales_volume, $event->currency) }}</td>
|
<td>{{ money($affiliate->sales_volume, $event->currency) }}</td>
|
||||||
<td>{{ $affiliate->updated_at->format(env("DEFAULT_DATETIME_FORMAT")) }}</td>
|
<td>{{ $affiliate->updated_at->format(config("attendize.default_datetime_format")) }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="meta">
|
<td class="meta">
|
||||||
@if($message->sent_at!=null) <?php /* Can occur when there was mailing error*/ ?>
|
@if($message->sent_at!=null) <?php /* Can occur when there was mailing error*/ ?>
|
||||||
<p class="date">{{$message->sent_at->format(env("DEFAULT_DATETIME_FORMAT"))}}</p>
|
<p class="date">{{$message->sent_at->format(config("attendize.default_datetime_format"))}}</p>
|
||||||
@else
|
@else
|
||||||
<p class="date">@lang("Message.unsent")</p>
|
<p class="date">@lang("Message.unsent")</p>
|
||||||
@endif
|
@endif
|
||||||
|
|
|
||||||
|
|
@ -155,10 +155,21 @@
|
||||||
{!! Form::label('event_image', trans("Event.event_flyer"), array('class'=>'control-label ')) !!}
|
{!! Form::label('event_image', trans("Event.event_flyer"), array('class'=>'control-label ')) !!}
|
||||||
{!! Form::styledFile('event_image', 1) !!}
|
{!! Form::styledFile('event_image', 1) !!}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="float-l">
|
|
||||||
@if($event->images->count())
|
@if($event->images->count())
|
||||||
|
<div class="form-group">
|
||||||
|
{!! Form::label('event_image_position', trans("Event.event_image_position"), array('class'=>'control-label')) !!}
|
||||||
|
{!! Form::select('event_image_position', [
|
||||||
|
'' => trans("Event.event_image_position_hide"),
|
||||||
|
'before' => trans("Event.event_image_position_before"),
|
||||||
|
'after' => trans("Event.event_image_position_after"),
|
||||||
|
'left' => trans("Event.event_image_position_left"),
|
||||||
|
'right' => trans("Event.event_image_position_right"),
|
||||||
|
],
|
||||||
|
Input::old('event_image_position'),
|
||||||
|
['class'=>'form-control']
|
||||||
|
) !!}
|
||||||
|
</div>
|
||||||
{!! Form::label('', trans("Event.current_event_flyer"), array('class'=>'control-label ')) !!}
|
{!! Form::label('', trans("Event.current_event_flyer"), array('class'=>'control-label ')) !!}
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="well well-sm well-small">
|
<div class="well well-sm well-small">
|
||||||
|
|
@ -167,6 +178,11 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="float-l">
|
||||||
|
@if($event->images->count())
|
||||||
<div class="thumbnail">
|
<div class="thumbnail">
|
||||||
{!!HTML::image('/'.$event->images->first()['image_path'])!!}
|
{!!HTML::image('/'.$event->images->first()['image_path'])!!}
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -174,6 +190,18 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
{!! Form::label('google_tag_manager_code', trans("Organiser.google_tag_manager_code"), ['class'=>'control-label']) !!}
|
||||||
|
{!! Form::text('google_tag_manager_code', Input::old('google_tag_manager_code'), [
|
||||||
|
'class'=>'form-control',
|
||||||
|
'placeholder' => trans("Organiser.google_tag_manager_code_placeholder"),
|
||||||
|
])
|
||||||
|
!!}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@
|
||||||
<td>{{{$attendee->email}}}</td>
|
<td>{{{$attendee->email}}}</td>
|
||||||
<td>{{{$attendee->ticket->title}}}</td>
|
<td>{{{$attendee->ticket->title}}}</td>
|
||||||
<td>{{{$attendee->order->order_reference}}}</td>
|
<td>{{{$attendee->order->order_reference}}}</td>
|
||||||
<td>{{$attendee->created_at->format(env("DEFAULT_DATETIME_FORMAT"))}}</td>
|
<td>{{$attendee->created_at->format(config("attendize.default_datetime_format"))}}</td>
|
||||||
<td><input type="checkbox" style="border: 1px solid #000; height: 15px; width: 15px;" /></td>
|
<td><input type="checkbox" style="border: 1px solid #000; height: 15px; width: 15px;" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|
|
||||||
|
|
@ -137,6 +137,14 @@
|
||||||
))
|
))
|
||||||
!!}
|
!!}
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
{!! Form::label('google_tag_manager_code', trans("Organiser.google_tag_manager_code"), ['class'=>'control-label']) !!}
|
||||||
|
{!! Form::text('google_tag_manager_code', Input::old('google_tag_manager_code'), [
|
||||||
|
'class'=>'form-control',
|
||||||
|
'placeholder' => trans("Organiser.google_tag_manager_code_placeholder"),
|
||||||
|
])
|
||||||
|
!!}
|
||||||
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@
|
||||||
<script src="//cdnjs.cloudflare.com/ajax/libs/raphael/2.1.4/raphael-min.js" integrity="sha256-Gk+dzc4kV2rqAZMkyy3gcfW6Xd66BhGYjVWa/FjPu+s=" crossorigin="anonymous"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/raphael/2.1.4/raphael-min.js" integrity="sha256-Gk+dzc4kV2rqAZMkyy3gcfW6Xd66BhGYjVWa/FjPu+s=" crossorigin="anonymous"></script>
|
||||||
<script src="//cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.1/morris.min.js" integrity="sha256-0rg2VtfJo3VUij/UY9X0HJP7NET6tgAY98aMOfwP0P8=" crossorigin="anonymous"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.1/morris.min.js" integrity="sha256-0rg2VtfJo3VUij/UY9X0HJP7NET6tgAY98aMOfwP0P8=" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
{!! HTML::script('https://maps.googleapis.com/maps/api/js?libraries=places&key='.env("GOOGLE_MAPS_GEOCODING_KEY")) !!}
|
{!! HTML::script('https://maps.googleapis.com/maps/api/js?libraries=places&key='.config("attendize.google_maps_geocoding_key")) !!}
|
||||||
{!! HTML::script('vendor/geocomplete/jquery.geocomplete.min.js')!!}
|
{!! HTML::script('vendor/geocomplete/jquery.geocomplete.min.js')!!}
|
||||||
{!! HTML::script('vendor/moment/moment.js')!!}
|
{!! HTML::script('vendor/moment/moment.js')!!}
|
||||||
{!! HTML::script('vendor/fullcalendar/dist/fullcalendar.min.js')!!}
|
{!! HTML::script('vendor/fullcalendar/dist/fullcalendar.min.js')!!}
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
@stop
|
@stop
|
||||||
|
|
||||||
@section('head')
|
@section('head')
|
||||||
{!! HTML::script('https://maps.googleapis.com/maps/api/js?libraries=places&key='.env("GOOGLE_MAPS_GEOCODING_KEY")) !!}
|
{!! HTML::script('https://maps.googleapis.com/maps/api/js?libraries=places&key='.config("attendize.google_maps_geocoding_key")) !!}
|
||||||
{!! HTML::script('vendor/geocomplete/jquery.geocomplete.min.js')!!}
|
{!! HTML::script('vendor/geocomplete/jquery.geocomplete.min.js')!!}
|
||||||
@stop
|
@stop
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
@extends('Public.ViewEvent.Layouts.EventPage')
|
@extends('Public.ViewEvent.Layouts.EventPage')
|
||||||
|
|
||||||
|
@section('head')
|
||||||
|
@include('Public.ViewEvent.Partials.GoogleTagManager')
|
||||||
|
@endsection
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
@include('Public.ViewEvent.Partials.EventHeaderSection')
|
@include('Public.ViewEvent.Partials.EventHeaderSection')
|
||||||
@include('Public.ViewEvent.Partials.EventTicketsSection')
|
@include('Public.ViewEvent.Partials.EventTicketsSection')
|
||||||
|
|
|
||||||
|
|
@ -5,24 +5,46 @@
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<?php /*
|
@php
|
||||||
@if($event->images->count())
|
$descriptionColSize = $event->images->count()
|
||||||
<div class="col-md-7">
|
&& in_array($event->event_image_position, ['left', 'right'])
|
||||||
<div class="content event_details" property="description">
|
? '7' : '12';
|
||||||
{!! Markdown::parse($event->description) !!}
|
@endphp
|
||||||
</div>
|
|
||||||
</div>
|
@if ($event->images->count() && $event->event_image_position == 'left')
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<div class="content event_poster">
|
<div class="content event_poster">
|
||||||
<img alt="{{$event->title}}" src="{{config('attendize.cdn_url_user_assets').'/'.$event->images->first()['image_path']}}" property="image">
|
<img alt="{{$event->title}}" src="{{config('attendize.cdn_url_user_assets').'/'.$event->images->first()['image_path']}}" property="image">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@else */ ?>
|
@endif
|
||||||
<div class="col-md-12">
|
@if ($event->images->count() && $event->event_image_position == 'before')
|
||||||
|
<div class="col-md-12" style="margin-bottom: 20px">
|
||||||
|
<div class="content event_poster">
|
||||||
|
<img alt="{{$event->title}}" src="{{config('attendize.cdn_url_user_assets').'/'.$event->images->first()['image_path']}}" property="image">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<div class="col-md-{{ $descriptionColSize }}">
|
||||||
<div class="content event_details" property="description">
|
<div class="content event_details" property="description">
|
||||||
{!! Markdown::parse($event->description) !!}
|
{!! Markdown::parse($event->description) !!}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php /*@endif*/ ?>
|
|
||||||
|
@if ($event->images->count() && $event->event_image_position == 'right')
|
||||||
|
<div class="col-md-5">
|
||||||
|
<div class="content event_poster">
|
||||||
|
<img alt="{{$event->title}}" src="{{config('attendize.cdn_url_user_assets').'/'.$event->images->first()['image_path']}}" property="image">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
@if ($event->images->count() && $event->event_image_position == 'after')
|
||||||
|
<div class="col-md-12" style="margin-top: 20px">
|
||||||
|
<div class="content event_poster">
|
||||||
|
<img alt="{{$event->title}}" src="{{config('attendize.cdn_url_user_assets').'/'.$event->images->first()['image_path']}}" property="image">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
<?php
|
||||||
|
$gtm_code = '';
|
||||||
|
if (empty($event->google_tag_manager_code) === false) {
|
||||||
|
$gtm_code = $event->google_tag_manager_code;
|
||||||
|
} elseif (empty($event->organiser->google_tag_manager_code) === false) {
|
||||||
|
$gtm_code = $event->organiser->google_tag_manager_code;
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
|
@if(empty($gtm_code) === false)
|
||||||
|
<!-- Google Tag Manager -->
|
||||||
|
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
||||||
|
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
||||||
|
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
||||||
|
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
||||||
|
})(window,document,'script','dataLayer','{{ $gtm_code }}');</script>
|
||||||
|
<!-- End Google Tag Manager -->
|
||||||
|
@endif
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<script>showMessage('{{\Session::get('message')}}');</script>
|
<script>showMessage('{{\Session::get('message')}}');</script>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
@if(env('GOOGLE_ANALYTICS_ID'))
|
@if(config('attendize.google_analytics_id'))
|
||||||
<script>
|
<script>
|
||||||
(function (i, s, o, g, r, a, m) {
|
(function (i, s, o, g, r, a, m) {
|
||||||
i['GoogleAnalyticsObject'] = r;
|
i['GoogleAnalyticsObject'] = r;
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
m.parentNode.insertBefore(a, m)
|
m.parentNode.insertBefore(a, m)
|
||||||
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
|
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
|
||||||
|
|
||||||
ga('create', '{{env('GOOGLE_ANALYTICS_ID')}}', 'auto');
|
ga('create', '{{config('attendize.google_analytics_id')}}', 'auto');
|
||||||
ga('require', 'displayfeatures');
|
ga('require', 'displayfeatures');
|
||||||
ga('send', 'pageview');
|
ga('send', 'pageview');
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
<p>Hi there,</p>
|
<p>Hi there,</p>
|
||||||
<p>You have received a message from <b>{{ (isset($sender_name) ? $sender_name : $event->organiser->name) }}</b> in relation to the event <b>{{ $event->title }}</b>.</p>
|
<p>You have received a message from <b>{{ (isset($sender_name) ? $sender_name : $event->organiser->name) }}</b> in relation to the event <b>{{ $event->title }}</b>.</p>
|
||||||
<p style="padding: 10px; margin:10px; border: 1px solid #f3f3f3;">
|
<p style="padding: 10px; margin:10px; border: 1px solid #f3f3f3;">
|
||||||
{{nl2br($message_content)}}
|
{{!! nl2br($message_content !!)}}
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue