Repository: Attendize/Attendize (language: php)

Issue:
Error in language file
If you the Italian language, you will get a php error. 
This is due to an error in the file/resources/lang/it/basic.php.

In fact, there's a missing ' , ' just after
" 'hello' => 'Ciao' "




Discussion / hints:

Fix patch:
diff --git a/VERSION b/VERSION
index 530cdd91a..276cbf9e2 100644
--- a/VERSION
+++ b/VERSION
@@ -1,1 +1,1 @@
-2.2.4
+2.3.0
diff --git a/app/Http/Controllers/EventAttendeesController.php b/app/Http/Controllers/EventAttendeesController.php
index f59d0568a..1825eecc7 100644
--- a/app/Http/Controllers/EventAttendeesController.php
+++ b/app/Http/Controllers/EventAttendeesController.php
@@ -25,6 +25,7 @@
 use Mail;
 use PDF;
 use Validator;
+use Illuminate\Support\Facades\Lang;
 
 class EventAttendeesController extends MyBaseController
 {
@@ -366,12 +367,11 @@ public function postMessageAttendee(Request $request, $attendee_id)
             'attendee'        => $attendee,
             'message_content' => $request->get('message'),
             'subject'         => $request->get('subject'),
-            'event'           => $attendee->event,
-            'email_logo'      => $attendee->event->organiser->full_logo_path,
+            'event'           => $attendee->event
         ];
 
         //@todo move this to the SendAttendeeMessage Job
-        Mail::send('Emails.messageReceived', $data, function ($message) use ($attendee, $data) {
+        Mail::send(Lang::locale().'.Emails.messageReceived', $data, function ($message) use ($attendee, $data) {
             $message->to($attendee->email, $attendee->full_name)
                 ->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
                 ->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
@@ -380,7 +380,7 @@ public function postMessageAttendee(Request $request, $attendee_id)
 
         /* Could bcc in the above? */
         if ($request->get('send_copy') == '1') {
-            Mail::send('Emails.messageReceived', $data, function ($message) use ($attendee, $data) {
+            Mail::send(Lang::locale().'.Emails.messageReceived', $data, function ($message) use ($attendee, $data) {
                 $message->to($attendee->event->organiser->email, $attendee->event->organiser->name)
                     ->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
                     ->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
@@ -612,7 +612,7 @@ public function postCancelAttendee(Request $request, $event_id, $attendee_id)
 
         if ($request->get('notify_attendee') == '1') {
             try {
-                Mail::send('Emails.notifyCancelledAttendee', $data, function ($message) use ($attendee) {
+                Mail::send(Lang::locale().'.Emails.notifyCancelledAttendee', $data, function ($message) use ($attendee) {
                     $message->to($attendee->email, $attendee->full_name)
                         ->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
                         ->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
@@ -626,7 +626,7 @@ public function postCancelAttendee(Request $request, $event_id, $attendee_id)
 
         try {
             // Let the user know that they have received a refund.
-            Mail::send('Emails.notifyRefundedAttendee', $data, function ($message) use ($attendee) {
+            Mail::send(Lang::locale().'.Emails.notifyRefundedAttendee', $data, function ($message) use ($attendee) {
                 $message->to($attendee->email, $attendee->full_name)
                     ->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
                     ->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
diff --git a/app/Http/Controllers/EventOrdersController.php b/app/Http/Controllers/EventOrdersController.php
index aa3884af1..3c6639e8e 100644
--- a/app/Http/Controllers/EventOrdersController.php
+++ b/app/Http/Controllers/EventOrdersController.php
@@ -16,6 +16,7 @@
 use Mail;
 use Session;
 use Validator;
+use Illuminate\Support\Facades\Lang;
 
 class EventOrdersController extends MyBaseController
 {
@@ -302,11 +303,10 @@ public function postMessageOrder(Request $request, $order_id)
             'order'           => $order,
             'message_content' => $request->get('message'),
             'subject'         => $request->get('subject'),
-            'event'           => $order->event,
-            'email_logo'      => $order->event->organiser->full_logo_path,
+            'event'           => $order->event
         ];
 
-        Mail::send('Emails.messageReceived', $data, function ($message) use ($order, $data) {
+        Mail::send(Lang::locale().'.Emails.messageReceived', $data, function ($message) use ($order, $data) {
             $message->to($order->email, $order->full_name)
                 ->from(config('attendize.outgoing_email_noreply'), $order->event->organiser->name)
                 ->replyTo($order->event->organiser->email, $order->event->organiser->name)
@@ -315,7 +315,7 @@ public function postMessageOrder(Request $request, $order_id)
 
         /* Send a copy to the Organiser with a different subject */
         if ($request->get('send_copy') == '1') {
-            Mail::send('Emails.messageReceived', $data, function ($message) use ($order, $data) {
+            Mail::send(Lang::locale().'.Emails.messageReceived', $data, function ($message) use ($order, $data) {
                 $message->to($order->event->organiser->email)
                     ->from(config('attendize.outgoing_email_noreply'), $order->event->organiser->name)
                     ->replyTo($order->event->organiser->email, $order->event->organiser->name)
diff --git a/app/Http/Controllers/EventViewController.php b/app/Http/Controllers/EventViewController.php
index 11394eb8d..d3bec48ab 100644
--- a/app/Http/Controllers/EventViewController.php
+++ b/app/Http/Controllers/EventViewController.php
@@ -14,6 +14,7 @@
 use Redirect;
 use Validator;
 use Services\Captcha\Factory;
+use Illuminate\Support\Facades\Lang;
 
 class EventViewController extends Controller
 {
@@ -133,7 +134,7 @@ public function postContactOrganiser(Request $request, $event_id)
             'event'           => $event,
         ];
 
-        Mail::send('Emails.messageReceived', $data, function ($message) use ($event, $data) {
+        Mail::send(Lang::locale().'.Emails.messageReceived', $data, function ($message) use ($event, $data) {
             $message->to($event->organiser->email, $event->organiser->name)
                 ->from(config('attendize.outgoing_email_noreply'), $data['sender_name'])
                 ->replyTo($data['sender_email'], $data['sender_name'])
diff --git a/app/Http/Controllers/ManageAccountController.php b/app/Http/Controllers/ManageAccountController.php
index 32c033f22..0b9d8d975 100644
--- a/app/Http/Controllers/ManageAccountController.php
+++ b/app/Http/Controllers/ManageAccountController.php
@@ -23,6 +23,7 @@
 use Services\PaymentGateway\Stripe;
 use Services\PaymentGateway\StripeSCA;
 use Utils;
+use Illuminate\Support\Facades\Lang;
 
 class ManageAccountController extends MyBaseController
 {
@@ -200,7 +201,7 @@ public function postInviteUser(Request $request)
             'inviter'       => Auth::user(),
         ];
 
-        Mail::send('Emails.inviteUser', $data, static function (Message $message) use ($data) {
+        Mail::send(Lang::locale().'.Emails.inviteUser', $data, static function (Message $message) use ($data) {
             $message->to($data['user']->email)
                 ->subject(trans('Email.invite_user', [
                     'name' => $data['inviter']->first_name . ' ' . $data['inviter']->last_name,
diff --git a/app/Http/Controllers/UserSignupController.php b/app/Http/Controllers/UserSignupController.php
index 77e930125..6f129203d 100644
--- a/app/Http/Controllers/UserSignupController.php
+++ b/app/Http/Controllers/UserSignupController.php
@@ -11,6 +11,7 @@
 use Illuminate\Http\Request;
 use Mail;
 use Services\Captcha\Factory;
+use Illuminate\Support\Facades\Lang;
 
 class UserSignupController extends Controller
 {
@@ -80,7 +81,7 @@ public function postSignup(Request $request)
 
         if ($is_attendize) {
             // TODO: Do this async?
-            Mail::send('Emails.ConfirmEmail',
+            Mail::send(Lang::locale().'.Emails.ConfirmEmail',
                 ['first_name' => $user->first_name, 'confirmation_code' => $user->confirmation_code],
                 function ($message) use ($request) {
                     $message->to($request->get('email'), $request->get('first_name'))
diff --git a/app/Jobs/SendMessageToAttendeesJob.php b/app/Jobs/SendMessageToAttendeesJob.php
index 8687625ee..86895c426 100644
--- a/app/Jobs/SendMessageToAttendeesJob.php
+++ b/app/Jobs/SendMessageToAttendeesJob.php
@@ -51,7 +51,7 @@ public function handle()
                continue;
             }
 
-            $mail = new SendMessageToAttendeesMail($this->message->subject, $this->message->message, $event);
+            $mail = new SendMessageToAttendeesMail($this->message->subject, $this->message->message, $event, $attendee);
             Mail::to($attendee->email, $attendee->full_name)
                 ->locale(Config::get('app.locale'))
                 ->send($mail);
diff --git a/app/Mail/SendMessageToAttendeesMail.php b/app/Mail/SendMessageToAttendeesMail.php
index 909099872..b3a336e75 100644
--- a/app/Mail/SendMessageToAttendeesMail.php
+++ b/app/Mail/SendMessageToAttendeesMail.php
@@ -2,6 +2,7 @@
 
 namespace App\Mail;
 
+use App\Models\Attendee;
 use App\Models\Event;
 use Illuminate\Bus\Queueable;
 use Illuminate\Contracts\Queue\ShouldQueue;
@@ -15,19 +16,19 @@ class SendMessageToAttendeesMail extends Mailable
     public $subject;
     public $content;
     public $event;
-    public $email_logo;
+    public $attendee;
 
     /**
      * Create a new message instance.
      *
      * @return void
      */
-    public function __construct($subject, $content, Event $event)
+    public function __construct($subject, $content, Event $event, Attendee $attendee)
     {
         $this->subject = $subject;
         $this->content = $content;
         $this->event = $event;
-        $this->email_logo = $event->organiser->full_logo_path;
+        $this->attendee = $attendee;
     }
 
     /**
diff --git a/bower.json b/bower.json
index e1b55baf7..4326bdcb2 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,6 @@
 {
   "name": "attendize-event-ticketing",
-  "version": "2.2.4",
+  "version": "2.3.0",
   "authors": [
     "daveearley <dave@attendize.com>"
   ],
diff --git a/composer.json b/composer.json
index 4e2c91db3..b8f0c7c1c 100644
--- a/composer.json
+++ b/composer.json
@@ -1,6 +1,6 @@
 {
     "name": "attendize/attendize",
-    "version": "2.2.4",
+    "version": "2.3.0",
     "description": "A free and open-source event management and ticket selling application.",
     "keywords": [
         "event management",
diff --git a/config/app.php b/config/app.php
index bb12a0916..9a00ce3f2 100644
--- a/config/app.php
+++ b/config/app.php
@@ -80,7 +80,18 @@
     |
     */
 
-    'locale' => 'en',
+    'locale' => 'es',
+
+     /*
+    |--------------------------------------------------------------------------
+    | Application Locale Direction Configuration
+    |--------------------------------------------------------------------------
+    |
+    | The application locale direction checks if dir is ltr or rtl.
+    |
+    */
+
+    'locale_dir' => 'ltr',
 
     /*
     |--------------------------------------------------------------------------
diff --git a/config/laravellocalization.php b/config/laravellocalization.php
index f2ad6b06a..d928d39c5 100644
--- a/config/laravellocalization.php
+++ b/config/laravellocalization.php
@@ -221,7 +221,7 @@
         //'mk'          => ['name' => 'Macedonian',             'script' => 'Cyrl', 'native' => 'македонски', 'regional' => 'mk_MK'],
         //'mn'          => ['name' => 'Mongolian (Cyrillic)',   'script' => 'Cyrl', 'native' => 'монгол', 'regional' => 'mn_MN'],
         //'ce'          => ['name' => 'Chechen',                'script' => 'Cyrl', 'native' => 'нохчийн мотт', 'regional' => 'ce_RU'],
-        //'ru'          => ['name' => 'Russian',                'script' => 'Cyrl', 'native' => 'русский', 'regional' => 'ru_RU'],
+        'ru'          => ['name' => 'Russian',                'script' => 'Cyrl', 'native' => 'русский', 'regional' => 'ru_RU'],
         //'sah'         => ['name' => 'Yakut',                  'script' => 'Cyrl', 'native' => 'саха тыла', 'regional' => ''],
         //'tt'          => ['name' => 'Tatar',                  'script' => 'Cyrl', 'native' => 'татар теле', 'regional' => 'tt_RU'],
         //'tg'          => ['name' => 'Tajik (Cyrillic)',       'script' => 'Cyrl', 'native' => 'тоҷикӣ', 'regional' => 'tg_TJ'],
diff --git a/package.json b/package.json
index 8d6dbacfa..8fb81dcc2 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
     "name": "attendize",
-    "version": "2.2.4",
+    "version": "2.3.0",
     "description": "Attendize Ticketing Platform",
     "main": "public/index.php",
     "dependencies": {
diff --git a/public/assets/stylesheet/application-rtl.css b/public/assets/stylesheet/application-rtl.css
new file mode 100644
index 000000000..a60e31dab
--- /dev/null
+++ b/public/assets/stylesheet/application-rtl.css
@@ -0,0 +1,58 @@
+body{
+    direction: rtl;
+}
+
+.sidebar.sidebar-left.sidebar-menu{
+    right: 0;
+}
+
+.sidebar.sidebar-menu + #main {
+    padding-right: 220px;
+    padding-left: 0;
+}
+
+
+#header.navbar > .navbar-header {
+    float: right;
+}
+
+#header.navbar > .navbar-toolbar {
+    margin-right: 220px;
+    margin-left: unset;
+}
+
+.nav{
+    padding-right: 0;
+    padding-left: unset;
+}
+
+.nav-tabs > li{
+    float: right;
+}
+
+.event .event-meta{
+    margin-right: 60px ;
+}
+
+.dropdown-menu > li{
+    text-align: right;
+}
+
+.iframe_wrap iframe{
+    transform-origin: 100% 0% !important;
+}
+
+
+
+.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12{
+    float: right;
+}
+
+.col-md-offset-7 {
+    margin-right: 58.33333333%;
+    margin-left: unset;
+}
+
+.btn-toolbar .btn-group, .btn-toolbar .input-group {
+    float: right;
+}
diff --git a/public/assets/stylesheet/application-rtl.less b/public/assets/stylesheet/application-rtl.less
new file mode 100644
index 000000000..a711ed712
--- /dev/null
+++ b/public/assets/stylesheet/application-rtl.less
@@ -0,0 +1,77 @@
+body{
+    direction: rtl;
+}
+
+
+.sidebar{
+    &.sidebar-left{
+        &.sidebar-menu{
+            right: 0;
+        }
+    }
+
+    &.sidebar-menu{
+        & + #main {
+            padding-right: 220px;
+            padding-left: 0;
+        }
+    }
+}
+
+
+#header{
+    &.navbar{
+        & > .navbar-header {
+            float: right;
+        }
+
+        & .navbar-toolbar {
+            margin-right: 220px;
+            margin-left: unset;
+        }
+    }
+}
+
+.nav{
+    padding-right: 0;
+    padding-left: unset;
+}
+
+.nav-tabs {
+    &> li{
+        float: right;
+    }
+}
+
+.event {
+    .event-meta{
+        margin-right: 60px ;
+    }
+}
+
+.dropdown-menu {
+    &> li{
+        text-align: right;
+    }
+}
+
+.iframe_wrap{
+    iframe{
+        transform-origin: 100% 0% !important;
+    }
+}
+
+
+
+.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12{
+    float: right;
+}
+
+.col-md-offset-7 {
+    margin-right: 58.33333333%;
+    margin-left: unset;
+}
+
+.btn-toolbar .btn-group, .btn-toolbar .input-group {
+    float: right;
+}
diff --git a/resources/lang/de/AccessCodes.php b/resources/lang/de/AccessCodes.php
new file mode 100644
index 000000000..e5e4ab804
--- /dev/null
+++ b/resources/lang/de/AccessCodes.php
@@ -0,0 +1,19 @@
+<?php
+
+return [
+    'title' => 'Zugriffscodes',
+    'success_message' => 'Zugriffscode erfolgreich angelegt',
+    'delete_message' => 'Zugriffscode erfolgreich entfernt',
+    'cannot_delete_used_code' => 'Benutzer Code kann nicht gelöscht werden',
+    'access_codes_code' => 'Rabattcode',
+    'access_codes_created_at' => 'erzeugt am',
+    'no_access_codes_yet' => 'Noch keine Zugriffscodes!',
+    'create_access_code' => 'Zugriffscode erzeugen',
+    'access_code_title' => 'Zugriffscode',
+    'access_code_title_placeholder' => 'Bsp.: CONFERENCE2019',
+    'valid_code_required' => 'Es wird ein gültiger Zugriffscode benötigt',
+    'no_tickets_matched' => 'Keine Tickets zum Zugriffscode gefunden',
+    'select_access_code' => 'Zugriffscode auswählen',
+    'access_codes_usage_count' => 'Nutzungsanzahl',
+    'unique_error' => 'Code wurde bereits für diese Veranstaltung verwendet',
+];
diff --git a/resources/lang/de/Affiliates.php b/resources/lang/de/Affiliates.php
index 05cfd9e4c..eb11a7889 100644
--- a/resources/lang/de/Affiliates.php
+++ b/resources/lang/de/Affiliates.php
@@ -1,6 +1,6 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/19 17:14:11 
+ Generated via "php artisan localization:missing" at 2018/04/19 17:14:11
 *************************************************************************/
 
 return array (
@@ -13,4 +13,4 @@
   'sales_volume_generated' => 'Verkaufsvolumen generiert',
   'ticket_sales_generated' => 'Ticketverkäufe generiert',
   'visits_generated' => 'Besuche Generiert',
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/Attendee.php b/resources/lang/de/Attendee.php
index f70742495..63e887f0e 100644
--- a/resources/lang/de/Attendee.php
+++ b/resources/lang/de/Attendee.php
@@ -5,19 +5,19 @@
 
 return array (
   //============================== New strings to translate ==============================//
-  'scan_another_ticket' => 'Ein anderes Ticket scannen',
+  'scan_another_ticket' => 'Weiteres Ticket scannen',
   'scanning' => 'Scannen',
   //==================================== Translations ====================================//
   'attendees' => 'Teilnehmer',
   'check_in' => 'Check in: :event',
   'email' => 'Email',
-  'email_address' => 'Email Addresse',
-  'event_attendees' => 'Event Teilnehmer',
+  'email_address' => 'Email Adresse',
+  'event_attendees' => 'Veranstaltungsteilnehmer',
   'first_name' => 'Vorname',
   'last_name' => 'Nachname',
   'name' => 'Name',
   'ticket' => 'Ticket',
   'reference' => 'Referenz',
-  'search_attendees' => 'Teilnehmersuche...',
-  'send_invitation_n_ticket_to_attendee' => 'Einladung und Ticket an Teilnehmer senden.',
+  'search_attendees' => 'Teilnehmer suchen...',
+  'send_invitation_n_ticket_to_attendee' => 'Einladungen und Ticket an Teilnehmer senden.',
 );
diff --git a/resources/lang/de/Controllers.php b/resources/lang/de/Controllers.php
index 8f6593da4..75953a001 100644
--- a/resources/lang/de/Controllers.php
+++ b/resources/lang/de/Controllers.php
@@ -7,16 +7,15 @@
   //============================== New strings to translate ==============================//
   // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageOrganiser\\Events.blade.php
   'sort' =>
-  array (
-    'event_title' => 'Event Titel',
-    'start_date' => 'Start Datum',
-    'created_at' => 'Erstellungsdatum',
-    'quantity_sold' => 'Menge verkauft',
-    'sales_volume' => 'Verkaufsvolumen',
-    'sort_order' => 'Eigene Sortierungs Reihenfolge',
-    'title' => 'Ticket Titel',
-  ),
-  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageOrganiser\\Events.blade.php
+      array (
+          'event_title' => 'Name der Veranstaltung',
+          'start_date' => 'Startdatum',
+          'created_at' => 'Erstellungsdatum',
+          'quantity_sold' => 'Verkaufte Menge',
+          'sales_volume' => 'Verkaufsvolumen',
+          'sort_order' => 'Benutzerdefinierte Sortierreihenfolge',
+          'title' => 'Names des Ticket',
+      ),
   //==================================== Translations ====================================//
   'account_successfully_updated' => 'Account erfolgreich bearbeitet',
   'addInviteError' => 'Sie müssen ein Ticket erstellen, bevor Sie einen Teilnehmer einladen.',
@@ -34,8 +33,8 @@
   array (
     'email' =>
     array (
-      'email' => 'Bitte geben Sie eine valide Email Adresse ein.',
-      'required' => 'Email Adresse benötigt.',
+      'email' => 'Bitte geben Sie eine gültige Email Adresse ein.',
+      'required' => 'E-Mail Adresse benötigt.',
       'unique' => 'Diese Email Adresse ist bereits in Benutzung.',
     ),
     'first_name' =>
@@ -60,8 +59,8 @@
     ),
   ),
   'event_create_exception' => 'Whoops! Es gab einen Fehler bei der Erstellug Ihres Accounts. Bitte erneut versuchen.',
-  'event_page_successfully_updated' => 'Eventseite erfolgreich bearbeitet.',
-  'event_successfully_updated' => 'Event erfolgreich bearbeitet!',
+  'event_page_successfully_updated' => 'Veranstaltungsseite erfolgreich bearbeitet.',
+  'event_successfully_updated' => 'Veranstaltung erfolgreich bearbeitet!',
   'fill_email_and_password' => 'Bitte geben Sie Ihre Email und Passwort ein.',
   'image_upload_error' => 'Beim Hochladen Ihres Bildes gab es einen Fehler.',
   'invalid_ticket_error' => '"Falsches Ticket! Bitte erneut versuchen."',
diff --git a/resources/lang/de/Dashboard.php b/resources/lang/de/Dashboard.php
index 5ba5b366e..bb6d9d530 100644
--- a/resources/lang/de/Dashboard.php
+++ b/resources/lang/de/Dashboard.php
@@ -1,26 +1,26 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/19 18:57:21 
+ Generated via "php artisan localization:missing" at 2018/04/19 18:57:21
 *************************************************************************/
 
 return array (
     //============================== New strings to translate ==============================//
-    'this_event_has_started' => 'Das Event hat begonnen.',
+    'this_event_has_started' => 'Diese Veranstaltung hat begonnen.',
     //==================================== Translations ====================================//
     'create_tickets' => 'Tickets erstellen',
-    'edit_event_page_design' => 'Eventseitendesign bearbeiten',
+    'edit_event_page_design' => 'Design der Veranstaltungsseite  bearbeiten',
     'edit_organiser_fees' => 'Veranstaltergebühren bearbeiten',
     'event_page_visits' => 'Eventseitenbesucher',
-    'event_url' => 'Event URL',
-    'event_views' => 'Event Besucher',
+    'event_url' => 'URL zur Veranstaltung',
+    'event_views' => 'Views der Veranstaltung',
     'generate_affiliate_link' => 'Affiliate link erstellen',
     'orders' => 'Bestellungen',
     'quick_links' => 'Quick Links',
     'registrations_by_ticket' => 'Regestrierungen per Ticket',
-    'sales_volume' => 'Verkaufsvolumen',
-    'share_event' => 'Event teilen',
-    'this_event_is_on_now' => 'Dieses Event findet gerade Statt',
-    'ticket_sales_volume' => 'Ticket Verkaufs Volumen',
+    'sales_volume' => 'Anzahl Verkäufe',
+    'share_event' => 'Veranstaltung teilen',
+    'this_event_is_on_now' => 'Diese Veranstaltung findet gerade statt',
+    'ticket_sales_volume' => 'Anzahl Ticketverkäufe',
     'tickets_sold' => 'Tickets verkauft',
-    'website_embed_code' => 'Webseiten einbindungs Code',
-);
\ No newline at end of file
+    'website_embed_code' => 'Embed Code für Webseite',
+);
diff --git a/resources/lang/de/Design.php b/resources/lang/de/Design.php
index 23816a3d0..dd7fb92aa 100644
--- a/resources/lang/de/Design.php
+++ b/resources/lang/de/Design.php
@@ -1,14 +1,14 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/19 17:21:50 
+ Generated via "php artisan localization:missing" at 2018/04/19 17:21:50
 *************************************************************************/
 
 return array (
   //============================== New strings to translate ==============================//
-  'event_page_preview' => 'Eventseiten Vorscheu',
+  'event_page_preview' => 'Veranstaltungsseite Vorscheu',
   //==================================== Translations ====================================//
-  'background_options' => 'Hintergrund Optionen',
+  'background_options' => 'Hintergrundoptionen',
   'images_provided_by_pixabay' => 'Bilder bereitgestellt von <b>PixaBay.com</b>',
   'select_from_available_images' => 'Aus vefügbaren Bildern Auswählen',
   'use_a_colour_for_the_background' => 'Farbe für den Hintergrund benutzen',
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/Email.php b/resources/lang/de/Email.php
index d9c7986f2..04cbf9d64 100644
--- a/resources/lang/de/Email.php
+++ b/resources/lang/de/Email.php
@@ -1,19 +1,21 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/26 11:05:24 
+ Generated via "php artisan localization:missing" at 2018/04/26 11:05:24
 *************************************************************************/
 
 return array (
   //==================================== Translations ====================================//
-  'attendize_register' => 'Danke das sie sich bei Attendize regestriert haben',
+  'attendize_register' => 'Danke, dass Sie sich bei Attendize regestriert haben',
+  'contact_organiser' => 'Du kannst :organiser_name gleich hier <a href="mailto::organiser_email">:organiser_email</a> kontaktieren oder dieser E-Mail antworten.',
   'invite_user' => ':name hat Ihnen einen :app account erstellt.',
-  'message_regarding_event' => 'Nachricht betreffend: :event',
+  'message_received_from_organiser' => 'Du hast eine Nachricht von :organiser_name zu der Veranstaltung :event_title bekommen.',
+  'message_regarding_event' => 'Die Nachricht betrifft: :event',
   'organiser_copy' => '[Kopie für den Veranstalter]',
   'refund_from_name' => 'Sie haben eine Rückerstattung von :name erhalten',
   'your_ticket_cancelled' => 'Ihr Ticket wurde storniert',
   'your_ticket_for_event' => 'Ihr Ticket für die Veranstaltung :event',
     //================================== Obsolete strings ==================================//
-  'LLH:obsolete' => 
+  'LLH:obsolete' =>
   array (
 
   ),
diff --git a/resources/lang/de/Event.php b/resources/lang/de/Event.php
index 6af479711..a6f82caa8 100644
--- a/resources/lang/de/Event.php
+++ b/resources/lang/de/Event.php
@@ -1,6 +1,6 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/26 10:54:45 
+ Generated via "php artisan localization:missing" at 2018/04/26 10:54:45
 *************************************************************************/
 
 return array (
@@ -43,4 +43,4 @@
   'venue_name_placeholder' => 'Z.B.: Feierwerk',
   'vis_hide' => 'Veranstaltung vor der öffentlichkeit verstecken.',
   'vis_public' => 'Veranstaltung veröffentlichen.',
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/Fees.php b/resources/lang/de/Fees.php
index 3da910c51..18a2d0721 100644
--- a/resources/lang/de/Fees.php
+++ b/resources/lang/de/Fees.php
@@ -1,6 +1,6 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/19 17:24:53 
+ Generated via "php artisan localization:missing" at 2018/04/19 17:24:53
 *************************************************************************/
 
 return array (
diff --git a/resources/lang/de/Installer.php b/resources/lang/de/Installer.php
index f7efc773d..e821081ca 100644
--- a/resources/lang/de/Installer.php
+++ b/resources/lang/de/Installer.php
@@ -18,7 +18,7 @@
     'database_test_connect_failure_error_type' => 'Fehler Typ',
     'database_test_connect_failure_message' => 'Verbindung nicht möglich. Bitte überprüfen Sie Ihre Einstellungen.',
     'database_test_connect_success' => 'Erfolg! Datenbank einstellungen sind korrekt!',
-    'database_type' => 'Datenban Typ',
+    'database_type' => 'Datenbank Typ',
     'database_username' => 'Datenbank Benutzer',
     'email_settings' => 'Email Einstellugen',
     'files_n_folders_check' => 'Dateien und Ordner Check',
diff --git a/resources/lang/de/Javascript.php b/resources/lang/de/Javascript.php
index 06656e4df..a1585106b 100644
--- a/resources/lang/de/Javascript.php
+++ b/resources/lang/de/Javascript.php
@@ -14,4 +14,4 @@
     "cvc_error" => 'Die CVC Nummer ist falsch.',
     "card_validation_error" => 'Bitte überprüfen Sie die Kreditkartendaten und probieren es erneut.',
     "checkin_init_error" => 'Bei der initialisierung des Scanners trat ein Fehler auf. Bitte überprüfen Sie ihre SSL (HTTPS) verbindung und prüfen Sie ob Ihr Browser einen Scanner unterstützt.',
-];
\ No newline at end of file
+];
diff --git a/resources/lang/de/ManageAccount.php b/resources/lang/de/ManageAccount.php
index 493eec118..b7e3bcce0 100644
--- a/resources/lang/de/ManageAccount.php
+++ b/resources/lang/de/ManageAccount.php
@@ -1,6 +1,6 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/13 13:27:24 
+ Generated via "php artisan localization:missing" at 2018/04/13 13:27:24
 *************************************************************************/
 
 return array (
@@ -49,4 +49,4 @@
   'version_up_to_date' => 'Your Attendize version (<b>:installed</b>) is up to date!',
     'account_payment' => 'Account / Zahlungsdaten',
     'event_attendees' => 'Gäste',
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/ManageEvent.php b/resources/lang/de/ManageEvent.php
index 1ccae0a02..ee7a9673f 100644
--- a/resources/lang/de/ManageEvent.php
+++ b/resources/lang/de/ManageEvent.php
@@ -92,8 +92,8 @@
   'ticket_title_placeholder' => 'E.g: General Admission',
   'update_order' => 'Update Order',
   'widgets' => 'Widgets',
-  'LLH:obsolete' => 
+  'LLH:obsolete' =>
   array (
     'create_question' => 'Create Question',
   ),
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/Order.php b/resources/lang/de/Order.php
index 095d9ecdc..08ffecdb9 100644
--- a/resources/lang/de/Order.php
+++ b/resources/lang/de/Order.php
@@ -37,6 +37,7 @@
   'reference' => 'Reference',
   'refund/cancel' => 'Refund / Cancel',
   'registered' => 'registered',
+  'search_placeholder' => 'Search Orders..',
   'status' => 'Status',
   'sub_total' => 'Sub Total',
   'ticket' => 'Ticket',
@@ -45,4 +46,4 @@
   'transaction_id' => 'Transaction ID',
   'view_order' => 'View Order',
   'view_order_num' => 'View Order #:num',
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/Organiser.php b/resources/lang/de/Organiser.php
index 002de79f5..787deca54 100644
--- a/resources/lang/de/Organiser.php
+++ b/resources/lang/de/Organiser.php
@@ -1,72 +1,72 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/26 10:16:27 
+ Generated via "php artisan localization:missing" at 2018/04/26 10:16:27
 *************************************************************************/
 
 return array (
   //============================== New strings to translate ==============================//
-  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageOrganiser\\Customize.blade.php
-  'save_organiser' => 'Save Organiser',
+  'save_organiser' => 'Veranstalter speichern',
   //==================================== Translations ====================================//
-  'additional_organiser_options' => 'Additional Organiser Options',
-  'background_color' => 'Background Color',
-  'continue_to' => 'Continue to',
-  'create_an_organiser' => 'Create An Organiser',
-  'create_new_organiser' => 'Create New Organiser',
-  'create_organiser' => 'Create Organiser',
-  'create_organiser_text' => 'Before you create events you\'ll need to create an organiser. An organiser is simply whoever is organising the event. It can be anyone, from a person to an organisation.',
-  'current_logo' => 'Current Logo',
-  'customize' => 'Customize',
+  'additional_organiser_options' => 'Zustätzliche Optionen zum Veranstalter',
+  'background_color' => 'Hintergrundfarbe',
+  'continue_to' => 'Weitermachen als',
+  'create_an_organiser' => 'Veranstalter anlegen',
+  'create_new_organiser' => 'Neuen Veranstalter anlegen',
+  'create_organiser' => 'Veranstalter anlegen',
+  'create_organiser_text' => 'Before you create events you\'ll need to create an organiser. An Veranstalter is simply whoever is organising the event. It can be anyone, from a person to an organisation.',
+  'current_logo' => 'Aktuelles Logo',
+  'customize' => 'Anpassen',
   'dashboard' => 'Dashboard',
-  'delete_logo?' => 'Delete Logo?',
-  'enable_public_organiser_page' => 'Enable Public Organiser Page',
-  'event' => 'Event',
-  'event_calendar' => 'Event Calendar',
-  'events' => 'Events',
+  'delete_logo?' => 'Logo löschen?',
+  'enable_public_organiser_page' => 'Öffentlich Veranstalter Seite aktivieren',
+  'event' => 'Veranstaltung',
+  'event_calendar' => 'Veranstaltungskalender',
+  'events' => 'Veranstaltungen',
   'google_analytics_code' => 'Google Analytics Code',
   'google_analytics_code_placeholder' => 'UA-XXXXX-X',
-  'header_background_color' => 'Header Background Color',
-  'hide_additional_organiser_options' => 'Hide Additional Organiser Options',
-  'make_organiser_hidden' => 'Hide organiser page from the public.',
-  'make_organiser_public' => 'Make organiser page visible to the public.',
-  'no_upcoming_events' => 'You have no events coming up.',
-  'no_upcoming_events_click' => 'You can click here to create an event.',
-  'or' => 'or',
-  'or_caps' => 'OR',
-  'organiser_description' => 'Organiser Description',
-  'organiser_description_placeholder' => '',
-  'organiser_design' => 'Organiser Design',
-  'organiser_details' => 'Organiser Details',
-  'organiser_email' => 'Organiser Email',
-  'organiser_email_placeholder' => '',
-  'organiser_events' => 'Organiser Events',
-  'organiser_facebook' => 'Organiser Facebook',
-  'organiser_facebook_placeholder' => 'E.g http://www.facebook.com/MyFaceBookPage',
-  'organiser_logo' => 'Organiser Logo',
-  'organiser_logo_help' => 'We recommend a square image, as this will look best on printed tickets and event pages.',
-  'organiser_menu' => 'Organiser Menu',
-  'organiser_name' => 'Organiser Name',
-  'organiser_name_dashboard' => ':name Dashboard',
-  'organiser_name_events' => ':name Events',
-  'organiser_name_placeholder' => 'Who\'s organising the event?',
-  'organiser_page' => 'Organiser Page',
-  'organiser_page_design' => 'Organiser Page Design',
-  'organiser_page_preview' => 'Organiser Page Preview',
-  'organiser_page_visibility_text' => 'Organiser pages contain a public list of past and upcoming events.',
-  'organiser_settings' => 'Organiser Settings',
-  'organiser_twitter' => 'Organiser Twitter',
-  'organiser_twitter_placeholder' => 'E.g http://www.twitter.com/MyTwitterPage',
-  'organiser_username_facebook_placeholder' => 'MyFacebookPage',
-  'organiser_username_twitter_placeholder' => 'MyTwitterPage',
-  'organiser_tax_prompt' => 'Do you want to charge tax as your events?',
-  'organiser_tax_id' => 'Tax ID',
-  'organiser_tax_name' => 'Tax Name',
-  'organiser_tax_value' => 'Tax Value',
-  'yes' => 'Yes',
-  'no' => 'No',
-  'sales_volume' => 'Sales Volume',
-  'select_an_organiser' => 'Select An Organiser',
-  'select_organiser' => 'Select Organiser',
-  'text_color' => 'Text Color',
-  'tickets_sold' => 'Tickets Sold',
+    'header_background_color' => 'Header Hintergrundfarbe',
+    'hide_additional_organiser_options' => 'Weitere Optionen zum Veranstalter verbergen',
+    'make_organiser_hidden' => 'Öffentliche Veranstalterseite verbergen',
+    'make_organiser_public' => 'Veranstalterseite veröffentlichen',
+    'no_upcoming_events' => 'Es stehen keine Veranstaltungen an.',
+    'no_upcoming_events_click' => 'Klicke hier um eine Veranstaltung zu erstellen.',
+    'or' => 'oder',
+    'or_caps' => 'ODER',
+    'organiser_description' => 'Veranstalter Beschreibung',
+    'organiser_description_placeholder' => '',
+    'organiser_design' => 'Veranstalter Design',
+    'organiser_details' => 'Veranstalter Details',
+    'organiser_email' => 'Veranstalter Email',
+    'organiser_email_placeholder' => '',
+    'organiser_events' => 'Veranstalter Veranstaltungen',
+    'organiser_facebook' => 'Veranstalter Facebook',
+    'organiser_facebook_placeholder' => 'z.B. http://www.facebook.com/MyFaceBookPage',
+    'organiser_logo' => 'Veranstalter Logo',
+    'organiser_logo_help' => 'Wir empfehlen ein rechteckiges Bild, da dieses am Besten auf den Tickets und Veranstaltungsseiten angezeigt wird.',
+    'organiser_menu' => 'Veranstalter Menü',
+    'organiser_name' => 'Veranstalter Name',
+    'organiser_name_dashboard' => ':name Dashboard',
+    'organiser_name_events' => ':name Events',
+    'organiser_name_placeholder' => 'Wer organisiert diese Veranstaltung?',
+    'organiser_page' => 'Veranstalter Seite',
+    'organiser_page_design' => 'Veranstalter Seitendesign',
+    'organiser_page_preview' => 'Veranstalter Seitenvorschau',
+    'organiser_page_visibility_text' => 'Veranstalterseiten enthalten eine öffentlich Auflistung der vergangenen und bevorstehenden Veranstaltungen.',
+    'organiser_settings' => 'Veranstalter Einstellungen',
+    'organiser_twitter' => 'Veranstalter Twitter',
+    'organiser_twitter_placeholder' => 'z.B, http://www.twitter.com/MyTwitterPage',
+    'organiser_username_facebook_placeholder' => 'MyFacebookPage',
+    'organiser_username_twitter_placeholder' => 'MyTwitterPage',
+    'organiser_tax_prompt' => 'Wollen sie Steuern für ihre Veranstaltungen anrechnen?',
+    'organiser_tax_id' => 'SteuerID',
+    'organiser_tax_name' => 'Steuername',
+    'organiser_tax_value' => 'Steuersatz',
+    'yes' => 'Ja',
+    'no' => 'Nein',
+    'sales_volume' => 'Verkaufsmenge',
+    'search_placeholder' => 'Veranstaltungen suchen..',
+    'select_an_organiser' => 'Wähle einen Veranstalter aus',
+    'select_organiser' => 'Wähle den Veranstalter',
+    'text_color' => 'Textfarbe',
+    'tickets_sold' => 'Tickets verkauft',
 );
diff --git a/resources/lang/de/Public_ViewEvent.php b/resources/lang/de/Public_ViewEvent.php
index 96a812fa3..23c6b5f54 100644
--- a/resources/lang/de/Public_ViewEvent.php
+++ b/resources/lang/de/Public_ViewEvent.php
@@ -18,7 +18,10 @@
   'booking_fees' => 'Buchungsgebühren',
   // 'business_details' => '',
   'card_number' => 'Kartennummer',
+  'checkout_order' => 'Weiter zur Bezahlung',
   'checkout_submit' => 'ZAHLUNGSPFLICHTIG BESTELLEN',
+  'complete_order' => 'Bestellung abschließen',
+  'complete_payment' => 'Bestellung abschließen',
   'confirmation_email' => 'und bestätigen Sie die eMail, die an Sie gesandt wurde.',
   'copy_buyer' => 'Käuferdaten auf alle Tickets Kopieren',
   'currently_not_on_sale' => 'Derzeit nicht im Verkauf',
@@ -39,7 +42,7 @@
   'free' => 'KOSTENLOS',
   'inc_fees' => '(incl. :fees Gebühren)',
   'last_name' => 'Nachname',
-  'offline_payment_instructions' => 'Offline Zahlungsanweisungen',
+  'offline_payment_instructions' => 'Anmerkungen zur Offline-Bezahlung',
   'offline_payment_methods_available' => 'Offline Zahlungsmöglichkeiten verfügbar',
   'order_attendees' => 'Teilnehmer buchen',
   'order_awaiting_payment' => 'Diese Bestellung wartet noch auf Bezahlung. Bitte lesen Sie untenstehende Anweisungen um zu Bezahlen.',
@@ -80,4 +83,4 @@
   'your_message' => 'Ihre Nachricht',
   'your_name' => 'Ihr Name',
   'your' => 'Ihr'
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/Public_ViewOrganiser.php b/resources/lang/de/Public_ViewOrganiser.php
index 3b2331e93..06e9dce06 100644
--- a/resources/lang/de/Public_ViewOrganiser.php
+++ b/resources/lang/de/Public_ViewOrganiser.php
@@ -1,6 +1,6 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/16 08:41:39 
+ Generated via "php artisan localization:missing" at 2018/04/16 08:41:39
 *************************************************************************/
 
 return array (
@@ -10,8 +10,8 @@
   // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Public\\ViewOrganiser\\Partials\\EventListingPanel.blade.php
   'tickets' => 'Tickets',
   //==================================== Translations ====================================//
-  'no_events' => 'There are no :panel_title to display.',
+  'no_events' => 'Keine Veranstaltungen',
   'organiser_dashboard' => 'Organiser Dashboard',
-  'past_events' => 'Past events',
-  'upcoming_events' => 'Upcoming events',
-);
\ No newline at end of file
+  'past_events' => 'Zurückliegende Veranstaltungen',
+  'upcoming_events' => 'Bevorstehende Veranstaltungen',
+);
diff --git a/resources/lang/de/Ticket.php b/resources/lang/de/Ticket.php
index f61ab9dcf..5901cb39b 100644
--- a/resources/lang/de/Ticket.php
+++ b/resources/lang/de/Ticket.php
@@ -49,4 +49,4 @@
   'ticket_text_color' => 'Ticket Text Color',
   'ticket_type' => 'Ticket Type',
   'venue' => 'Venue',
-);
\ No newline at end of file
+);
diff --git a/resources/lang/de/basic.php b/resources/lang/de/basic.php
index 8ff34b682..8a98bf8b7 100644
--- a/resources/lang/de/basic.php
+++ b/resources/lang/de/basic.php
@@ -1,10 +1,11 @@
 <?php
 /*************************************************************************
- Generated via "php artisan localization:missing" at 2018/04/26 11:05:24 
+ Generated via "php artisan localization:missing" at 2018/04/26 11:05:24
 *************************************************************************/
 
 return array (
   //==================================== Translations ====================================//
+  'apply' => 'Anwenden',
   'action' => 'Aktion',
   'affiliates' => 'Affiliates',
   'attendees' => 'Teilnehmer',
@@ -21,23 +22,23 @@
   'enable' => 'Einschalten',
   'enabled' => 'Eingeschaltet',
   'error_404' => 'Die Seite die Sie suchen existiert nicht oder wurde verschoben.',
-  'event_dashboard' => 'Event Dashboard',
-  'event_page_design' => 'Event Seiten Design',
+  'event_dashboard' => 'Veranstaltungsdashboard',
+  'event_page_design' => 'Design der Veranstaltungsseite',
   'export' => 'Exportieren',
-  'general' => 'Generell',
+  'general' => 'Allgemein',
+  'hours' => 'Stunden',
   'hello' => 'Hello',
-  'hours' => 'Stunen',
   'main_menu' => 'Hauptmenü',
   'manage' => 'Verwalten',
-  'message' => 'Nachricht',
+  'message' => 'Nachrichten',
   'minutes' => 'Minuten',
-  'months_short' => '|Jan|Feb|Mrz|Apr|Mai|Jun|Jul|Aug|Sep|Oct|Nov|Dez|',
+  'months_short' => '|Jan|Feb|Mär|Apr|Mai|Jun|Jul|Aug|Sep|Okt|Nov|Dec|',
   'no' => 'Nein',
   'order_form' => 'Bestellformular',
   'orders' => 'Bestellungen',
-  'promote' => 'befördern',
-  'save_changes' => 'Bearbeitung Speichern',
-  'save_details' => 'Details Speichern',
+  'promote' => 'Werben',
+  'save_changes' => 'Änderungen speichern',
+  'save_details' => 'Details speichern',
   'service_fees' => 'Bearbeitungsgebühren',
   'social' => 'Social',
   'submit' => 'Absenden',
@@ -55,10 +56,10 @@
      * If you run it, it will break file input fields.
     */
     'upload' => 'Hochladen',
-    'browse' => 'Suchen',
+    'browse' => 'Browse',
   //================================== Obsolete strings ==================================//
-  'LLH:obsolete' => 
+  'LLH:obsolete' =>
   array (
     'months_long' => 'Januar|Februar|März|April|Mai|Juni|Juli|August|September|Oktober|November|Dezember',
   ),
-);
\ No newline at end of file
+);
diff --git a/resources/lang/en/Email.php b/resources/lang/en/Email.php
index 44d1c94bd..e593f7689 100644
--- a/resources/lang/en/Email.php
+++ b/resources/lang/en/Email.php
@@ -6,7 +6,9 @@
 return array (
   //==================================== Translations ====================================//
   'attendize_register' => 'Thank you for registering for Attendize',
+  'contact_organiser' => 'You can contact :organiser_name directly at <a href="mailto::organiser_email">:organiser_email</a>, or by replying to this email.',
   'invite_user' => ':name added you to an :app account.',
+  'message_received_from_organiser' => 'You have received a message from :organiser_name in relation to the event :event_title.',
   'message_regarding_event' => 'Message Regarding: :event',
   'organiser_copy' => '[Organiser Copy]',
   'refund_from_name' => 'You have received a refund from :name',
diff --git a/resources/lang/en/Public_ViewEvent.php b/resources/lang/en/Public_ViewEvent.php
index e859db0d8..3644c1b4e 100644
--- a/resources/lang/en/Public_ViewEvent.php
+++ b/resources/lang/en/Public_ViewEvent.php
@@ -25,6 +25,7 @@
     'Contact'                           => 'Contact',
     'copy_buyer'                        => 'Copy buyer details to all ticket holders',
     'complete_payment'                  => 'Complete Payment',
+    'complete_order'                    => 'Complete Order',
     'continue'                          => 'Continue',
     'currently_not_on_sale'             => 'Currently Not On Sale',
     'cvc_number'                        => 'CVC number',
diff --git a/resources/lang/es/Email.php b/resources/lang/es/Email.php
index fea3d7f22..b9191205d 100644
--- a/resources/lang/es/Email.php
+++ b/resources/lang/es/Email.php
@@ -2,7 +2,9 @@
 
 return array(
     'attendize_register'      => 'Gracias por registrarte en Attendize',
+    'contact_organiser' => 'Puede ponerse en contacto con :organiser_name directamente en <a href="mailto::organiser_email">:organiser_email</a>, o respondiendo a este correo electrónico.',
     'invite_user'             => ':name te ha añadido a la cuenta :app.',
+    'message_received_from_organiser' => 'Ha recibido un mensaje de :organiser_name en relación al evento :event_title.',
     'message_regarding_event' => 'Mensaje con respecto a: :event',
     'organiser_copy'          => '[Copia del organizador]',
     'refund_from_name'        => 'Has recibido un reembolso de :name',
diff --git a/resources/lang/fr/Email.php b/resources/lang/fr/Email.php
index 0367d2a21..1725476e9 100644
--- a/resources/lang/fr/Email.php
+++ b/resources/lang/fr/Email.php
@@ -6,7 +6,9 @@
 return array (
   //==================================== Translations ====================================//
   'attendize_register' => 'Merci de votre inscription à Attendize',
+  'contact_organiser' => 'Vous pouvez contacter :organiser_name directement à <a href="mailto::organiser_email">:organiser_email</a>, ou en répondant à ce message.',
   'invite_user' => ':name vous a ajouté à un compte :app',
+  'message_received_from_organiser' => "Vous avez reçu un message de :organiser_name en rapport avec l'événement :event_title.",
   'message_regarding_event' => 'Message au sujet de : :event',
   'organiser_copy' => '[Copie Organisateur]',
   'refund_from_name' => 'Vous avez reçu un remboursement de :name',
diff --git a/resources/lang/it/Email.php b/resources/lang/it/Email.php
index 02c77b34a..01f485696 100644
--- a/resources/lang/it/Email.php
+++ b/resources/lang/it/Email.php
@@ -2,7 +2,9 @@
 
 return [
     'attendize_register' => 'Grazie per esserti registrato su Attendize',
+    'contact_organiser' => 'Puoi contattare :organiser_name direttamente via <a href="mailto::organiser_email">:organiser_email</a> o rispondendo a questa email.',
     'invite_user' => ':name ti ha aggiunto ad un account :app ',
+    'message_received_from_organiser' => "Hai ricevuto un messaggio da :organiser_name per l'evento :event_title.",
     'message_regarding_event' => 'Messaggio relativo a :event',
     'organiser_copy' => '[Copia Organizzatore]',
     'refund_from_name' => 'Hai ricevuto un rimborso da :name',
diff --git a/resources/lang/it/basic.php b/resources/lang/it/basic.php
index 125d62288..5bc6af0f4 100644
--- a/resources/lang/it/basic.php
+++ b/resources/lang/it/basic.php
@@ -23,7 +23,7 @@
     'event_page_design' => 'Design Pagina Evento',
     'export' => 'Esporta',
     'general' => 'Generale',
-    'hello' => 'Ciao'
+    'hello' => 'Ciao',
     'hours' => 'ore',
     'main_menu' => 'Menù principale',
     'manage' => 'Gestisci',
diff --git a/resources/lang/ja/Email.php b/resources/lang/ja/Email.php
index eff9295cb..1fa959950 100644
--- a/resources/lang/ja/Email.php
+++ b/resources/lang/ja/Email.php
@@ -2,7 +2,9 @@
 
 return array(
     'attendize_register'      => 'Attendizeに登録していただきありがとうございます',
+    'contact_organiser' => ':organiser_name に連絡するには <a href="mailto::organiser_email">:organiser_email</a>、またはこのメールに返信してください。',
     'invite_user'             => ':nameがあなたを:appアカウントに追加しました。',
+  'message_received_from_organiser' => ':event_title に関して :organiser_name からメッセージを受け取りました。',
     'message_regarding_event' => ':eventに関するメッセージ',
     'organiser_copy'          => '[主催者コピー]',
     'refund_from_name'        => 'あなたは:nameから払い戻しを受けました。',
diff --git a/resources/lang/pl/Email.php b/resources/lang/pl/Email.php
index 95f1a0316..81dc8a7ad 100644
--- a/resources/lang/pl/Email.php
+++ b/resources/lang/pl/Email.php
@@ -6,7 +6,9 @@
 return array (
   //==================================== Translations ====================================//
   'attendize_register' => 'Dziękujemy za rejestrację w Attendize',
+  'contact_organiser' => 'Możesz się skontaktować z :organiser_name bezpośrednio, korzystając z adresu email: <a href="mailto::organiser_email">:organiser_email</a>, lub odpowiadając na tego emaila.',
   'invite_user' => ':name dodał cię do konta :app.',
+  'message_received_from_organiser' => 'Otrzymałeś wiadomość od :organiser_name w związku z wydarzeniem :event_title.',
   'message_regarding_event' => 'Wiadomość w związku z: :event',
   'organiser_copy' => '[Kopia Organizatora]',
   'refund_from_name' => 'Otrzymaleś refundację od :name',
diff --git a/resources/lang/ru/AccessCodes.php b/resources/lang/ru/AccessCodes.php
new file mode 100644
index 000000000..d2b27f02a
--- /dev/null
+++ b/resources/lang/ru/AccessCodes.php
@@ -0,0 +1,19 @@
+<?php
+
+return [
+    'title' => 'Промо-коды',
+    'success_message' => 'Промо-код успешно создан',
+    'delete_message' => 'Промо-код успешно удален',
+    'cannot_delete_used_code' => 'Невозможно удалить промо-код',
+    'access_codes_code' => 'Код скидки',
+    'access_codes_created_at' => 'Создан в',
+    'no_access_codes_yet' => 'Промо-кодов пока нет!',
+    'create_access_code' => 'Создать промо-код',
+    'access_code_title' => 'Промо-код',
+    'access_code_title_placeholder' => 'например: CONFERENCE2019',
+    'valid_code_required' => 'Требуется действующий промо-код',
+    'no_tickets_matched' => 'К вашему промо-коду не подходит ни один билет',
+    'select_access_code' => 'Выберите промо-код',
+    'access_codes_usage_count' => 'Количество использований',
+    'unique_error' => 'Промо-код уже использован для этого мероприятия',
+];
\ No newline at end of file
diff --git a/resources/lang/ru/Affiliates.php b/resources/lang/ru/Affiliates.php
new file mode 100644
index 000000000..47ecbbaed
--- /dev/null
+++ b/resources/lang/ru/Affiliates.php
@@ -0,0 +1,16 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/19 17:14:11 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  'affiliate_name' => 'Имя партнеров',
+  'affiliate_tracking' => 'Отслеживание партнеров',
+  'affiliate_tracking_text' => 'Следить за тем, кто генерирует продажи для вашего мероприятия, очень просто. Просто создайте реферальную ссылку с помощью поля ниже и поделитесь ею со своими партнерами / организаторами мероприятий.',
+  'last_referral' => 'Последний реферал',
+  'no_affiliate_referrals_yet' => 'Пока нет партнерских рефералов',
+  'sales_volume_generated' => 'Генерируемый объем продаж',
+  'ticket_sales_generated' => 'Объем продаж билетов',
+  'visits_generated' => 'Сгенерировано посещений',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Attendee.php b/resources/lang/ru/Attendee.php
new file mode 100644
index 000000000..ead8dcb61
--- /dev/null
+++ b/resources/lang/ru/Attendee.php
@@ -0,0 +1,25 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/19 17:07:35
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  'scan_another_ticket' => 'Отсканировать еще один билет',
+  'scanning' => 'Сканирование',
+  'has_arrived' => 'Прибыл',
+  'arrival_time' => 'Время прибытия',
+  //==================================== Translations ====================================//
+  'attendees' => 'Участники',
+  'check_in' => 'Регистрация: :event',
+  'email' => 'Емайл',
+  'email_address' => 'Емайл адрес',
+  'event_attendees' => 'Event Attendees',
+  'first_name' => 'Имя',
+  'last_name' => 'Фамилия',
+  'name' => 'Name',
+  'ticket' => 'Билет',
+  'reference' => 'Ссылка',
+  'search_attendees' => 'Поиск участников...',
+  'send_invitation_n_ticket_to_attendee' => 'Send invitation & ticket to attendee.',
+);
diff --git a/resources/lang/ru/Controllers.php b/resources/lang/ru/Controllers.php
new file mode 100644
index 000000000..a8c69cc89
--- /dev/null
+++ b/resources/lang/ru/Controllers.php
@@ -0,0 +1,120 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/26 10:21:11
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageOrganiser\\Events.blade.php
+  'sort' =>
+  array (
+    'event_title' => 'Заголовок мероприятия',
+    'start_date' => 'Дата начала',
+    'created_at' => 'Дата создания',
+    'quantity_sold' => 'Всего продано',
+    'sales_volume' => 'Обьем продаж',
+    'sort_order' => 'Настройка порядка сортировки',
+    'title' => 'Заголовок билета',
+  ),
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageOrganiser\\Events.blade.php
+  //==================================== Translations ====================================//
+  'account_successfully_updated' => 'Аккаунт успешно обновлен',
+  'addInviteError' => 'Прежде чем пригласить участника, необходимо создать билет.',
+  'attendees_required' => 'Пожалуйста, выберите хотя бы одного участника',
+  'attendee_already_cancelled' => 'Посетитель уже отменил участие',
+  'attendee_already_checked_in' => 'Посетитель уже зарегистрировался в :time ',
+  'attendee_exception' => 'Во время регистрации этого участника произошла ошибка. Пожалуйста, попробуйте еще раз.',
+  'attendee_successfully_checked_in' => 'Посетитель успешно зарегистрирован',
+  'attendee_successfully_checked_out' => 'Посетитель успешно выбыл',
+  'attendee_successfully_invited' => 'Посетитель успешно приглашен!',
+  'cant_delete_ticket_when_sold' => 'Извините, вы не можете удалить эту категорию билетов, так как некоторые уже проданы.',
+  'check_in_all_tickets' => 'Зарегистрировать все билеты, связанные с этим заказом',
+  'confirmation_malformed' => 'Код подтверждения отсутствует или неверного формата.',
+  'confirmation_successful' => 'Успех! Ваша электронная почта теперь проверена. Теперь вы можете войти в систему.',
+  'error' =>
+  array (
+    'email' =>
+    array (
+      'email' => 'Пожалуйста, введите действующий адрес электронной почты.',
+      'required' => 'Адрес электронной почты обязателен.',
+      'unique' => 'Данный адрес уже используется в системе',
+    ),
+    'first_name' =>
+    array (
+      'required' => 'Пожалуйста, введите ваше имя.',
+    ),
+    'last_name' =>
+    array (
+      'required' => 'Пожалуйста, введите вашу фамилию.',
+    ),
+    'page_bg_color' =>
+    array (
+      'required' => 'Пожалуйста, введите цвет фона.',
+    ),
+    'page_header_bg_color' =>
+    array (
+      'required' => 'Пожалуйста, введите цвет фона заголовка.',
+    ),
+    'password' =>
+    array (
+      'passcheck' => 'Данный пароль неверен.',
+    ),
+  ),
+  'event_create_exception' => 'Ой! Возникла проблема при создании вашего мероприятия. Пожалуйста, попробуйте еще раз.',
+  'event_page_successfully_updated' => 'Страница мероприятия успешно обновлена.',
+  'event_successfully_updated' => 'Мероприятие успешно обновлено!',
+  'fill_email_and_password' => 'Пожалуйста, введите свой email и пароль.',
+  'image_upload_error' => 'Возникла проблема с загрузкой вашего изображения.',
+  'invalid_ticket_error' => 'Недействительный билет! Пожалуйста, попробуйте еще раз.',
+  'login_password_incorrect' => 'Ваша комбинация имя пользователя/пароль была неправильной',
+  'incorrect_captcha' => 'Проверка Captcha не пройдена, пожалуйста, попробуйте еще раз.',
+  'maximum_refund_amount' => 'Максимальная сумма, которую вы можете вернуть, составляет :money',
+  'message_successfully_sent' => 'Сообщение успешно отправлено!',
+  'new_order_received' => 'Получен новый заказ на мероприятие :event [:order]',
+  'no_organiser_name_error' => 'Вы должны указать имя организатора мероприятия.',
+  'nothing_to_do' => 'Нечего делать',
+  'nothing_to_refund' => 'Нечего возвращать.',
+  'num_attendees_checked_in' => ':num Участник(и) Зарегистрировался(ись).',
+  'order_already_refunded' => 'Деньги за заказ уже были возвращены!',
+  'order_cant_be_refunded' => 'Деньги за заказ не могут быть возвращены!',
+  'order_page_successfully_updated' => 'Страница заказа успешно обновлена.',
+  'order_payment_status_successfully_updated' => 'Статус оплаты заказа успешно обновлен',
+  'organiser_design_successfully_updated' => 'Дизайн страницы организатора успешно обновлен!',
+  'organiser_other_error' => 'Возникла проблема с поиском организатора.',
+  'password_successfully_reset' => 'Пароль успешно сброшен!',
+  'payment_information_successfully_updated' => 'Информация о платеже успешно обновлена.',
+  'please_enter_a_background_color' => 'Пожалуйста, введите цвет фона.',
+  'quantity_min_error' => 'Доступное количество не может быть меньше проданного или зарезервированного.',
+  'refreshing' => 'Обновление...',
+  'refund_exception' => 'Возникла проблема с возвратом денег. Пожалуйста, проверьте свои данные и попробуйте снова.',
+  'refund_only_numbers_error' => 'В этом поле допускаются только числа.',
+  'social_settings_successfully_updated' => 'Социальные настройки были успешно обновлены!',
+  'stripe_error' => 'Произошла ошибка при подключении вашей учетной записи Stripe. Пожалуйста, попробуйте еще раз.',
+  'stripe_success' => 'Вы успешно подключили свой аккаунт Stripe.',
+  'success_name_has_received_instruction' => 'Успех! <b>:name</b> были отправлены дальнейшие инструкции.',
+  'successfully_cancelled_attendee' => 'Успешная отмена участника!',
+  'successfully_cancelled_attendees' => 'Успешная отмена участников!',
+  'successfully_created_organiser' => 'Организатор успешно создан!',
+  'successfully_created_question' => 'Вопрос успешно создан.',
+  'successfully_deleted_question' => 'Вопрос успешно удален.',
+  'successfully_edited_question' => 'Вопрос успешно отредактирован.',
+  'successfully_refunded_and_cancelled' => 'Успешное возмещение заказа и отмена участников!',
+  'successfully_refunded_order' => 'Успешное возмещение заказа!',
+  'successfully_saved_details' => 'Данные успешно сохранены!',
+  'successfully_updated_attendee' => 'Данные участника успешно обновлены!',
+  'successfully_updated_organiser' => 'Данные организатора успешно обновлены!',
+  'successfully_updated_question' => 'Вопрос успешно обновлен.',
+  'successfully_updated_question_order' => 'Порядов следования вопросов успешно обновлен',
+  'survey_answers' => 'Ответы на опрос',
+  'the_order_has_been_updated' => 'Заказ был обновлен',
+  'this_question_cant_be_deleted' => 'Этот вопрос не может быть удален',
+  'ticket_field_required_error' => 'Поле "билет" является обязательным.',
+  'ticket_not_exists_error' => 'Выбранный вами билет не существует',
+  'ticket_order_successfully_updated' => 'Заказ билета успешно обновлен',
+  'ticket_successfully_deleted' => 'Билет успешно удален',
+  'ticket_successfully_resent' => 'Билет успешно отправлен!',
+  'ticket_successfully_updated' => 'Билет успешно обновлен!',
+  'tickets_for_event' => 'Ваши билеты на мероприятие :event.',
+  'whoops' => 'Ой! Похоже, что-то пошло не так. Пожалуйста, попробуйте еще раз.',
+  'your_password_reset_link' => 'Ссылка для сброса пароля',
+);
diff --git a/resources/lang/ru/Dashboard.php b/resources/lang/ru/Dashboard.php
new file mode 100644
index 000000000..393644342
--- /dev/null
+++ b/resources/lang/ru/Dashboard.php
@@ -0,0 +1,26 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/19 18:57:21 
+*************************************************************************/
+
+return array (
+    //============================== New strings to translate ==============================//
+    'this_event_has_started' => 'Это мероприятие началось.',
+    //==================================== Translations ====================================//
+    'create_tickets' => 'Создать билеты',
+    'edit_event_page_design' => 'Редактирование дизайна страницы мероприятия',
+    'edit_organiser_fees' => 'Редактировать тарифы организаторов',
+    'event_page_visits' => 'Визиты на страницу мероприятия',
+    'event_url' => 'Ссылка на мероприятие',
+    'event_views' => 'Просмотры страницы мероприятия',
+    'generate_affiliate_link' => 'Создать партнерскую ссылку',
+    'orders' => 'Заказы',
+    'quick_links' => 'Короткие ссылки',
+    'registrations_by_ticket' => 'Регистрация по категориям билетов',
+    'sales_volume' => 'Объем продаж',
+    'share_event' => 'Поделиться ссылкой на мероприятие',
+    'this_event_is_on_now' => 'Это мероприятие происходит сейчас',
+    'ticket_sales_volume' => 'Объем продажи билетов',
+    'tickets_sold' => 'Билетов продано',
+    'website_embed_code' => 'Код для вставки на сайт',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Design.php b/resources/lang/ru/Design.php
new file mode 100644
index 000000000..593fcb983
--- /dev/null
+++ b/resources/lang/ru/Design.php
@@ -0,0 +1,14 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/19 17:21:50 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  'event_page_preview' => 'Предварительный просмотр страницы мероприятия',
+  //==================================== Translations ====================================//
+  'background_options' => 'Варианты фона',
+  'images_provided_by_pixabay' => 'Изображения предоставлены <b>PixaBay.com</b>',
+  'select_from_available_images' => 'Выбор из доступных изображений',
+  'use_a_colour_for_the_background' => 'Использовать цвет для фона',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Email.php b/resources/lang/ru/Email.php
new file mode 100644
index 000000000..e275e6762
--- /dev/null
+++ b/resources/lang/ru/Email.php
@@ -0,0 +1,22 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/26 11:05:24 
+*************************************************************************/
+
+return array (
+  //==================================== Translations ====================================//
+  'attendize_register' => 'Благодарим вас за регистрацию',
+  'contact_organiser' => 'Вы можете связаться с :organiser_name напрямую по электронной почте <a href="mailto::organiser_email">:organiser_email</a>, или ответив на это письмо.',
+      'invite_user' => ':name добавил вас в учетную запись :app .',
+  'message_received_from_organiser' => 'Вы получили сообщение от :organiser_name в связи с мероприятием :event_title.',
+  'message_regarding_event' => 'Сообщение насчет мероприятия: :event',
+  'organiser_copy' => '[Копия организатору]',
+  'refund_from_name' => 'Вы получили возврат денег от :name',
+  'your_ticket_cancelled' => 'Ваш билет был аннулирован',
+  'your_ticket_for_event' => 'Ваш билет на мероприятие :event',
+    //================================== Obsolete strings ==================================//
+  'LLH:obsolete' => 
+  array (
+
+  ),
+);
diff --git a/resources/lang/ru/Event.php b/resources/lang/ru/Event.php
new file mode 100644
index 000000000..e47dce802
--- /dev/null
+++ b/resources/lang/ru/Event.php
@@ -0,0 +1,55 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/26 10:54:45
+*************************************************************************/
+
+return array (
+  'address_details' => 'Информация об адресе',
+  'address_line_1' => 'Адрес линия 1',
+  'address_line_1_placeholder' => 'например ул. Ленина 7',
+  'address_line_2' => 'Адрес линия 2',
+  'address_line_2_placeholder' => 'например Нижегородская область',
+  'city' => 'Город',
+  'city_placeholder' => 'например: Вена',
+  'create_event' => 'Создать мероприятие',
+  'current_event_flyer' => 'Текущий логотип мероприятия',
+  'customize_event' => 'Настроить мероприятие',
+  'delete?' => 'Удалить?',
+  'enter_existing' => 'Выбор из существующих мест',
+  'enter_manual' => 'Ввести адрес вручную',
+  'event_description' => 'Описание мероприятия',
+  'event_end_date' => 'Дата окончания события',
+  'event_flyer' => 'Логотип мероприятия',
+  'event_image' => 'Изображение мероприятия (Буклет, графика или другое ...)',
+  'event_image_position' => 'Расположение изображения мероприятия',
+  'event_image_position_hide' => 'Скрыто',
+  'event_image_position_before' => 'Перед',
+  'event_image_position_after' => 'За',
+  'event_image_position_left' => 'Слева',
+  'event_image_position_right' => 'Справа',
+  'event_orders' => 'Заказы мероприятия',
+  'event_start_date' => 'Дата начала мероприятия',
+  'event_title' => 'Название мероприятия',
+  'event_title_placeholder' => 'например: Венская Международная Конференция',
+  'event_visibility' => 'Публичность мероприятия',
+  'go_live' => 'Мероприятие успешно опубликовано! Вы можете отменить это действие на странице настроек мероприятия.',
+  'n_attendees_for_event' => ':num участников для мероприятия: :name (:date)',
+  'no_events_yet' => 'Мероприятия пока отсутствуют!',
+  'no_events_yet_text' => 'Похоже, вам еще предстоит создать мероприятие. Вы можете создать его, нажав на кнопку ниже.',
+  'num_events' => ':num мероприятий',
+  'or(manual/existing_venue)' => 'или',
+  'payment_cancelled' => 'Вы отменили свой платеж. Вы можете попробовать еще раз.',
+  'post_code' => 'Почтовый индекс',
+  'post_code_placeholder' => 'например: 34070.',
+  'print_attendees_title' => 'Участники',
+  'promote' => 'Продвигать',
+  'promote_event' => 'Продвижение мероприятия',
+  'revenue' => 'Доход',
+  'save_changes' => 'Сохранить изменения',
+  'showing_num_of_orders' => 'Показано :0 заказов, всего :1',
+  'tickets_sold' => 'Билеты проданы',
+  'venue_name' => 'Название места проведения мероприятия',
+  'venue_name_placeholder' => 'например: У Одноглазого Пирата',
+  'vis_hide' => 'Распубликовать мероприятие',
+  'vis_public' => 'Опубликовать мероприятие.',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Fees.php b/resources/lang/ru/Fees.php
new file mode 100644
index 000000000..766100499
--- /dev/null
+++ b/resources/lang/ru/Fees.php
@@ -0,0 +1,15 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/19 17:24:53 
+*************************************************************************/
+
+return array (
+  'service_fee_fixed_price' => 'Стоимость услуг сервиса, фиксированная цена',
+  'service_fee_fixed_price_help' => 'например: введите <b>1.25</b> для <b>:cur1.25</b>',
+  'service_fee_fixed_price_placeholder' => '0.00',
+  'organiser_fees' => 'Стоимость услуг организатора',
+  'organiser_fees_text' => 'Это необязательные сборы, которые вы можете включить в стоимость каждого билета. Этот сбор будет отображаться в счетах покупателя \'<b>BOOKING FEES</b>\'.',
+  'service_fee_percentage' => 'Процент за услуги',
+  'service_fee_percentage_help' => 'например: введите <b>3.5</b> для <b>3.5%</b>',
+  'service_fee_percentage_placeholder' => '0',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/File_format.php b/resources/lang/ru/File_format.php
new file mode 100644
index 000000000..faaaf47db
--- /dev/null
+++ b/resources/lang/ru/File_format.php
@@ -0,0 +1,16 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/19 08:29:24 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Attendees.blade.php
+  'Excel_xls' => 'Excel (XLS)',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Attendees.blade.php
+  'Excel_xlsx' => 'Excel (XLSX)',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Attendees.blade.php
+  'csv' => 'CSV',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Attendees.blade.php
+  'html' => 'HTML',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Installer.php b/resources/lang/ru/Installer.php
new file mode 100644
index 000000000..a1a065435
--- /dev/null
+++ b/resources/lang/ru/Installer.php
@@ -0,0 +1,51 @@
+<?php
+/*************************************************************************
+ * Generated via "php artisan localization:missing" at 2018/04/17 16:35:44
+ *************************************************************************/
+
+return array(
+    'connection_success' => 'Успех, Подсоединение работает!',
+    'connection_failure' => 'Невозможно подключиться! Пожалуйста, проверьте ваши настройки',
+    'app_settings' => 'Настройки приложения',
+    'application_url' => 'URL приложения',
+    'database_type' => 'Тип базы данных',
+    'database_host' => 'Хост базы данных',
+    'database_name' => 'Имя базы данных',
+    'database_username' => 'Database Username',
+    'database_password' => 'Пароль базы данных',
+    'database_settings' => 'Настройки базы данных',
+    'database_message' => 'Если вы используете среду docker для разработки, вы можете просто использовать предварительно заполненные значения. Если вы используете свою собственную среду, вам нужно будет обновить настройки базы данных. Используйте Проверить соединение с базой данных, чтобы убедиться в правильности параметров соединения. Неправильные параметры приведут к проблемам при установке.',
+    'database_test_connect_failure' => 'Невозможно подключиться к базе! Пожалуйста, проверьте ваши настройки',
+    'database_test_connect_failure_error_message' => 'Ошибка',
+    'database_test_connect_failure_error_type' => 'Тип ошибки',
+    'database_test_connect_failure_message' => 'Невозможно подключиться к базе! Пожалуйста, проверьте ваши настройки',
+    'database_test_connect_success' => 'Успех! Настройки базы данных работают!',
+    'email_settings' => 'Настройки электронной почты',
+    'files_n_folders_check' => 'Проверка файлов и папок',
+    'install' => 'Установить Attendize',
+    'mail_encryption' => 'Шифрование протокола обмена с почтовым сервером',
+    'mail_driver' => 'Почтовый драйвер',
+    'mail_driver_help' => 'Для использования PHP\'s <a target="_blank" href="http://php.net/manual/en/function.mail.php">mail</a> фонкционала введите <b>mail</b> в этом поле и оставьте следующие ниже поля пустыми.',
+    'mail_from_address' => 'Адрес отправителя, указываемый в письмах',
+    'mail_from_name' => 'Имя отправителя',
+    'mail_host' => 'Хост почтового сервера',
+    'mail_password' => 'Пароль пользователя',
+    'mail_port' => 'Порт почтового сервера',
+    'mail_username' => 'Имя пользователя почтового сервера',
+    'optional_requirement_not_met' => 'Внимание: требование <b>:requirement</b> не выполнено',
+    'path_not_writable' => 'Внимание: <b>:path</b> недоступен для записи',
+    'path_writable' => 'Успех: <b>:path</b> доступен для записи',
+    'php_enough' => 'Успех: приложение требует версию PHP >= <b>:requires</b> а ваша <b>:has</b>',
+    'php_optional_requirements_check' => 'PHP проверка необязательных требований',
+    'php_requirements_check' => 'PHP проверка требований',
+    'php_too_low' => 'Внимание: приложение требует версию PHP >= <b>:requires.</b> Ваша же только лишь <b>:has</b>.',
+    'php_version_check' => 'PHP Проверка версии',
+    'requirement_met' => 'Успех: <b>:requirement</b> расширение установлено',
+    'requirement_not_met' => 'Ошибка: <b>:requirement</b> расширение не установлено',
+    'setup' => 'Настройка Attendize',
+    'setup_completed' => 'Attendize настройка завершена',
+    'setup_completed_already_message' => "Обнаружен установочный файл, что означает, что процесс установки Attendize уже завершен. <br /> Если вы не зарегистрировали пользователя по умолчанию, вы можете " .
+                                         "<a href='/signup'>Сделать это</a><br />Если вы уже создали пользователя по умолчанию, вы можете <a href='/login'>Войти здесь</a>",
+    'test_database_connection' => 'Тестовое подключение к базе данных',
+    'title' => 'Установка Attendize',
+);
diff --git a/resources/lang/ru/Javascript.php b/resources/lang/ru/Javascript.php
new file mode 100644
index 000000000..0418cdf2f
--- /dev/null
+++ b/resources/lang/ru/Javascript.php
@@ -0,0 +1,16 @@
+<?php
+
+return [
+    "processing" => "Секундочку...",
+    "time_run_out" => "Время истекло! Вам придется заново начать процесс оформления заказа.",
+    "just_2_minutes" => "У вас осталось всего 2 минуты, чтобы выполнить этот заказ!",
+    "whoops" => 'Ой! Похоже, что сервер выдал ошибку. Пожалуйста, попробуйте еще раз или свяжитесь с веб-мастером, если проблема сохраняется.',
+    "whoops2" => 'Что-то пошло не так! Обновите страницу и попробуйте снова',
+    "whoops_and_error" => "Ой! Что-то пошло не так.<br>:code :error</br>",
+    "at_least_one_option" => 'Надо выбрать хотя бы один вариант.',
+    "credit_card_error" => 'Номер кредитной карты, по-видимому, неправильный',
+    "expiry_error" => 'Дата истечения срока действия, по-видимому, недействительна.',
+    "cvc_error" => 'Номер CVC кажется недействительным.',
+    "card_validation_error" => 'Пожалуйста, проверьте данные вашей карты и повторите попытку.',
+    "checkin_init_error" => 'Произошла ошибка при инициализации видеокамеры или сканера. Проверьте, подключаетесь ли вы через защищенную страницу (https) и включена ли в вашем браузере поддержка видеокамеры или сканера.',
+];
\ No newline at end of file
diff --git a/resources/lang/ru/ManageAccount.php b/resources/lang/ru/ManageAccount.php
new file mode 100644
index 000000000..af064211d
--- /dev/null
+++ b/resources/lang/ru/ManageAccount.php
@@ -0,0 +1,52 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/13 13:27:24 
+*************************************************************************/
+
+return array (
+  'about' => 'О программе',
+  'account' => 'Учетная запись',
+  'account_id' => 'Идентификатор учетной записи',
+  'accout_owner' => 'Владелец учетной записи',
+  'add_user_help_block' => 'Добавленные пользователи получат дальнейшие инструкции по электронной почте.',
+  'add_user_submit' => 'Добавить пользователя',
+  'api_key' => 'ключ API',
+  'bitpay_api_key' => 'Ключ для BitPay API',
+  'bitpay_settings' => 'настройки Bitpay',
+  'branding_name' => 'Имя бренда',
+  'branding_name_help' => 'Это имя покупатели будут видеть при оформлении заказа. Оставьте это поле пустым, если вы хотите, чтобы использовалось имя организатора мероприятия.',
+  'coinbase_settings' => 'Настройки Coinbase',
+  'default_currency' => 'Валюта по умолчанию',
+  'default_payment_gateway' => 'Шлюз для платежей по умолчанию',
+  'email' => 'Почта',
+  'email_address_placeholder' => 'Адрес электронной почты',
+  'first_name' => 'Имя',
+  'general' => 'Общие настройки',
+  'last_name' => 'Фамилия',
+  'licence_info' => 'Информация о лицензии',
+  'licence_info_description' => 'Attendize лицензирована как  <b><a target="_blank" href="https://tldrlegal.com/license/attribution-assurance-license-(aal)#summary">Attribution Assurance Licence (AAL)</a></b>. Эта лицензия требует, чтобы отметка <b>Powered By Attendize</b> находилась на каждой установке Attendize. Если вы хотите удалить ссылки на Attendize, вы должны приобрести одну из whitelabel-лицензий  <b><a target="_blank" href="https://attendize.com/license.html">описанных тут</a></b>.',
+  'mastercard_internet_gateway_service_settings' => 'Настройки службы интернет-шлюза Mastercard',
+  'merchant_access_code' => 'Код доступа продавца',
+  'merchant_id' => 'ID продавца',
+  'open_source_soft' => 'ПО с открытым исходным кодом',
+  'open_source_soft_description' => 'Attendize построен с использованием множества библиотек с открытым исходным кодом. Вы можете ознакомиться с их обзором на <b><a href="https://libraries.io/github/Attendize/Attendize?ref=Attendize_About_Page" target="_blank">libraries.io</a></b>.',
+  'payment' => 'Оплата',
+  'paypal_password' => 'пароль PayPal',
+  'paypal_settings' => 'настройки PayPal',
+  'paypal_signature' => 'цифровая подпись PayPal',
+  'paypal_username' => 'имя пользователя PayPal',
+  'save_account_details_submit' => 'Сохранить настройки учетной записи',
+  'save_payment_details_submit' => 'Сохранить настройки оплаты',
+  'secret_code' => 'Секретный код',
+  'secure_hash_code' => 'Код безопасного хеша',
+  'stripe_publishable_key' => 'публичный ключ Stripe ',
+  'stripe_secret_key' => 'секретный ключ Stripe',
+  'stripe_settings' => 'настройки Stripe',
+  'timezone' => 'Временная зона',
+  'users' => 'Пользователи',
+  'version_info' => 'Информация о версии',
+  'version_out_of_date' => 'Ваша версия (<b>:installed</b>) Attendize устарела. Последняя версия (<b>:latest</b>) может быть <a href=":url" target="_blank">скачана тут</a>',
+  'version_up_to_date' => 'Вы используете новейшую версию Attendize (<b>:installed</b>)!',
+    'account_payment' => 'Аккаунт / Оплата',
+    'event_attendees' => 'Участники мероприятия',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/ManageEvent.php b/resources/lang/ru/ManageEvent.php
new file mode 100644
index 000000000..b2e2afc04
--- /dev/null
+++ b/resources/lang/ru/ManageEvent.php
@@ -0,0 +1,103 @@
+<?php
+
+return array (
+  'all_attendees' => 'Все участники',
+  'all_attendees_cancelled' => 'Все участники в этом заказе были отменены.',
+  'all_order_refunded' => 'Все :money за этот заказ были возвращены.',
+  'amount' => 'Сумма',
+  'refunded_amount' => 'Возмещенная сумма',
+  'refund_the_entire_amount' => 'Возместить всю сумму :amount',
+  'attendee_cancelled' => 'Отменен',
+  'attendee_cancelled_help' => 'Участие этого участника было аннулировано',
+  'attendees_file_requirements' => 'Файл должен быть .csv каждая строка должна содержать 3 поля в формате имя,фамилия,емайл',
+  'attendize_qrcode_check_in' => 'QRCode участника для регистрации',
+  'cancel_attendee_title' => 'Отменить :cancel',
+  'cancel_description' => 'Отмена участников удалит их из списка участников мероприятия.',
+  'cancelling_order_will_refund_attendees' => 'Отмена :type вернет деньги выбранным участникам',
+  'cancel_notify' => 'Уведомить :name об аннулировании их билета.',
+  'cancel_order_:ref' => 'Отменить заказ: :ref',
+  'cancel_refund' => 'Если вы хотите вернуть деньги за заказ, к которому относится данный участник, вы можете сделать это <strong><a href=":url">тут</a></strong>.',
+  'cancel_refund_user' => 'Вернуть деньги :name за билет.',
+  'cant_refund_here' => 'К сожалению, вы не можете вернуть деньги, оплаченные через :gateway . Вы должны сделать это на вебсайте платежной системы.',
+  'check-in' => 'Регистрация',
+  'checkin_search_placeholder' => 'Поиск по имени участника, ссылке на заказ, ссылке на участника...',
+  'close' => 'закрыть',
+  'confirm_cancel' => 'Подтвердить отмену участника',
+  'confirm_order_cancel' => 'Подтвердить отмену заказа',
+  'create_attendees' => 'Создать участников',
+  'create_ticket' => 'Создать категорию билета',
+	'default_currency' => 'Валюта по умолчанию',
+  'download_pdf_ticket' => 'Скачать билет в формате PDF',
+  'edit_attendee' => 'Редактировать участника',
+  'edit_attendee_title' => 'Редактировать :attendee',
+  'edit_order_title' => 'Заказ: :order_ref',
+  'edit_question' => 'Редактировать Вопрос',
+  'edit_ticket' => 'Редактировать билет',
+  'end_sale_on' => 'End Sale On',
+  'event_not_live' => 'Это мероприятие еще не состоялось',
+  'event_page' => 'Страница мероприятия',
+  'event_tools' => 'Детали мероприятия',
+  'export' => 'Экспорт',
+  'go_to_attendee_name' => 'Перейти к участнику :name',
+  'hide_this_ticket' => 'Скрыть этот билет',
+  'import_file' => 'Импорт файла',
+  'invite_attendee' => 'Пригласить участника',
+  'invite_attendees' => 'Пригласить участников',
+  'issue_full_refund' => 'Выполнить полный возврат денег',
+  'issue_partial_refund' => 'Выполнить частичный возврат денег',
+  'manage_order_title' => 'Заказ: :order_ref',
+  'mark_payment_received' => 'Пометить платеж как полученный',
+  'maximum_tickets_per_order' => 'Максимальное количество билетов в одном заказе',
+  'message_attendee_title' => 'Сообщение :attendee',
+  'message_attendees' => 'Сообщение',
+  'message_attendees_title' => 'Сообщение участникам',
+  'message_order' => 'Сообщение :order',
+  'minimum_tickets_per_order' => 'Минимальное количество билетов в одном заказе',
+  'more_options' => 'Еще детали',
+  'no_attendees_matching' => 'Нет подходящих участников',
+  'no_attendees_yet' => 'Участников пока нет',
+  'no_attendees_yet_text' => 'Участники появятся здесь после того, как они успешно зарегистрируются на ваше мероприятие, или вы можете сами вручную пригласить участников.',
+  'no_orders_yet' => 'Заказов пока нет',
+  'no_orders_yet_text' => 'Новые заказы будут появляться здесь по мере их создания.',
+  'order_contact_will_receive_instructions' => 'Контактное лицо по заказу будет проинструктировано направить любой ответ по адресу :email',
+  'order_details' => 'Детали заказа',
+  'order_overview' => 'Обзор заказа',
+  'order_ref' => 'Заказ: #:order_ref',
+  'order_refunded' => ':money заказу были возвращены.',
+  'price_placeholder' => 'например: 25.99',
+  'print_attendee_list' => 'Распечатать список участников',
+  'print_tickets' => 'Распечатать билеты',
+  'publish_it' => 'Опубликовать',
+  'qr_instructions' => 'Поместите QR-код перед камерой (не слишком близко)',
+  'quantity_available' => 'Доступное количество',
+  'quantity_available_placeholder' => 'например: 100 (Оставьте пустым для неограниченного количества)',
+  'refund_amount' => 'Сумма возмещения',
+  'refund_this_order?' => 'Вернуть деньги за этот заказ?',
+  'resend_ticket' => 'Повторно выслать билет',
+  'resend_ticket_help' => 'Участнику будет выслана еще одна копия его билета на :email',
+  'resend_ticket_to_attendee' => 'Повторно выслать билет :attendee',
+  'resend_tickets' => 'Повторно выслать билеты',
+  'result_for' => 'результат(ы) для',
+  'save_question' => 'Сохранить вопрос',
+  'save_ticket' => 'Сохранить билет',
+  'scan_another_ticket' => 'Отсканировать еще один билет',
+  'select_all' => 'Отметить все',
+  'select_attendee_to_cancel' => 'Выберите билеты участников, которые вы хотите отменить.',
+  'send_invitation_n_ticket_to_attendees' => 'Отправка приглашений и билетов участникам',
+  'send_message' => 'Отправить сообщение',
+  'send_ticket' => 'Отправить билет',
+  'start_sale_on' => 'Начать продажу',
+  'surveys' => 'Опросы',
+  'this_order_is_awaiting_payment' => 'Этот заказ ожидает оплаты.',
+  'ticket' => 'Билет',
+  'ticket_description' => 'Описание билета',
+  'ticket_price' => 'Цена билета',
+  'ticket_title' => 'Категория',
+  'ticket_title_placeholder' => 'например: семейный',
+  'update_order' => 'Обновить заказ',
+  'widgets' => 'Виджеты',
+  'LLH:obsolete' => 
+  array (
+    'create_question' => 'Создать вопрос',
+  ),
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Message.php b/resources/lang/ru/Message.php
new file mode 100644
index 000000000..23d86f64f
--- /dev/null
+++ b/resources/lang/ru/Message.php
@@ -0,0 +1,21 @@
+<?php
+
+return array (
+  'new_message' => 'Новое сообщение',
+  'sent_messages' => 'Отправленные',
+  'all_event_attendees' => 'Все участники мероприятия',
+  'attendees_with_ticket_type' => 'Участники с категорией билета',
+  'before_send_message' => 'Участнику будет проинструктирован отправлять все ответы организатору :organiser',
+  'content' => 'Текст сообщения',
+  'date' => 'дата',
+  'leave_blank_to_send_immediately' => 'Оставьте пустым, чтобы отправить немедленно',
+  'message' => 'Сообщение',
+  'no_messages_for_event' => 'Нет сообщений об мероприятии.',
+  'schedule_send_time' => 'Запланированное время отправки',
+  'send_a_copy_to' => 'Отправить копию организатору :organiser',
+  'send_message' => 'Отправить сообщение',
+  'send_to' => 'Получатель',
+  'subject' => 'Тема сообщения',
+  'to' => 'К',
+  'unsent' => 'Неотправлено',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Order.php b/resources/lang/ru/Order.php
new file mode 100644
index 000000000..6650c9b25
--- /dev/null
+++ b/resources/lang/ru/Order.php
@@ -0,0 +1,52 @@
+<?php
+
+return array (
+  'amount_refunded' => 'возвращенная сумма',
+  'fully_refunded' => 'деньги полностью возвращены',
+  'partially_refunded' => 'деньги возвращены частично',
+  'after_order' => 'Сообщение для отображения посетителям после завершения заказа.',
+  'after_order_help' => 'Это сообщение будет показано участникам после того, как они успешно завершат процесс оформления заказа.',
+  'amount' => 'Сумма',
+  'arrived' => 'Получено',
+  'attendee_cancelled' => 'Отменен',
+  'attendee_refunded' => 'Деньги возвращены',
+  'awaiting_payment' => 'Ожидает оплаты',
+  'before_order' => 'Сообщение для отображения посетителям до завершения заказа.',
+  'before_order_help' => 'Это сообщение будет показано участникам непосредственно перед тем, как они завершат оформление своего заказа.',
+  'booking_fee' => 'Комиссия за бронирование',
+  'cancel_order' => 'Отменить заказ',
+  'date' => 'Дата',
+  'details' => 'Подробности',
+  'edit' => 'Редактировать',
+  'email' => 'Емайл',
+  'enable_offline_payments' => 'Разрешить оплату наличными',
+  'free' => 'БЕСПЛАТНО',
+  'no_recent_orders' => 'Похоже, что недавних заказов нет.',
+  'offline_payment_instructions' => 'Введите инструкции о том, как посетители могут осуществлять оплату наличными.',
+  'offline_payment_settings' => 'Настройки оплаты наличными',
+  'order_attendees' => 'Участники заказа',
+  'order_date' => 'Дата заказа',
+  'order_items' => 'Элементы заказа',
+  'order_page_settings' => 'Настройки страницы заказа',
+  'order_ref' => 'Ссылка',
+  'organiser_booking_fees' => 'Комиссия организатору за бронирование',
+  'payment_gateway' => 'Шлюз приема оплаты',
+  'payment_intent' => 'Назначение платежа',
+  'payment_failed' => 'Оплата не прошла, пожалуйста, попробуйте ввести свои платежные данные еще раз.',
+  'price' => 'Цена',
+  'purchase_date' => 'Дата покупки',
+  'quantity' => 'Количество',
+  'recent_orders' => 'Недавние заказы',
+  'reference' => 'Ссылка',
+  'refund/cancel' => 'Отменить',
+  'registered' => 'зарегистрировано',
+  'search_placeholder' => 'Искать заказы..',
+  'status' => 'Статус',
+  'sub_total' => 'Подитог',
+  'ticket' => 'Билет',
+  'tickets' => 'Билет(ы)',
+  'total' => 'Итого',
+  'transaction_id' => 'ID транзакции',
+  'view_order' => 'Просмотр заказа',
+  'view_order_num' => 'Просмотр заказа #:num',
+);
diff --git a/resources/lang/ru/Order_Emails.php b/resources/lang/ru/Order_Emails.php
new file mode 100644
index 000000000..22af740d2
--- /dev/null
+++ b/resources/lang/ru/Order_Emails.php
@@ -0,0 +1,8 @@
+<?php
+return [
+    'received_new_order'             => 'Вы получили новый заказ на участие в мероприятии',
+    'order_still_awaiting_payment'   => 'Обратите внимание: этот заказ все еще требует оплаты.',
+    'manage_order'                   => 'Вы можете управлять этим заказом на',
+    'successful_order'               => 'Ваш заказ на мероприятие <strong>:name</strong> успешно подтвержден.',
+    'tickets_attached'               => 'Ваши билеты прикреплены к этому письму. Вы также можете просмотреть информацию о заказе и загрузить свои билеты по ссылке:',
+];
\ No newline at end of file
diff --git a/resources/lang/ru/Organiser.php b/resources/lang/ru/Organiser.php
new file mode 100644
index 000000000..8ef6a4b04
--- /dev/null
+++ b/resources/lang/ru/Organiser.php
@@ -0,0 +1,75 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/26 10:16:27 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageOrganiser\\Customize.blade.php
+  'save_organiser' => 'Сохранить данные организатора',
+  //==================================== Translations ====================================//
+  'additional_organiser_options' => 'Дополнительные настройки организатора',
+  'background_color' => 'Цвет фона',
+  'continue_to' => 'Продолжить',
+  'create_an_organiser' => 'Создать организатора',
+  'create_new_organiser' => 'Создать нового организатора',
+  'create_organiser' => 'Создать организатора',
+  'create_organiser_text' => 'Прежде чем создавать мероприятия, вам нужно будет создать организатора. Организатор - это просто тот, кто организует мероприятия. Это может быть кто угодно, от человека до организации.',
+  'current_logo' => 'Текущий логотип',
+  'customize' => 'Настроить',
+  'dashboard' => 'Панель управления',
+  'delete_logo?' => 'Удалить логотип?',
+  'enable_public_organiser_page' => 'Включить публичную страницу организатора',
+  'event' => 'Мероприятие',
+  'event_calendar' => 'Календарь мероприятий',
+  'events' => 'Мероприятия',
+  'google_analytics_code' => 'Google Analytics code',
+  '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' => 'Цвет фона заголовка',
+  'hide_additional_organiser_options' => 'Скрыть дополнительные опции организатора',
+  'make_organiser_hidden' => 'Распубликовать страницу организатора.',
+  'make_organiser_public' => 'Опубликовать страницу организатора.',
+  'no_upcoming_events' => 'У вас нет ближайших мероприятий.',
+  'no_upcoming_events_click' => 'Вы можете нажать здесь, чтобы создать мероприятие.',
+  'or' => 'или',
+  'or_caps' => 'или',
+  'organiser_description' => 'Описание организатора',
+  'organiser_description_placeholder' => '',
+  'organiser_design' => 'Дизайн страницы организатора',
+  'organiser_details' => 'Детали организатора',
+  'organiser_email' => 'Email организатора',
+  'organiser_email_placeholder' => '',
+  'organiser_events' => 'Мероприятия организатора',
+  'organiser_facebook' => 'Страница организатора на Facebook',
+  'organiser_facebook_placeholder' => 'например http://www.facebook.com/MyFaceBookPage',
+  'organiser_logo' => 'Логотип организатора',
+  'organiser_logo_help' => 'Мы рекомендуем использовать квадратное изображение, так как оно будет лучше всего смотреться на печатных билетах и страницах мероприятий.',
+  'organiser_menu' => 'Меню организатора',
+  'organiser_name' => 'Имя организатора',
+  'organiser_name_dashboard' => ':name Панель управления',
+  'organiser_name_events' => ':name Мероприятия',
+  'organiser_name_placeholder' => 'Кто организует это мероприятие?',
+  'organiser_page' => 'Organiser Page',
+  'organiser_page_design' => 'Дизайн страницы организатора',
+  'organiser_page_preview' => 'Предварительный просмотр страницы организатора',
+  'organiser_page_visibility_text' => 'Страницы организаторов содержат публичный список прошедших и предстоящих мероприятий.',
+  'organiser_settings' => 'Настройки организатора',
+  'organiser_twitter' => 'Twitter организатора',
+  'organiser_twitter_placeholder' => 'например http://www.twitter.com/MyTwitterPage',
+  'organiser_username_facebook_placeholder' => 'MyFacebookPage',
+  'organiser_username_twitter_placeholder' => 'MyTwitterPage',
+  'organiser_tax_prompt' => 'Хотите ли вы взимать налог с ваших мероприятий?',
+  'organiser_tax_id' => 'Налоговый ID',
+  'organiser_tax_name' => 'Название налога',
+  'organiser_tax_value' => 'Значение',
+  'yes' => 'Да',
+  'no' => 'Нет',
+  'sales_volume' => 'Объем продаж',
+  'search_placeholder' => 'Поиск мероприятий ...',
+  'select_an_organiser' => 'Выбрать организатора',
+  'select_organiser' => 'Выбрать организатора',
+  'text_color' => 'Цвет текста',
+  'tickets_sold' => 'Билетов продано',
+);
diff --git a/resources/lang/ru/Public_ViewEvent.php b/resources/lang/ru/Public_ViewEvent.php
new file mode 100644
index 000000000..94d6a2cfd
--- /dev/null
+++ b/resources/lang/ru/Public_ViewEvent.php
@@ -0,0 +1,99 @@
+<?php
+
+return [
+    'amount'                            => 'Сумма',
+    'at'                                => '@',
+    'attendee_cancelled'                => 'Отменен',
+    'below_order_details_header'        => '',
+    'below_payment_information_header'  => '',
+    'below_tickets'                     => 'Выберите количество билетов и нажмите "зарегистрировать".',
+    'booking_fee'                       => 'Комиссия за бронирование',
+    'booking_fees'                      => 'Комиссия за бронирование',
+    'business_address'                  => 'Адрес организации',
+    'business_address_city'             => 'Город',
+    'business_address_code'             => 'Почтовый индекс',
+    'business_address_line1'            => 'Адрес линия 1',
+    'business_address_line2'            => 'Адрес линия 2',
+    'business_address_state_province'   => 'Область/регион',
+    'business_details'                  => 'детали организации',
+    'business_name'                     => 'Название бизнеса',
+    'business_tax_number'               => 'Налоговый номер',
+    'card_number'                       => 'Номер кредитной карты',
+    'checkout_order'                    => 'Далее к оплате',
+    'checkout_submit'                   => 'Оформить заказ',
+    'confirmation_email'                => 'и подтверждение по электронной почте были отправлены вам.',
+    'Contact'                           => 'Contact',
+    'copy_buyer'                        => 'Копировать данные о покупателе всем владельцам билетов',
+    'complete_payment'                  => 'Завершить оплату',
+    'continue'                          => 'Продолжить',
+    'currently_not_on_sale'             => 'В настоящее время не продается',
+    'cvc_number'                        => 'CVC номер',
+    'date'                              => 'Дата',
+    'DETAILS'                           => 'ДЕТАЛИ',
+    'download_tickets'                  => 'Скачать билеты',
+    'email'                             => 'Емейл',
+    'email_address'                     => 'электронная почта',
+    'event_already'                     => 'Это мероприятие :started.',
+    'event_already_ended'               => 'уже закончился',
+    'event_already_started'             => 'уже начался',
+    'event_dashboard'                   => 'Панель управления мероприятием',
+    'event_details'                     => 'Детали мероприятия',
+    'event_not_live'                    => 'Эта страница мероприятия недоступна для публики.',
+    'expiry_month'                      => 'Месяц окончания действия',
+    'expiry_year'                       => 'Год окончания действия',
+    'Facebook'                          => 'Facebook',
+    'first_name'                        => 'Имя',
+    'free'                              => 'БЕСПЛАТНО',
+    'grand_total'                       => 'Общая сумма',
+    'has_unlock_codes'                  => 'У вас есть код разблокировки?',
+    'inc_fees'                          => 'Стоимость бронирования',
+    'is_business'                       => 'Являетесь ли вы зарегистрированным налоговым предприятием?',
+    'last_name'                         => 'Фамилия',
+    'LOCATION'                          => 'МЕСТО',
+    'no_payment_required'               => 'Оплата не требуется, бесплатно.',
+    'offline_payment_instructions'      => 'Инструкции оплаты наличными',
+    'offline_payment_methods_available' => 'Возможные методы оплаты наличными',
+    'order_attendees'                   => 'Участники заказа',
+    'order_awaiting_payment'            => 'Этот заказ ожидает оплаты. Пожалуйста, ознакомьтесь с приведенными ниже инструкциями о том, как произвести оплату.',
+    'order_date'                        => 'Дата заказа',
+    'order_details'                     => 'Детали заказа',
+    'order_email'                       => 'Емайл заказа',
+    'order_items'                       => 'Элементы заказа',
+    'order_name'                        => 'Название заказа',
+    'order_reference'                   => 'Ссылка на заказ',
+    'order_summary'                     => 'Резюме заказа',
+    'organiser_dashboard'               => 'Панель управления организатора',
+    'pay_using_offline_methods'         => 'Оплатить наличными',
+    'payment_information'               => 'Информация об оплате',
+    'payment_instructions'              => 'Инструкции об оплате',
+    'presents'                          => 'представляет',
+    'price'                             => 'Цена',
+    'quantity_full'                     => 'Количество',
+    'reference'                         => 'Ссылка',
+    'refunded_amount'                   => 'Возвращенная сумма',
+    'register'                          => 'Регистрация',
+    'sales_have_ended'                  => 'Продажи закончились',
+    'sales_have_not_started'            => 'Продажи не начались',
+    'send_message_submit'               => 'Послать сообщение',
+    'share_event'                       => 'Поделиться мероприятием',
+    'sold_out'                          => 'Все билеты проданы',
+    'stripe_credit_or_debit_card'       => 'Кредитовая или дебитовая карта',
+    'sub_total'                         => 'Подитог',
+    'thank_you_for_your_order'          => 'Спасибо за ваш заказ!',
+    'ticket'                            => 'Билет',
+    'ticket_holder_information'         => 'Информация о владельце билета',
+    'ticket_holder_n'                   => 'Владелец билета :n детали',
+    'ticket_price'                      => 'Цена билета',
+    'tickets'                           => 'Билет(ы)',
+    'TICKETS'                           => 'БИЛЕТЫ',
+    'tickets_are_currently_unavailable' => 'Билеты в настоящее время недоступны',
+    'time'                              => 'Пожалуйста, обратите внимание, что у вас есть только :time чтобы завершить эту операцию до того, как ваше бронирование билетов будет отменено.',
+    'total'                             => 'Всего',
+    'Twitter'                           => 'Twitter',
+    'Whatsapp'                          => 'Whatsapp',
+    'your'                              => 'Ваш',
+    'your_email_address'                => 'Ваш e-mail адрес',
+    'your_information'                  => 'Ваша информация',
+    'your_message'                      => 'Ваше сообщение',
+    'your_name'                         => 'Ваше имя',
+];
diff --git a/resources/lang/ru/Public_ViewOrganiser.php b/resources/lang/ru/Public_ViewOrganiser.php
new file mode 100644
index 000000000..d03ca1af8
--- /dev/null
+++ b/resources/lang/ru/Public_ViewOrganiser.php
@@ -0,0 +1,17 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/16 08:41:39 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Public\\ViewOrganiser\\Partials\\EventListingPanel.blade.php
+  'information' => 'Информация',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Public\\ViewOrganiser\\Partials\\EventListingPanel.blade.php
+  'tickets' => 'Билеты',
+  //==================================== Translations ====================================//
+  'no_events' => 'Нет мероприятий :panel_title к просмотру.',
+  'organiser_dashboard' => 'Панель управления мероприятиями',
+  'past_events' => 'Прошедшие мероприятия',
+  'upcoming_events' => 'Предстоящие мероприятия',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Question.php b/resources/lang/ru/Question.php
new file mode 100644
index 000000000..c768ae799
--- /dev/null
+++ b/resources/lang/ru/Question.php
@@ -0,0 +1,24 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/18 16:23:42 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Partials\\SurveyBlankSlate.blade.php
+  'create_question' => 'Создать опрос',
+  //==================================== Translations ====================================//
+  'Q' => 'Q',
+  'add_another_option' => 'Добавить еще один вариант',
+  'answer' => 'Ответ',
+  'attendee_details' => 'Детали участника',
+  'make_this_a_required_question' => 'Сделать эту опцию обязательной',
+  'no_answers' => 'Извините, на этот вопрос пока нет ответов.',
+  'no_questions_yet' => 'Пока нет вопросов',
+  'no_questions_yet_text' => 'Здесь вы можете добавить вопросы, на которые посетителям будет предложено ответить в процессе регистрации.',
+  'question' => 'Вопрос',
+  'question_options' => 'Варианты вопросов',
+  'question_placeholder' => 'например: Ваши предпочтения ?',
+  'question_type' => 'Тип вопроса',
+  'require_this_question_for_ticket(s)' => 'Требовать этот вопрос для билета(ов)',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Social.php b/resources/lang/ru/Social.php
new file mode 100644
index 000000000..4585da510
--- /dev/null
+++ b/resources/lang/ru/Social.php
@@ -0,0 +1,21 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/23 14:17:14 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Public\\ViewOrganiser\\Partials\\OrganiserSocialSection.blade.php
+  'pinterest' => 'Pinterest',
+  //==================================== Translations ====================================//
+  'email' => 'Email',
+  'facebook' => 'Facebook',
+  'g+' => 'Google+',
+  'linkedin' => 'LinkedIn',
+  'share_buttons_to_show' => 'Какие кнопки соцсетей показывать',
+  'social_settings' => 'Настройки соцсетей',
+  'social_share_text' => 'Текст для социальных сетей',
+  'social_share_text_help' => 'Это текст, который будет опубликован по умолчанию, когда пользователь поделится вашим событием в социальных сетях',
+  'twitter' => 'Twitter',
+  'whatsapp' => 'WhatsApp',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Surveys.php b/resources/lang/ru/Surveys.php
new file mode 100644
index 000000000..48f5768f3
--- /dev/null
+++ b/resources/lang/ru/Surveys.php
@@ -0,0 +1,18 @@
+<?php
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Surveys.blade.php
+  'question_delete' => 'Удалить вопрос',
+  //==================================== Translations ====================================//
+  'add_question' => 'Добавить вопрос',
+  'answers' => 'Ответы',
+  'event_surveys' => 'Опросы мероприятий',
+  'export_answers' => 'Экспортировать ответы',
+  'num_responses' => '# Ответов',
+  'question_delete_title' => 'Все ответы также будут удалены. Если вы хотите сохранить ответы участников, вам следует деактивировать вопрос.',
+  'question_title' => 'Заголовок вопроса',
+  'required' => 'Обязателен',
+  'status' => 'Статус',
+  'tickets_list' => 'Билеты: :list',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Ticket.php b/resources/lang/ru/Ticket.php
new file mode 100644
index 000000000..de7bae121
--- /dev/null
+++ b/resources/lang/ru/Ticket.php
@@ -0,0 +1,54 @@
+<?php
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Tickets.blade.php
+  'on_sale' => 'Продается',
+  'id' => 'ID билета',
+  //==================================== Translations ====================================//
+  'attendee_ref' => 'Ссылка участника',
+  'coupon_codes' => 'Коды купона',
+  'create_ticket' => 'Создать билет',
+  'demo_attendee_ref' => '#YLY9U73-1',
+  'demo_end_date_time' => 'Март 18-е 5:08PM',
+  'demo_event' => 'Демо мероприятие',
+  'demo_name' => 'Новые гибриды',
+  'demo_order_ref' => '#YLY9U73',
+  'demo_organiser' => 'Демо Организатор',
+  'demo_price' => '€XX.XX',
+  'demo_start_date_time' => 'Март 18-е 4:08PM',
+  'demo_ticket_type' => 'Общий вход',
+  'demo_venue' => 'Демо локация',
+  'doesnt_account_for_refunds' => 'Не учитывает возврат.',
+  'end_date_time' => 'Дата/время окончания',
+  'event' => 'Мероприятие',
+  'event_tickets' => 'Билеты мероприятия',
+  'footer' => 'Входной билет теряет свою силу с момента покидания места проведения мероприятия, повторный вход во время мероприятия не разрешается.',
+  'n_tickets' => ':num билетов',
+  'name' => 'Имя',
+  'no_tickets_yet' => 'Пока нет билетов',
+  'no_tickets_yet_text' => 'Создайте свой первый билет, нажав на кнопку ниже.',
+  'order_ref' => 'Ссылка на заказ',
+  'organiser' => 'Организатор',
+  'pause' => 'Пауза',
+  'price' => 'Цена',
+  'questions' => 'Вопросы',
+  'remaining' => 'Осталось',
+  'resume' => 'Резюме',
+  'revenue' => 'Доход (без налогов)',
+  'search_tickets' => 'искать билеты...',
+  'show_1d_barcode' => 'Показывать 1D баркод на билетах',
+  'sold' => 'Продано',
+  'start_date_time' => 'Дата/время начала',
+  'this_ticket_is_hidden' => 'Этот билет скрыт',
+  'ticket_background_color' => 'Цвет фона билета',
+  'ticket_border_color' => 'Цвет рамки билета',
+  'ticket_design' => 'Дизайн билета',
+  'access_codes' => 'Промо-коды',
+  'ticket_preview' => 'Предварительный просмотр билета',
+  'ticket_sales_paused' => 'Продажи приостановлены',
+  'ticket_sub_text_color' => 'Цвет подтекста билета',
+  'ticket_text_color' => 'Цвет текста билета',
+  'ticket_type' => 'Категория билета',
+  'venue' => 'Место проведения',
+);
diff --git a/resources/lang/ru/Top.php b/resources/lang/ru/Top.php
new file mode 100644
index 000000000..008aee883
--- /dev/null
+++ b/resources/lang/ru/Top.php
@@ -0,0 +1,18 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/25 10:00:32 
+*************************************************************************/
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Shared\\Layouts\\Master.blade.php
+  'account_settings' => 'Настройки учетной записи',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Shared\\Layouts\\Master.blade.php
+  'create_organiser' => 'Создать организатора',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Shared\\Layouts\\Master.blade.php
+  'feedback_bug_report' => 'Отзывы / Сообщения об ошибках',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Shared\\Layouts\\Master.blade.php
+  'my_profile' => 'Мой профиль',
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\Shared\\Layouts\\Master.blade.php
+  'sign_out' => 'Выйти из системы',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/User.php b/resources/lang/ru/User.php
new file mode 100644
index 000000000..d22f4e398
--- /dev/null
+++ b/resources/lang/ru/User.php
@@ -0,0 +1,30 @@
+<?php
+
+return array (
+  'already_have_account' => 'У вас уже есть аккаунт? <a class="semibold" href=":url">Войти</a>',
+  'after_welcome' => 'Прежде чем продолжить, пожалуйста, обновите свою учетную запись, указав свое имя и новый пароль.',
+  'change_password' => 'Изменить пароль',
+  'confirm_new_password' => 'Подтвердить новый пароль',
+  'dont_have_account_button' => 'У вас нет аккаунта? <a class="semibold" href=":url">Зарегистрироваться</a>',
+  'email' => 'Емайл',
+  'first_name' => 'Имя',
+  'forgot_password' => 'Восстановление забытого пароля',
+  'forgot_password?' => 'Забыли свой пароль?',
+  'hide_change_password' => 'Скрыть изменение пароля',
+  'last_name' => 'Фамилия',
+  'login' => 'Логин',
+  'login_fail_msg' => 'Пожалуйста, проверьте свои данные и повторите попытку.',
+  'my_profile' => 'Мой профиль',
+  'new_password' => 'Новый пароль',
+  'old_password' => 'Старый пароль',
+  'password' => 'Пароль',
+  'password_already_sent' => 'Письмо со ссылкой для сброса пароля уже было отправлено на вашу электронную почту.',
+  'reset_input_errors' => 'Возникли некоторые проблемы с введенными данными.',
+  'reset_password' => 'Сбросить пароль',
+  'reset_password_success' => 'Письмо со ссылкой для сброса пароля было отправлено на вашу электронную почту.',
+  'sign_up' => 'Зарегистрироваться',
+  'sign_up_first_run' => 'Вы почти у цели. Создайте учетную запись пользователя, и вы готовы к работе.',
+  'terms_and_conditions' => '&nbsp;&nbsp;Я согласен с <a target="_blank" href=":url"> Правилами и условиями </a>',
+  'welcome_to_app' => 'Добро пожаловать в :app!',
+  'your_email' => 'Ваш емайл',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/Widgets.php b/resources/lang/ru/Widgets.php
new file mode 100644
index 000000000..39be991c2
--- /dev/null
+++ b/resources/lang/ru/Widgets.php
@@ -0,0 +1,12 @@
+<?php
+
+return array (
+  //============================== New strings to translate ==============================//
+  // Defined in file C:\\wamp\\www\\attendize\\resources\\views\\ManageEvent\\Widgets.blade.php
+  'embed_preview' => 'Предварительный просмотр',
+  //==================================== Translations ====================================//
+  'event_widgets' => 'Виджеты мероприятия',
+  'html_embed_code' => 'HTML код для встраивания в сайт',
+  'instructions' => 'Инструкции',
+  'instructions_text' => 'Просто скопируйте и вставьте предоставленный HTML на свой сайт в то место, где вы хотите, чтобы появился виджет.',
+);
\ No newline at end of file
diff --git a/resources/lang/ru/auth.php b/resources/lang/ru/auth.php
new file mode 100644
index 000000000..19c470381
--- /dev/null
+++ b/resources/lang/ru/auth.php
@@ -0,0 +1,19 @@
+<?php
+
+return [
+
+    /*
+    |--------------------------------------------------------------------------
+    | Authentication Language Lines
+    |--------------------------------------------------------------------------
+    |
+    | The following language lines are used during authentication for various
+    | messages that we need to display to the user. You are free to modify
+    | these language lines according to your application's requirements.
+    |
+    */
+
+    'failed' => 'Эти данные не соответствуют нашим записям.',
+    'throttle' => 'Слишком много попыток входа в систему. Пожалуйста, повторите попытку через :seconds .',
+
+];
diff --git a/resources/lang/ru/basic.php b/resources/lang/ru/basic.php
new file mode 100644
index 000000000..b9017f76c
--- /dev/null
+++ b/resources/lang/ru/basic.php
@@ -0,0 +1,67 @@
+<?php
+/*************************************************************************
+ Generated via "php artisan localization:missing" at 2018/04/26 11:05:24 
+*************************************************************************/
+
+return array (
+  //==================================== Translations ====================================//
+  'apply' => 'Применить',
+  'action' => 'Действие',
+  'affiliates' => 'Партнеры',
+  'attendees' => 'Участники',
+  'back_to_login' => 'Вернуться к входу в систему',
+  'back_to_page' => 'Вернуться к :page',
+  'back_to_orders' => 'Вернуться к заказам',
+  'cancel' => 'Отменить',
+  'customize' => 'Настроить',
+  'dashboard' => 'Панель управления',
+  'days' => 'дней',
+  'disable' => 'Отключить',
+  'disabled' => 'Выключен',
+  'drag_to_reorder' => 'Перетащите, чтобы изменить порядок',
+  'edit' => 'Редактировать',
+  'enable' => 'Включить',
+  'enabled' => 'Включен',
+  'error_404' => 'Похоже, что страница, которую вы ищете, больше не существует или переместилась.',
+  'event_dashboard' => 'Панель управления мероприятиями',
+  'event_menu' => 'Меню мероприятий',
+  'event_page_design' => 'Дизайн страницы мероприятия',
+  'export' => 'Экспорт',
+  'general' => 'Общее',
+  'hello' => 'Привет',
+  'hours' => 'часов',
+  'main_menu' => 'Главное меню',
+  'manage' => 'Управлять',
+  'message' => 'Сообщение',
+  'minutes' => 'минут',
+  'months_short' => '|Янв|Фев|Мар|Апр|Май|Июн|Июл|Авг|Снт|Окт|Ноя|Дек|',
+  'no' => 'Нет',
+  'order_form' => 'Форма заказа',
+  'orders' => 'Заказы',
+  'promote' => 'Продвигать',
+  'save_changes' => 'Сохранить изменения',
+  'save_details' => 'Сохранить детали',
+  'service_fees' => 'Стоимость услуг',
+  'social' => 'соцсети',
+  'submit' => 'Отправить',
+  'success' => 'Успех',
+  'ticket_design' => 'Дизайн билета',
+  'access_codes' => 'Промо коды',
+  'thank_you' => 'Спасибо',
+  'tickets' => 'Билеты',
+  'TOP' => 'TOP',
+  'total' => 'всего',
+  'whoops' => 'Ой!',
+  'yes' => 'Да',
+  'no' => 'Нет',
+  /*
+   * Lines below will turn obsolete in localization helper, it is declared in app/Helpers/macros.
+   * If you run it, it will break file input fields.
+  */
+  'upload' => 'Закачать',
+  'browse' => 'Обзор',
+  //================================== Obsolete strings ==================================//
+  'LLH:obsolete' => [
+    'months_long' => 'January|February|March|April|May|June|July|August|September|October|November|December',
+  ],
+);
\ No newline at end of file
diff --git a/resources/lang/ru/error.php b/resources/lang/ru/error.php
new file mode 100644
index 000000000..0196ad90e
--- /dev/null
+++ b/resources/lang/ru/error.php
@@ -0,0 +1,7 @@
+<?php
+
+return [
+    'back_soon' => 'Мы вскоре вернемся',
+    'back_soon_description'     => 'Мы в настоящее время занимаемся улучшением нашего сайта.',
+
+];
diff --git a/resources/lang/ru/messages.php b/resources/lang/ru/messages.php
new file mode 100644
index 000000000..badb035df
--- /dev/null
+++ b/resources/lang/ru/messages.php
@@ -0,0 +1,107 @@
+<?php
+
+return [
+
+    /*
+    |--------------------------------------------------------------------------
+    | Validation Language Lines
+    |--------------------------------------------------------------------------
+    |
+    | The following language lines contain the default error messages used by
+    | the validator class. Some of these rules have multiple versions such
+    | as the size rules. Feel free to tweak each of these messages here.
+    |
+    */
+
+    'accepted'             => ':attribute должен быть принят.',
+    'active_url'           => ':attribute содержит некорректный URL.',
+    'after'                => ':attribute должен быть датой после :date.',
+    'alpha'                => ':attribute может содержать только буквы.',
+    'alpha_dash'           => ':attribute может содержать только буквы, цифры и символ подчеркивания.',
+    'alpha_num'            => ':attribute может содержать только буквы и цифры.',
+    'array'                => ':attribute должен быть массивом',
+    'before'               => ':attribute должен быть датой до :date.',
+    'between'              => [
+        'numeric' => ':attribute должен быть между :min и :max.',
+        'file'    => ':attribute должен быть между :min и :max килобайт.',
+        'string'  => ':attribute должен быть между :min и :max символов.',
+        'array'   => ':attribute должен быть между :min и :max элементов.',
+    ],
+    'boolean'              => ':attribute должен быть в значении true или false.',
+    'confirmed'            => ':attribute не совпадает.',
+    'date'                 => ':attribute некорректная дата.',
+    'date_format'          => ':attribute должен быть отформатирован как :format.',
+    'different'            => ':attribute и :other должны различаться.',
+    'digits'               => ':attribute должны быть :digits цифр.',
+    'digits_between'       => ':attribute должен быть между :min and :max цифрами.',
+    'email'                => ':attribute должен быть правильным email адресом.',
+    'filled'               => ':attribute поле обязательно.',
+    'exists'               => 'выбранное значение :attribute неверно.',
+    'image'                => ':attribute должен быть изображением.',
+    'in'                   => 'Выбранный атрибут :attribute неверен.',
+    'integer'              => ':attribute должен быть целым числом.',
+    'ip'                   => ':attribute должен быть правильным IP адресом.',
+    'max'                  => [
+        'numeric' => ':attribute не может быть больше чем :max.',
+        'file'    => ':attribute не может быть больше чем :max килобайт.',
+        'string'  => ':attribute не может быть больше чем :max символов.',
+        'array'   => ':attribute не может быть больше чем :max элементов.',
+    ],
+    'mimes'                => ':attribute должен быть файлом типа: :values.',
+    'min'                  => [
+        'numeric' => ':attribute must be at least :min.',
+        'file'    => ':attribute must be at least :min kilobytes.',
+        'string'  => ':attribute must be at least :min characters.',
+        'array'   => ':attribute must have at least :min items.',
+    ],
+    'not_in'               => 'выбранное значение :attribute неверно.',
+    'numeric'              => ':attribute должен быть числом.',
+    'regex'                => ':attribute формат неверен.',
+    'required'             => ':attribute поле обязательно.',
+    'required_if'          => ':attribute поле обязательно, когда :other содержит :value.',
+    'required_with'        => ':attribute поле обязательно, когда :values заполнено.',
+    'required_with_all'    => ':attribute поле обязательно, когда :values заполнено.',
+    'required_without'     => ':attribute поле обязательно, когда :values не заполнено.',
+    'required_without_all' => ':attribute поле обязательно, когда ни одно из :values не заполнены.',
+    'same'                 => ':attribute и :other должны совпадать.',
+    'size'                 => [
+        'numeric' => ':attribute должен быть размера :size.',
+        'file'    => ':attribute должен быть :size килобайт.',
+        'string'  => ':attribute must be :size символов.',
+        'array'   => ':attribute должен содержать :size элементов.',
+    ],
+    'unique'               => ':attribute уже был введен ранее.',
+    'url'                  => ':attribute неверный формат.',
+    'timezone'             => ':attribute должен содержать корректную временную зону.',
+
+    /*
+    |--------------------------------------------------------------------------
+    | Custom Validation Language Lines
+    |--------------------------------------------------------------------------
+    |
+    | Here you may specify custom validation messages for attributes using the
+    | convention "attribute.rule" to name the lines. This makes it quick to
+    | specify a specific custom language line for a given attribute rule.
+    |
+    */
+
+    'custom' => [
+        'terms_agreed' => [
+            'required' => 'Пожалуйста, согласитесь с нашими Условиями предоставления услуг.'
+        ]
+    ],
+
+    /*
+    |--------------------------------------------------------------------------
+    | Custom Validation Attributes
+    |--------------------------------------------------------------------------
+    |
+    | The following language lines are used to swap attribute place-holders
+    | with something more reader friendly such as E-Mail Address instead
+    | of "email". This simply helps us make messages a little cleaner.
+    |
+    */
+
+    'attributes' => [],
+
+];
diff --git a/resources/lang/ru/pagination.php b/resources/lang/ru/pagination.php
new file mode 100644
index 000000000..4dd8db1eb
--- /dev/null
+++ b/resources/lang/ru/pagination.php
@@ -0,0 +1,19 @@
+<?php
+
+return [
+
+    /*
+    |--------------------------------------------------------------------------
+    | Pagination Language Lines
+    |--------------------------------------------------------------------------
+    |
+    | The following language lines are used by the paginator library to build
+    | the simple pagination links. You are free to change them to anything
+    | you want to customize your views to better match your application.
+    |
+    */
+
+    'previous' => '&laquo; Предыдущая',
+    'next' => 'Следующая &raquo;',
+
+];
diff --git a/resources/lang/ru/passwords.php b/resources/lang/ru/passwords.php
new file mode 100644
index 000000000..fe61ddf02
--- /dev/null
+++ b/resources/lang/ru/passwords.php
@@ -0,0 +1,23 @@
+<?php
+
+return [
+
+    /*
+    |--------------------------------------------------------------------------
+    | Password Reset Language Lines
+    |--------------------------------------------------------------------------
+    |
+    | The following language lines are the default lines which match reasons
+    | that are given by the password broker for a password update attempt
+    | has failed, such as for an invalid token or invalid new password.
+    |
+    */
+
+    'reset' => 'Ваш пароль был сброшен!',
+    'sent' => 'Мы отправили вам ссылку для восстановления пароля по электронной почте!',
+    'token' => 'Эта ссылка для сброса пароля недействительна.',
+    'user' => "Мы не можем найти пользователя с таким адресом электронной почты.",
+    'timeout' => 'Пожалуйста, подождите перед повторной попыткой.',
+    'throttled' => 'Пожалуйста, подождите перед повторной попыткой.',
+
+];
diff --git a/resources/lang/ru/validation.php b/resources/lang/ru/validation.php
new file mode 100644
index 000000000..8f5002821
--- /dev/null
+++ b/resources/lang/ru/validation.php
@@ -0,0 +1,151 @@
+<?php
+
+return [
+
+    /*
+    |--------------------------------------------------------------------------
+    | Validation Language Lines
+    |--------------------------------------------------------------------------
+    |
+    | The following language lines contain the default error messages used by
+    | the validator class. Some of these rules have multiple versions such
+    | as the size rules. Feel free to tweak each of these messages here.
+    |
+    */
+
+    'accepted'             => ':attribute должен быть принят.',
+    'active_url'           => ':attribute содержит некорректный URL.',
+    'after'                => ':attribute должен быть датой после :date.',
+    'after_or_equal'       => ':attribute должен быть датой после или равной :date.',
+    'alpha'                => ':attribute может содержать только буквы.',
+    'alpha_dash'           => ':attribute может содержать только буквы, цифры и символ подчеркивания.',
+    'alpha_num'            => ':attribute может содержать только буквы и цифры.',
+    'array'                => ':attribute должен быть массивом',
+    'before'               => ':attribute должен быть датой до :date.',
+    'before_or_equal'      => ':attribute должен быть датой до или равной :date.',
+    'between'              => [
+        'numeric' => ':attribute должен быть между :min и :max.',
+        'file'    => ':attribute должен быть между :min и :max килобайт.',
+        'string'  => ':attribute должен быть между :min и :max символов.',
+        'array'   => ':attribute должен быть между :min и :max элементов.',
+    ],
+    'boolean'              => ':attribute должен быть в значении true или false.',
+    'confirmed'            => ':attribute не совпадает.',
+    'date'                 => ':attribute некорректная дата.',
+    'date_equals'          => 'The :attribute должен быть датой, равной :date.',
+    'date_format'          => ':attribute неверный формат даны, нужен :format.',
+    'different'            => ':attribute и :other должны различаться.',
+    'digits'               => ':attribute должны быть :digits цифр.',
+    'digits_between'       => ':attribute должен быть между :min and :max цифрами.',
+    'dimensions'           => ':attribute неправильный размер изображения.',
+    'distinct'             => ':attribute поле имеет дублирующее значение.',
+    'email'                => ':attribute должен быть правильным email адресом.',
+    'ends_with'            => ':attribute должен заканчиваться следующим: :values',
+    'exists'               => 'выбранное значение :attribute неверно.',
+    'file'                 => ':attribute должен быть файлом.',
+    'filled'               => ':attribute поле обязательно.',
+    'gt'                   => [
+        'numeric' => ':attribute должен быть больше чем :value.',
+        'file'    => ':attribute должен быть больше чем :value килобайт.',
+        'string'  => ':attribute должен быть больше чем :value символов.',
+        'array'   => ':attribute должен быть больше чем :value элементов.',
+    ],
+    'gte'                  => [
+        'numeric' => 'The :attribute должен быть больше или равно :value.',
+        'file'    => 'The :attribute должен быть больше или равно :value килобайт.',
+        'string'  => 'The :attribute должен быть больше или равно :value символов.',
+        'array'   => 'The :attribute должен быть :value элементов или больше.',
+    ],
+    'image'                => ':attribute должен быть изображением.',
+    'in'                   => 'выбранный :attribute неверен.',
+    'in_array'             => ':attribute поле не существует в :other.',
+    'integer'              => ':attribute должен быть целым числом.',
+    'ip'                   => ':attribute должен быть корректным IP адресом.',
+    'ipv4'                 => ':attribute должен быть корректным IPv4 адресом.',
+    'ipv6'                 => ':attribute должен быть корректным IPv6 адресом.',
+    'json'                 => ':attribute должен быть корректной JSON строкой',
+    'lt'                   => [
+        'numeric' => ':attribute должен быть меньше чем :value.',
+        'file'    => ':attribute должен быть меньше чем :value килобайт.',
+        'string'  => ':attribute должен быть меньше чем :value символов.',
+        'array'   => ':attribute  должен быть меньше чем :value элементов.',
+    ],
+    'lte'                  => [
+        'numeric' => 'The :attribute должен быть меньше или равен :value.',
+        'file'    => 'The :attribute должен быть меньше или равен :value килобайт.',
+        'string'  => 'The :attribute должен быть меньше или равен :value символов.',
+        'array'   => 'The :attribute должен быть меньше или равен :value элементов.',
+    ],
+    'max'                  => [
+        'numeric' => ':attribute не может быть больше чем :max.',
+        'file'    => ':attribute не может быть больше чем :max килобайт.',
+        'string'  => ':attribute не может быть больше чем :max символов.',
+        'array'   => ':attribute не может быть больше чем :max элементов.',
+    ],
+    'mimes'                => 'The :attribute должен быть файлом типа: :values.',
+    'mimetypes'            => 'The :attribute должен быть файлом типа: :values.',
+    'min'                  => [
+        'numeric' => ':attribute должен быть как минимум :min.',
+        'file'    => ':attribute должен быть как минимум :min килобайт.',
+        'string'  => ':attribute должен быть как минимум :min символов.',
+        'array'   => ':attribute должен быть как минимум :min элементов.',
+    ],
+    'not_in'               => 'Выбранное значение :attribute неверно.',
+    'not_regex'            => 'Формат :attribute неверен.',
+    'numeric'              => ':attribute должен быть числом.',
+    'password'             => 'Пароль неправильный.',
+    'present'              => ':attribute поле должно быть заполнено.',
+    'regex'                => ':attribute формат неверен.',
+    'required'             => ':attribute обязателен.',
+    'required_if'          => ':attribute поле обязательно если :other содержит :value.',
+    'required_unless'      => ':attribute поле обязательно если :other не содержит :values.',
+    'required_with'        => ':attribute поле обязательно, когда :values введено.',
+    'required_with_all'    => ':attribute поле обязательно, когда :values введены.',
+    'required_without'     => ':attribute поле обязательно, когда :values не введены.',
+    'required_without_all' => ':attribute поле обязательно, когда ни одно из :values не введены.',
+    'same'                 => ':attribute и :other должны совпадать.',
+    'size'                 => [
+        'numeric' => ':attribute должен иметь размер :size.',
+        'file'    => ':attribute должен иметь размер :size килобайт.',
+        'string'  => ':attribute должен иметь размер :size символов.',
+        'array'   => ':attribute должен содержать :size элементов.',
+    ],
+    'starts_with'          => ':attribute должен начинаться одним из следующего: :values',
+    'string'               => ':attribute должен быть строкой.',
+    'timezone'             => ':attribute должен быть корректной временной зоной.',
+    'unique'               => ':attribute неуникален.',
+    'uploaded'             => ':attribute ошибка закачки.',
+    'url'                  => ':attribute форман неправильный.',
+    'uuid'                 => ':attribute формат UUID неправильный.',
+
+    /*
+    |--------------------------------------------------------------------------
+    | Custom Validation Language Lines
+    |--------------------------------------------------------------------------
+    |
+    | Here you may specify custom validation messages for attributes using the
+    | convention "attribute.rule" to name the lines. This makes it quick to
+    | specify a specific custom language line for a given attribute rule.
+    |
+    */
+
+    'custom' => [
+        'terms_agreed' => [
+            'required' => 'Пожалуйста, согласитесь с нашими Условиями предоставления услуг.'
+        ]
+    ],
+
+    /*
+    |--------------------------------------------------------------------------
+    | Custom Validation Attributes
+    |--------------------------------------------------------------------------
+    |
+    | The following language lines are used to swap our attribute placeholder
+    | with something more reader friendly such as "E-Mail Address" instead
+    | of "email". This simply helps us make our message more expressive.
+    |
+    */
+
+    'attributes' => [],
+
+];
diff --git a/resources/views/Emails/MessageToAttendees.blade.php b/resources/views/Emails/MessageToAttendees.blade.php
index 0f0a84122..bfb4d843e 100644
--- a/resources/views/Emails/MessageToAttendees.blade.php
+++ b/resources/views/Emails/MessageToAttendees.blade.php
@@ -2,15 +2,15 @@
 
 @section('message_content')
 
-<p>Hi there,</p>
-<p>You have received a message from <b>{{ $event->organiser->name }}</b> in relation to the event <b>{{ $event->title }}</b>.</p>
+<p>@lang("basic.hello") {{ $attendee->first_name }},</p>
+
+<p>@lang("Email.message_received_from_organiser", ["organiser_name"=>$event->organiser->name, "event_title"=>$event->title])</p>
+
 <p style="padding: 10px; margin:10px; border: 1px solid #f3f3f3;">
     {!! nl2br($content) !!}
 </p>
 
-<p>
-    You can contact <b>{{ $event->organiser->name }}</b> directly at <a href='mailto:{{ $event->organiser->email }}'>{{ $event->organiser->email }}</a>, or by replying to this email.
-</p>
+<p>@lang("Email.contact_organiser", ["organiser_name"=>$event->organiser->name, "organiser_email"=>$event->organiser->email])</p>
 @stop
 
 @section('footer')
diff --git a/resources/views/Emails/OrderAttendeeTicket.blade.php b/resources/views/Emails/OrderAttendeeTicket.blade.php
index 0599260a5..34888eac9 100644
--- a/resources/views/Emails/OrderAttendeeTicket.blade.php
+++ b/resources/views/Emails/OrderAttendeeTicket.blade.php
@@ -1,15 +1,9 @@
-@extends('en.Emails.Layouts.Master')
+@extends('Emails.Layouts.Master')
 
 @section('message_content')
 
-Hi {{{$attendee->first_name}}},<br><br>
+@lang("basic.hello") {{ $attendee->first_name }},<br><br>
 
-We've attached your tickets to this email.<br><br>
-
-You can view your order info and download your tickets at <a href="{{route('showOrderDetails', ['order_reference' => $attendee->order->order_reference])}}">{{route('showOrderDetails', ['order_reference' => $attendee->order->order_reference])}}</a> anytime.<br><br>
-
-Your order reference is <b>{{$attendee->order->order_reference}}</b>.<br>
-
-Thank you<br>
+{{ @trans("Order_Emails.tickets_attached") }} <a href="{{route('showOrderDetails', ['order_reference' => $attendee->order->order_reference])}}">{{route('showOrderDetails', ['order_reference' => $attendee->order->order_reference])}}</a>.
 
 @stop
diff --git a/resources/views/Public/ViewEvent/Partials/OfflinePayments.blade.php b/resources/views/Public/ViewEvent/Partials/OfflinePayments.blade.php
index cde01e326..9cf3a67f0 100644
--- a/resources/views/Public/ViewEvent/Partials/OfflinePayments.blade.php
+++ b/resources/views/Public/ViewEvent/Partials/OfflinePayments.blade.php
@@ -19,7 +19,7 @@
     <div class="well">
         {!! md_to_html($event->offline_payment_instructions) !!}
     </div>
-    <input class="btn btn-lg btn-success card-submit" style="width:100%;" type="submit" value="Complete Order">
+    <input class="btn btn-lg btn-success card-submit" style="width:100%;" type="submit" value="@lang("Public_ViewEvent.complete_order")">
 </div>
 {!! Form::close() !!}
 <style>
diff --git a/resources/views/Shared/Layouts/Master.blade.php b/resources/views/Shared/Layouts/Master.blade.php
index 861cec6aa..d92679fe8 100644
--- a/resources/views/Shared/Layouts/Master.blade.php
+++ b/resources/views/Shared/Layouts/Master.blade.php
@@ -30,6 +30,12 @@
     {!! Html::style(config('attendize.cdn_url_static_assets').'/assets/stylesheet/application.css') !!}
     <!--/Style-->
 
+    <!--rtl-style-->
+    @if (config('app.locale_dir') =='rtl')
+        {!! Html::style(config('attendize.cdn_url_static_assets').'/assets/stylesheet/application-rtl.css') !!}    
+    @endif
+    <!--/rtl-style-->
+
     @yield('head')
 </head>
 <body class="attendize">
diff --git a/resources/views/de/Emails/Auth/Reminder.blade.php b/resources/views/de/Emails/Auth/Reminder.blade.php
index 5521b41c4..82c1c1d31 100644
--- a/resources/views/de/Emails/Auth/Reminder.blade.php
+++ b/resources/views/de/Emails/Auth/Reminder.blade.php
@@ -8,4 +8,4 @@
         Danke,<br>
        	Attendize Team
     </div>
-@stop
\ No newline at end of file
+@stop
diff --git a/resources/views/de/Emails/inviteUser.blade.php b/resources/views/de/Emails/inviteUser.blade.php
index e423d23fc..caad4c953 100644
--- a/resources/views/de/Emails/inviteUser.blade.php
+++ b/resources/views/de/Emails/inviteUser.blade.php
@@ -9,7 +9,7 @@
 
 <p>
     So kannst Du dich anmelden:<br><br>
-    
+
     Benutzername: <b>{{$user->email}}</b> <br>
     Passwort: <b>{{$temp_password}}</b>
 </p>
diff --git a/resources/views/de/Emails/notifyRefundedAttendee.blade.php b/resources/views/de/Emails/notifyRefundedAttendee.blade.php
index c503cb136..fdf8582ce 100644
--- a/resources/views/de/Emails/notifyRefundedAttendee.blade.php
+++ b/resources/views/de/Emails/notifyRefundedAttendee.blade.php
@@ -15,4 +15,4 @@
 
 @section('footer')
 
-@stop
\ No newline at end of file
+@stop
diff --git a/resources/views/de/Installer/Partials/Footer.blade.php b/resources/views/de/Installer/Partials/Footer.blade.php
index 04874e23b..28e812b32 100644
--- a/resources/views/de/Installer/Partials/Footer.blade.php
+++ b/resources/views/de/Installer/Partials/Footer.blade.php
@@ -15,4 +15,4 @@
     <p>
         Bitte Lesen Sie die  <a style="text-decoration: underline;" target="_blank" href="http://www.attendize.com/license.html">Lizenz</a> bevor Sie Attendize installieren.
     </p>
-</div>
\ No newline at end of file
+</div>
diff --git a/resources/views/ru/Emails/Auth/Reminder.blade.php b/resources/views/ru/Emails/Auth/Reminder.blade.php
new file mode 100644
index 000000000..5b542226c
--- /dev/null
+++ b/resources/views/ru/Emails/Auth/Reminder.blade.php
@@ -0,0 +1,11 @@
+@extends('en.Emails.Layouts.Master')
+
+@section('message_content')
+    <div>
+        Привет,<br><br>
+        Чтобы сбросить пароль, нажмите на <a href='{{ route('password.reset', ['token' => $token]) }}'>эту ссылку</a>.
+        <br><br><br>
+        Спасибо,<br>
+        Команда Attendize
+    </div>
+@stop
\ No newline at end of file
diff --git a/resources/views/ru/Emails/ConfirmEmail.blade.php b/resources/views/ru/Emails/ConfirmEmail.blade.php
new file mode 100644
index 000000000..5f3cd3299
--- /dev/null
+++ b/resources/views/ru/Emails/ConfirmEmail.blade.php
@@ -0,0 +1,27 @@
+@extends('en.Emails.Layouts.Master')
+
+@section('message_content')
+
+<p>Привет {{$first_name}}</p>
+<p>
+    Благодарим вас за регистрацию на {{ config('attendize.app_name') }}. Мы будем рады видеть вас у нас в гостях.
+</p>
+
+<p>
+    Вы можете создать свое первое мероприятие и подтвердить свою электронную почту, для этого нажмите на <a href='{{route('confirmEmail', ['confirmation_code' => $confirmation_code])}}'>эту ссылку</a>.
+</p>
+
+<br><br>
+<p>
+    Если у вас есть какие-либо вопросы, отзывы или предложения, не стесняйтесь отвечать на это письмо.
+</p>
+<p>
+    Спасибо
+</p>
+
+@stop
+
+@section('footer')
+
+
+@stop
diff --git a/resources/views/ru/Emails/FailedQueue.blade.php b/resources/views/ru/Emails/FailedQueue.blade.php
new file mode 100644
index 000000000..d898b887c
--- /dev/null
+++ b/resources/views/ru/Emails/FailedQueue.blade.php
@@ -0,0 +1,8 @@
+<pre>
+    {{json_encode($data)}}
+</pre>
+<hr>
+<pre>
+    {{json_encode($job)}}
+</pre>
+
diff --git a/resources/views/ru/Emails/Layouts/Master.blade.php b/resources/views/ru/Emails/Layouts/Master.blade.php
new file mode 100644
index 000000000..7c1e88223
--- /dev/null
+++ b/resources/views/ru/Emails/Layouts/Master.blade.php
@@ -0,0 +1,71 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml">
+<head>
+    <meta name="viewport" content="width=device-width" />
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+    <title>
+        @section('subject')
+            Attendize.com Email
+        @show
+    </title>
+</head>
+
+<body style="background-color: #f7f7f7;margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;-webkit-font-smoothing: antialiased;-webkit-text-size-adjust: none;width: 100% !important;height: 100%">
+
+<!-- body -->
+<table class="body-wrap" style="background-color: #f7f7f7;margin: 0;padding: 20px;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;width: 100%">
+    <tr style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+        <td style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6"></td>
+        <td class="container" bgcolor="#FFFFFF" style="margin: 0 auto !important;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;border: 1px solid #f0f0f0;display: block !important;max-width: 600px !important;clear: both !important">
+
+            <!-- content -->
+            <div class="content" style="color: #888;margin: 0 auto;padding: 20px;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;max-width: 600px;display: block">
+                <table style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;width: 100%">
+                    <tr style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+                        <td style="text-align: center;padding: 10px;margin: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+                            <img style="max-width: 110px;margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6" src="{{url(asset(isset($email_logo) ? $email_logo : 'assets/images/logo-dark.png'))}}" />
+                        </td>
+                    </tr>
+                    <tr style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+                        <td style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+                            @yield('message_content')
+                        </td>
+                    </tr>
+                </table>
+            </div>
+            <!-- /content -->
+
+        </td>
+        <td style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6"></td>
+    </tr>
+</table>
+<!-- /body -->
+
+<!-- footer -->
+<table class="footer-wrap" style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;width: 100%;clear: both !important">
+    <tr style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+        <td style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6"></td>
+        <td class="container" style="margin: 0 auto !important;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;display: block !important;max-width: 600px !important;clear: both !important">
+
+            <!-- content -->
+            <div class="content" style="margin: 0 auto;padding: 20px;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;max-width: 600px;display: block">
+                <table style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;width: 100%">
+                    <tr style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+                        <td align="center" style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6">
+                            {{--Attendize is provided free of charge on the condition the below hyperlink is left in place.--}}
+                            {{--See https://www.attendize.com/license.html for more information.--}}
+                            <p style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 14px;line-height: 1.6;color: #666;margin-bottom: 10px;font-weight: normal">Powered By <a href="https://www.attendize.com/?email_footer_powered_by" style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6;color: #999">Attendize.com</a>.
+                            </p>
+                            @yield('footer')
+                        </td>
+                    </tr>
+                </table>
+            </div><!-- /content -->
+
+        </td>
+        <td style="margin: 0;padding: 0;font-family: &quot;Helvetica Neue&quot;, &quot;Helvetica&quot;, Helvetica, Arial, sans-serif;font-size: 100%;line-height: 1.6"></td>
+    </tr>
+</table>
+<!-- /footer -->
+
+</body>
+</html>
diff --git a/resources/views/ru/Emails/attendeeTicket.blade.php b/resources/views/ru/Emails/attendeeTicket.blade.php
new file mode 100644
index 000000000..e13e5d8d3
--- /dev/null
+++ b/resources/views/ru/Emails/attendeeTicket.blade.php
@@ -0,0 +1,10 @@
+Привет {{{$attendee->first_name}}},<br><br>
+
+Мы прикрепили ваши билеты к этому письму.<br><br>
+
+Вы можете просмотреть информацию о заказе и скачать билеты на сайте {{route('showOrderDetails', ['order_reference' => $attendee->order->order_reference])}} в любое удобное вам время.<br><br>
+
+Ссылка на ваш заказ <b>{{$attendee->order->order_reference}}</b>.<br>
+
+Спасибо за ваш заказ<br>
+
diff --git a/resources/views/ru/Emails/inviteUser.blade.php b/resources/views/ru/Emails/inviteUser.blade.php
new file mode 100644
index 000000000..f93dcf979
--- /dev/null
+++ b/resources/views/ru/Emails/inviteUser.blade.php
@@ -0,0 +1,37 @@
+@extends('en.Emails.Layouts.Master')
+
+@section('message_content')
+
+<p>Привет</p>
+<p>
+    Для вас был создан аккаунт в приложении  {{ config('attendize.app_name') }} участником {{$inviter->first_name.' '.$inviter->last_name}}.
+</p>
+
+<p>
+    Вы можете войти в систему, используя следующие данные.<br><br>
+    
+    Имя пользователя: <b>{{$user->email}}</b> <br>
+    Пароль: <b>{{$temp_password}}</b>
+</p>
+
+<p>
+    Вы можете изменить свой временный пароль после входа в систему.
+</p>
+
+<div style="padding: 5px; border: 1px solid #ccc;" >
+   {{route('login')}}
+</div>
+<br><br>
+<p>
+    Если у вас есть какие-либо вопросы, пожалуйста, ответьте на это письмо.
+</p>
+<p>
+    Спасибо
+</p>
+
+@stop
+
+@section('footer')
+
+
+@stop
diff --git a/resources/views/ru/Emails/messageReceived.blade.php b/resources/views/ru/Emails/messageReceived.blade.php
new file mode 100644
index 000000000..ba75d58ea
--- /dev/null
+++ b/resources/views/ru/Emails/messageReceived.blade.php
@@ -0,0 +1,19 @@
+@extends('en.Emails.Layouts.Master')
+
+@section('message_content')
+
+<p>Привет,</p>
+<p>Вы получили сообщение от <b>{{ (isset($sender_name) ? $sender_name : $event->organiser->name) }}</b> в связи с мероприятием <b>{{ $event->title }}</b>.</p>
+<p style="padding: 10px; margin:10px; border: 1px solid #f3f3f3;">
+    {!! nl2br($message_content) !!}
+</p>
+
+<p>
+    Вы можете связаться с <b>{{ (isset($sender_name) ? $sender_name : $event->organiser->name) }}</b> напрямую по электронной почте <a href='mailto:{{ (isset($sender_email) ? $sender_email : $event->organiser->email) }}'>{{ (isset($sender_email) ? $sender_email : $event->organiser->email) }}</a>, или ответив на это письмо.
+</p>
+@stop
+
+@section('footer')
+
+
+@stop
diff --git a/resources/views/ru/Emails/notifyCancelledAttendee.blade.php b/resources/views/ru/Emails/notifyCancelledAttendee.blade.php
new file mode 100644
index 000000000..ff3814ee8
--- /dev/null
+++ b/resources/views/ru/Emails/notifyCancelledAttendee.blade.php
@@ -0,0 +1,17 @@
+@extends('en.Emails.Layouts.Master')
+
+@section('message_content')
+
+<p>Привет</p>
+<p>
+    Ваш билет на мероприяние <b>{{{$attendee->event->title}}}</b> был отменен.
+</p>
+
+<p>
+    Вы можете связаться с <b>{{{$attendee->event->organiser->name}}}</b> напрямую по электронной почте <a href='mailto:{{{$attendee->event->organiser->email}}}'>{{{$attendee->event->organiser->email}}}</a> или ответив на это письмо, если вам нужна дополнительная информация.
+</p>
+@stop
+
+@section('footer')
+
+@stop
diff --git a/resources/views/ru/Emails/notifyRefundedAttendee.blade.php b/resources/views/ru/Emails/notifyRefundedAttendee.blade.php
new file mode 100644
index 000000000..7951d35ae
--- /dev/null
+++ b/resources/views/ru/Emails/notifyRefundedAttendee.blade.php
@@ -0,0 +1,18 @@
+@extends('en.Emails.Layouts.Master')
+
+@section('message_content')
+
+    <p>Привет</p>
+    <p>
+        Вы получили возмещение за аннулированный билет на мероприятие <b>{{{$attendee->event->title}}}</b>.
+        <b>{{{ $refund_amount }}} был возвращен первоначальному получателю платежа, вы должны увидеть платеж через несколько дней.</b>
+    </p>
+
+    <p>
+        Вы можете связаться с <b>{{{ $attendee->event->organiser->name }}}</b> напрямую по электронной почте <a href='mailto:{{{$attendee->event->organiser->email}}}'>{{{$attendee->event->organiser->email}}}</a> или ответив на это письмо, если вам нужна дополнительная информация.
+    </p>
+@stop
+
+@section('footer')
+
+@stop
\ No newline at end of file
diff --git a/resources/views/ru/Installer/Partials/Footer.blade.php b/resources/views/ru/Installer/Partials/Footer.blade.php
new file mode 100644
index 000000000..6da5d7c64
--- /dev/null
+++ b/resources/views/ru/Installer/Partials/Footer.blade.php
@@ -0,0 +1,18 @@
+<div class="well">
+    <p>
+        Установка может занять несколько минут. Как только вы нажмете кнопку '<b>Установить Attendize</b>' настройки конфигурации будут записаны в этот файл: <b>{{base_path('.env')}}</b>. Вы можете вручную изменить эти настройки в будущем, отредактировав этот файл.
+    </p>
+    <p>
+        Если установка не удалась, обязательно проверьте файл журнала в разделе <b>{{storage_path('logs')}}</b>. Если в файлах журнала нет ошибок, также <b>проверьте другие файлы журнала на вашем сервере</b>.
+    </p>
+    <p>
+        Если вы используете виртуальный хостинг, пожалуйста, спросите у своего хостера, поддерживает ли он требования Attendize, прежде чем обращаться в службу поддержки.
+    </p>
+    <p>
+        Если вам все еще нужна помощь, вы можете <a href="https://github.com/Attendize/Attendize/issues">создать отчет об ошибке</a>. Пожалуйста, укажите как можно больше подробностей, включая любые ошибки в журнале регистрации.
+        Также взгляните на <a href="https://www.attendize.com/troubleshooting.html">руководство по устранению неисправностей</a>
+    </p>
+    <p>
+        Пожалуйста, также  <a style="text-decoration: underline;" target="_blank" href="https://www.attendize.com/license.html">прочитайте лицензию</a> перед установкой Attendize.
+    </p>
+</div>


Test patch: