diff --git a/.env b/.env
index ba2c798..a5f8576 100755
--- a/.env
+++ b/.env
@@ -43,14 +43,20 @@ MAIL_BBC=kevin@adametz.media
MAIL_FEWO_EMPLOYEE=kevin@adametz.media
#MAIL_FEWO_EMPLOYEE=katrin.nikolai@stern-tours.de,gerda.fritsch@stern-tours.de
#MAIL_BBC=kontakt@stern-tours.de,thomas.stern@stern-tours.de
-MAIL_FROM_ADDRESS=info@mein.sterntours.de
-MAIL_FROM_NAME="Reisebüro STERN TOURS"
+
MAIL_DRIVER=smtp
-MAIL_HOST=mail.your-server.de
+MAIL_FROM_NAME="Reisebüro STERN TOURS"
+#MAIL_FROM_ADDRESS=stern@sterntours.de
+#MAIL_HOST=zimbra.managedemail.de
+#MAIL_USERNAME=stern@stern-tours.de
+#MAIL_PASSWORD=13C!NlecB!Phil4beAxKl
MAIL_PORT=587
+MAIL_ENCRYPTION=TLS
+
+MAIL_FROM_ADDRESS=info@mein.sterntours.de
+MAIL_HOST=mail.your-server.de
MAIL_USERNAME=info@mein.sterntours.de
MAIL_PASSWORD=B7f8Ojt98v6tMz8W
-MAIL_ENCRYPTION=TLS
#MAIL_FROM_ADDRESS=stern@stern-tours.de
#MAIL_HOST=zimbra.managedemail.de
diff --git a/app/Http/Controllers/IQ/TravelGroupController.php b/app/Http/Controllers/IQ/TravelGroupController.php
index 38c33e3..50b9658 100644
--- a/app/Http/Controllers/IQ/TravelGroupController.php
+++ b/app/Http/Controllers/IQ/TravelGroupController.php
@@ -3,7 +3,6 @@
namespace App\Http\Controllers\IQ;
use Request;
-use App\Models\IQTravelItemPlace;
use App\Http\Controllers\Controller;
use App\Models\IQTravelGroup;
use App\Models\IQTravelGroupItem;
@@ -99,7 +98,7 @@ class TravelGroupController extends Controller
->addColumn('action_edit', function (IQTravelGroup $iq_travel_group) {
return '';
})
- ->addColumn('trave_items', function (IQTravelGroup $iq_travel_group) {
+ ->addColumn('travel_items', function (IQTravelGroup $iq_travel_group) {
$ret = "";
if($iq_travel_group->i_q_travel_group_items->count()){
foreach($iq_travel_group->i_q_travel_group_items as $i_q_travel_group_item){
@@ -120,7 +119,7 @@ class TravelGroupController extends Controller
return '';
})
->orderColumn('id', 'id $1')
- ->rawColumns(['action_edit', 'id', 'active', 'trave_items', 'action_delete'])
+ ->rawColumns(['action_edit', 'id', 'active', 'travel_items', 'action_delete'])
->make(true);
}
}
diff --git a/app/Http/Controllers/IQ/TravelItemController.php b/app/Http/Controllers/IQ/TravelItemController.php
index 3739a4e..01c9ce6 100644
--- a/app/Http/Controllers/IQ/TravelItemController.php
+++ b/app/Http/Controllers/IQ/TravelItemController.php
@@ -104,7 +104,7 @@ class TravelItemController extends Controller
->addColumn('country', function (IQTravelItem $iq_travel_item) {
return $iq_travel_item->travel_country ? $iq_travel_item->travel_country->name : '';
})
- ->addColumn('trave_places', function (IQTravelItem $iq_travel_item) {
+ ->addColumn('travel_places', function (IQTravelItem $iq_travel_item) {
$ret = "";
if($iq_travel_item->i_q_travel_item_places->count()){
foreach($iq_travel_item->i_q_travel_item_places as $i_q_travel_item_place){
@@ -130,7 +130,7 @@ class TravelItemController extends Controller
return '';
})
->orderColumn('id', 'id $1')
- ->rawColumns(['action_edit', 'id', 'active', 'draft_type', 'trave_places', 'action_delete'])
+ ->rawColumns(['action_edit', 'id', 'active', 'draft_type', 'travel_places', 'action_delete'])
->make(true);
}
}
diff --git a/app/Http/Controllers/IQ/TravelProgrammController.php b/app/Http/Controllers/IQ/TravelProgrammController.php
index f952ef0..e3a1ea0 100644
--- a/app/Http/Controllers/IQ/TravelProgrammController.php
+++ b/app/Http/Controllers/IQ/TravelProgrammController.php
@@ -3,22 +3,21 @@
namespace App\Http\Controllers\IQ;
use Request;
-use App\Models\IQTravelItemPlace;
use App\Http\Controllers\Controller;
-use App\Models\IQTravelGroup;
-use App\Models\IQTravelGroupItem;
+use App\Models\IQTravelProgram;
+use App\Models\IQTravelProgramItem;
use App\Repositories\IQ\TravelRepository;
class TravelProgrammController extends Controller
{
- protected $tavelRepo;
+ protected $travelRepo;
- public function __construct(TravelRepository $tavelRepo)
+ public function __construct(TravelRepository $travelRepo)
{
$this->middleware('admin');
- $this->tavelRepo = $tavelRepo;
+ $this->travelRepo = $travelRepo;
}
public function index()
@@ -33,11 +32,11 @@ class TravelProgrammController extends Controller
public function detail($id, $step = false)
{
if($id === "new") {
- $model = new IQTravelGroup();
+ $model = new IQTravelProgram();
$id = 'new';
$model->active = 1;
}else{
- $model = IQTravelGroup::findOrFail($id);
+ $model = IQTravelProgram::findOrFail($id);
$id = $model->id;
}
@@ -46,7 +45,7 @@ class TravelProgrammController extends Controller
'id' => $id,
];
- return view('iq.travel.group.detail', $data);
+ return view('iq.travel.programm.detail', $data);
}
@@ -55,15 +54,15 @@ class TravelProgrammController extends Controller
$data = Request::all();
if(isset($data['action'])){
if($data['action'] === 'saveAll'){
- $travel_group = $this->tavelRepo->updateTravelGroup($id, $data);
+ $travel_program = $this->travelRepo->updateTravelProgram($id, $data);
\Session()->flash('alert-save', '1');
- return redirect(route('iq_travel_group_detail', [$travel_group->id]));
+ return redirect(route('iq_travel_programm_detail', [$travel_program->id]));
}
- if($data['action'] === 'save-iq_travel_item_group'){
- $travel_group_item = $this->tavelRepo->updateTravelGroupItem($id, $data);
+ if($data['action'] === 'save-iq_travel_program_items'){
+ $travel_program = $this->travelRepo->createTravelProgramItems($id, $data);
\Session()->flash('alert-save', '1');
- return redirect(route('iq_travel_group_detail', [$id]));
+ return redirect(route('iq_travel_programm_detail', [$id]));
}
}
@@ -72,37 +71,46 @@ class TravelProgrammController extends Controller
public function delete($id, $del=false){
- if($del === 'i_q_travel_group_item'){
- $IQTravelGroupItem = IQTravelGroupItem::findOrFail($id);
- $r_id = $IQTravelGroupItem->i_q_travel_group_id;
+ if($del === 'i_q_travel_program_item'){
+ $IQTravelProgramItem = IQTravelProgramItem::findOrFail($id);
+ $IQTravelProgram = $IQTravelProgramItem->i_q_travel_program;
//TODO check need ???
- $IQTravelGroupItem->delete();
+ $IQTravelProgramItem->delete();
+ $this->travelRepo->sortPosTravelProgramItems($IQTravelProgram);
\Session()->flash('alert-success', __('Eintrag gelöscht'));
- return redirect(route('iq_travel_group_detail', [$r_id]));
+ return redirect(route('iq_travel_programm_detail', [$IQTravelProgram->id]));
}
- if($del === 'iq_travel_group'){
- $IQTravelGroup = IQTravelGroup::findOrFail($id);
+ if($del === 'iq_travel_programm'){
+ $IQTravelProgram = IQTravelProgram::findOrFail($id);
//TODO check need ???
- $IQTravelGroup->delete();
+ $IQTravelProgram->delete();
\Session()->flash('alert-success', __('Eintrag gelöscht'));
- return redirect(route('iq_travel_groups'));
+ return redirect(route('iq_travel_programms'));
}
return back();
}
- public function getTravelGroups()
+ public function getTravelProgramms()
{
- $query = IQTravelGroup::with('i_q_travel_group_items')->with('i_q_travel_group_items.i_q_travel_item')->select('i_q_travel_groups.*');
+ //->with('i_q_travel_program_items.i_q_travel_item')
+ $query = IQTravelProgram::with('i_q_travel_program_items')->select('i_q_travel_programs.*');
return \DataTables::eloquent($query)
- ->addColumn('action_edit', function (IQTravelGroup $iq_travel_group) {
- return '';
+ ->addColumn('action_edit', function (IQTravelProgram $iq_travel_program) {
+ return '';
})
- ->addColumn('trave_items', function (IQTravelGroup $iq_travel_group) {
+
+ ->addColumn('typ', function (IQTravelProgram $iq_travel_program) {
+ return $iq_travel_program->typ ? IQTravelProgram::$status_type[$iq_travel_program->typ] : '-';
+ })
+ ->addColumn('country', function (IQTravelProgram $iq_travel_program) {
+ return $iq_travel_program->travel_country ? $iq_travel_program->travel_country->name : '';
+ })
+ ->addColumn('travel_items', function (IQTravelProgram $iq_travel_program) {
$ret = "";
- if($iq_travel_group->i_q_travel_group_items->count()){
- foreach($iq_travel_group->i_q_travel_group_items as $i_q_travel_group_item){
+ /*if($iq_travel_program->i_q_travel_group_items->count()){
+ foreach($iq_travel_program->i_q_travel_group_items as $i_q_travel_group_item){
$ret .= $i_q_travel_group_item->i_q_travel_item->name;
$ret .= $i_q_travel_group_item->i_q_travel_item->draft_type_id ? ' | '.$i_q_travel_group_item->i_q_travel_item->draft_type->name.'' : '';
@@ -110,17 +118,17 @@ class TravelProgrammController extends Controller
$ret .= "
";
}
$ret = rtrim($ret, '
');
- }
+ }*/
return $ret;
})
- ->addColumn('active', function (IQTravelGroup $iq_travel_group) {
- return get_active_badge($iq_travel_group->active);
+ ->addColumn('active', function (IQTravelProgram $iq_travel_program) {
+ return get_active_badge($iq_travel_program->active);
})
- ->addColumn('action_delete', function (IQTravelGroup $iq_travel_group) {
- return '';
+ ->addColumn('action_delete', function (IQTravelProgram $iq_travel_program) {
+ return '';
})
->orderColumn('id', 'id $1')
- ->rawColumns(['action_edit', 'id', 'active', 'trave_items', 'action_delete'])
+ ->rawColumns(['action_edit', 'id', 'active', 'travel_items', 'action_delete'])
->make(true);
}
}
diff --git a/app/Http/Controllers/ModalController.php b/app/Http/Controllers/ModalController.php
index 7165eb7..710bb37 100644
--- a/app/Http/Controllers/ModalController.php
+++ b/app/Http/Controllers/ModalController.php
@@ -8,6 +8,7 @@ use App\Models\IQContentSite;
use App\Models\TravelCountry;
use App\Models\IQTravelGroupItem;
use App\Models\IQTravelItemPlace;
+use App\Models\IQTravelProgramItem;
use App\Models\TravelCompanyService;
use App\Models\TravelCountryService;
use App\Models\ServiceProviderService;
@@ -93,7 +94,15 @@ class ModalController extends Controller
$ret = view("admin.modal.iq_travel_group-item", compact('data', 'value'))->render();
}
-
+ if($data['action'] === 'modal-iq_travel_program-item'){
+ if($data['id'] === 'new'){
+ $value = new IQTravelProgramItem();
+ $value->pos = 0;
+ }else{
+ $value = IQTravelProgramItem::find($data['id']);
+ }
+ $ret = view("admin.modal.iq_travel_program-item", compact('data', 'value'))->render();
+ }
}
return response()->json(['response' => $data, 'html'=>$ret, 'status'=>$status]);
diff --git a/app/Models/IQTravelGroup.php b/app/Models/IQTravelGroup.php
index df9fab7..634bfdd 100644
--- a/app/Models/IQTravelGroup.php
+++ b/app/Models/IQTravelGroup.php
@@ -63,7 +63,7 @@ class IQTravelGroup extends Model
public function i_q_travel_group_items()
{
- return $this->hasMany(IQTravelGroupItem::class)->orderBy('pos', 'DESC');
+ return $this->hasMany(IQTravelGroupItem::class)->orderBy('pos', 'ASC');
}
diff --git a/app/Models/IQTravelItem.php b/app/Models/IQTravelItem.php
index d55e7f5..45841b5 100644
--- a/app/Models/IQTravelItem.php
+++ b/app/Models/IQTravelItem.php
@@ -81,7 +81,7 @@ class IQTravelItem extends Model
public function i_q_travel_item_places()
{
- return $this->hasMany(IQTravelItemPlace::class)->orderBy('pos', 'DESC');
+ return $this->hasMany(IQTravelItemPlace::class)->orderBy('pos', 'ASC');
}
public function draft_type()
diff --git a/app/Models/IQTravelProgram.php b/app/Models/IQTravelProgram.php
new file mode 100644
index 0000000..97561ea
--- /dev/null
+++ b/app/Models/IQTravelProgram.php
@@ -0,0 +1,159 @@
+ 'int',
+ 'days_duration' => 'int',
+ 'typ' => 'int',
+ 'discount' => 'float',
+ 'deposit_pro' => 'float',
+ 'price_adult_total' => 'float',
+ 'price_children_total' => 'float',
+ 'active' => 'bool',
+ 'weekdays' => 'array',
+ 'travel_insurance' => 'array',
+ ];
+
+ protected $fillable = [
+ 'name',
+ 'code',
+ 'typ',
+ 'travel_country_id',
+ 'description',
+ 'highlights',
+ 'not_included',
+ 'weekdays',
+ 'days_duration',
+ 'discount',
+ 'deposit_pro',
+ 'price_adult_total',
+ 'price_children_total',
+ 'travel_insurance',
+ 'active'
+ ];
+
+ public static $status_type = [
+ 0 => '-',
+ 4 => '--- ist noch genau zu definieren',
+ 1 => 'individuelles Angebot',
+ 2 => 'Reiseangebot',
+ 3 => 'Reisekonfigurator',
+
+ ];
+
+ public static $days = [
+ 0 => 'Sonntag',
+ 1 => 'Montag',
+ 2 => 'Dienstag',
+ 3 => 'Mittwoch',
+ 4 => 'Donnerstag',
+ 5 => 'Freitag',
+ 6 => 'Samstag'
+ ];
+
+ public function travel_country()
+ {
+ return $this->belongsTo(TravelCountry::class);
+ }
+
+ public function i_q_travel_program_items()
+ {
+ return $this->hasMany(IQTravelProgramItem::class)->orderBy('pos', 'ASC');
+ }
+
+
+ //price_adult_total
+ public function getPriceAdultTotalAttribute()
+ {
+ return isset($this->attributes['price_adult_total']) ? Util::_number_format($this->attributes['price_adult_total']) : null;
+ }
+ public function setPriceAdultTotalAttribute($value)
+ {
+ $this->attributes['price_adult_total'] = $value ? Util::_clean_float($value) : null;
+ }
+ public function getPriceAdultTotalRaw()
+ {
+
+ return isset($this->attributes['price_adult_total']) ? $this->attributes['price_adult_total'] : 0;
+ }
+ public function setPriceAdultTotalRaw($value)
+ {
+ return $this->attributes['price_adult_total'] = $value;
+ }
+
+
+ //price_children_total
+ public function getPriceChildrenTotalAttribute()
+ {
+ return isset($this->attributes['price_children_total']) ? Util::_number_format($this->attributes['price_children_total']) : null;
+ }
+ public function setPriceChildrenTotalAttribute($value)
+ {
+ $this->attributes['price_children_total'] = $value ? Util::_clean_float($value) : null;
+ }
+ public function getPriceChildrenTotalRaw()
+ {
+ return isset($this->attributes['price_children_total']) ? $this->attributes['price_children_total'] : 0;
+ }
+ public function setPriceChildrenTotalRaw($value)
+ {
+ return $this->attributes['price_children_total'] = $value;
+ }
+
+
+ public static function getWeekdaysOptions($weekdays = []){
+
+ if($weekdays === null){
+ $weekdays = [];
+ }
+ $options = range(0, 6);
+ $ret = '';
+ foreach ($options as $option){
+ $attr = (in_array($option, $weekdays)) ? 'selected="selected"' : '';
+ $ret .= '\n';
+ }
+ return $ret;
+ }
+}
diff --git a/app/Models/IQTravelProgramItem.php b/app/Models/IQTravelProgramItem.php
new file mode 100644
index 0000000..49471a4
--- /dev/null
+++ b/app/Models/IQTravelProgramItem.php
@@ -0,0 +1,70 @@
+ 'int',
+ 'i_q_travel_item_id' => 'int',
+ 'i_q_travel_group_id' => 'int',
+ 'typ' => 'int',
+ 'pos' => 'int',
+ 'active' => 'bool'
+ ];
+
+ protected $fillable = [
+ 'i_q_travel_program_id',
+ 'i_q_travel_item_id',
+ 'i_q_travel_group_id',
+ 'typ',
+ 'pos',
+ 'active'
+ ];
+
+ public function i_q_travel_group()
+ {
+ return $this->belongsTo(IQTravelGroup::class);
+ }
+
+ public function i_q_travel_item()
+ {
+ return $this->belongsTo(IQTravelItem::class);
+ }
+
+ public function i_q_travel_program()
+ {
+ return $this->belongsTo(IQTravelProgram::class);
+ }
+}
diff --git a/app/Repositories/IQ/TravelRepository.php b/app/Repositories/IQ/TravelRepository.php
index cd2700d..3524847 100644
--- a/app/Repositories/IQ/TravelRepository.php
+++ b/app/Repositories/IQ/TravelRepository.php
@@ -6,6 +6,8 @@ use App\Models\IQTravelGroup;
use App\Models\IQTravelGroupItem;
use App\Models\IQTravelItem;
use App\Models\IQTravelItemPlace;
+use App\Models\IQTravelProgram;
+use App\Models\IQTravelProgramItem;
use App\Repositories\BaseRepository;
class TravelRepository extends BaseRepository {
@@ -17,6 +19,78 @@ class TravelRepository extends BaseRepository {
}
+ public function updateTravelProgram($id, $data)
+ {
+
+ $data['travel_country_id'] = $data['travel_country_id'] ? $data['travel_country_id'] : null;
+
+ if($id == "new"){
+ $this->model = IQTravelProgram::create($data);
+ }
+ else{
+ $this->model = IQTravelProgram::findOrFail($id);
+ $this->model->fill($data);
+ $this->model->save();
+ }
+
+ return $this->model;
+ }
+
+ public function createTravelProgramItems($id, $data)
+ {
+ $this->model = IQTravelProgram::findOrFail($id);
+ $data['pos'] = isset($data['pos']) ? intval($data['pos']) : 0;
+ $data['typ'] = isset($data['typ']) ? intval($data['typ']) : 0;
+ $data['i_q_travel_program_id'] = $data['iq_travel_program_id'];
+
+ $pos = $this->sortPosTravelProgramItems($this->model);
+
+ if($data['iq_travel_program_item_id'] == "new"){
+ if(isset($data['i_q_travel_item_ids']) && is_array($data['i_q_travel_item_ids'])){
+ foreach($data['i_q_travel_item_ids'] as $key=>$i_q_travel_item_id){
+ IQTravelProgramItem::create([
+ 'i_q_travel_program_id' => $this->model->id,
+ 'i_q_travel_item_id' => intval($i_q_travel_item_id),
+ 'i_q_travel_group_id' => null,
+ 'typ' => $data['typ'],
+ 'pos' => $pos,
+ ]);
+ $pos++;
+ }
+ }
+
+ if(isset($data['i_q_travel_group_ids']) && is_array($data['i_q_travel_group_ids'])){
+ foreach($data['i_q_travel_group_ids'] as $key=>$i_q_travel_group_id){
+ $IQTravelGroup = IQTravelGroup::findOrFail($i_q_travel_group_id);
+ if($IQTravelGroup->i_q_travel_group_items){
+ foreach($IQTravelGroup->i_q_travel_group_items as $IQTravelGroupItem){
+ IQTravelProgramItem::create([
+ 'i_q_travel_program_id' => $this->model->id,
+ 'i_q_travel_item_id' => $IQTravelGroupItem->i_q_travel_item_id,
+ 'i_q_travel_group_id' => $IQTravelGroupItem->i_q_travel_group_id,
+ 'typ' => $data['typ'],
+ 'pos' => $pos,
+ ]);
+ $pos++;
+ }
+ }
+ }
+ }
+ }
+ return $this->model;
+ }
+
+ public function sortPosTravelProgramItems($IQTravelProgram){
+ $pos = 1;
+ if($IQTravelProgram->i_q_travel_program_items){
+ foreach ($IQTravelProgram->i_q_travel_program_items as $IQTravelProgramItem){
+ $IQTravelProgramItem->pos = $pos;
+ $IQTravelProgramItem->save();
+ $pos++;
+ }
+ }
+ return $pos;
+ }
diff --git a/app/Services/HTMLHelper.php b/app/Services/HTMLHelper.php
index bcd0863..d619a36 100644
--- a/app/Services/HTMLHelper.php
+++ b/app/Services/HTMLHelper.php
@@ -1,25 +1,27 @@
orderBy('id', $order)->get();
+ $ret = '';
+ if($empty){
+ $ret = '\n';
+ }
+ foreach ($options as $option){
+ $attr = ($option->id === $id) ? 'selected="selected"' : '';
+ $ret .= '\n';
+ }
+ return $ret;
+ }
+
public static function getCustomerMailDirsOptions(CMSContent $customer_mail_dir, $checked = []){
//$checked = [];
$model = $customer_mail_dir->getArrayContent('model');
diff --git a/database/migrations/2021_08_10_114705_create_i_q_travel_programs_table.php b/database/migrations/2021_08_10_114705_create_i_q_travel_programs_table.php
new file mode 100644
index 0000000..8213f88
--- /dev/null
+++ b/database/migrations/2021_08_10_114705_create_i_q_travel_programs_table.php
@@ -0,0 +1,59 @@
+create('i_q_travel_programs', function (Blueprint $table) {
+
+ $table->increments('id');
+
+ $table->string('name')->nullable();
+ $table->string('code')->nullable();
+ $table->unsignedTinyInteger('typ')->nullable();
+
+ $table->integer('travel_country_id')->nullable();
+
+ $table->text('description')->nullable();
+ $table->text('highlights')->nullable();
+ $table->text('not_included')->nullable();
+
+ $table->string('weekdays')->nullable();
+ $table->tinyInteger('days_duration')->unsigned()->nullable();
+
+ $table->decimal('discount', 5, 2)->nullable();
+ $table->decimal('deposit_pro', 5, 2)->nullable();
+ $table->decimal('price_adult_total', 10, 2)->nullable();
+ $table->decimal('price_children_total', 10, 2)->nullable();
+
+ $table->string('travel_insurance')->nullable();
+
+ $table->boolean('active')->default(true);
+
+ $table->timestamps();
+
+ $table->foreign('travel_country_id')
+ ->references('id')
+ ->on('travel_country');
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::connection('mysql_stern')->dropIfExists('i_q_travel_programs');
+ }
+}
diff --git a/database/migrations/2021_08_10_114745_create_i_q_travel_program_items_table.php b/database/migrations/2021_08_10_114745_create_i_q_travel_program_items_table.php
new file mode 100644
index 0000000..8560c3f
--- /dev/null
+++ b/database/migrations/2021_08_10_114745_create_i_q_travel_program_items_table.php
@@ -0,0 +1,55 @@
+create('i_q_travel_program_items', function (Blueprint $table) {
+ $table->bigIncrements('id');
+
+ $table->unsignedInteger('i_q_travel_program_id')->index();
+ $table->unsignedInteger('i_q_travel_item_id')->nullable()->index();
+ $table->unsignedInteger('i_q_travel_group_id')->nullable()->index();
+
+ $table->unsignedTinyInteger('typ')->nullable();
+ $table->unsignedTinyInteger('pos')->nullable();
+ $table->boolean('active')->default(true);
+
+ $table->timestamps();
+
+ $table->foreign('i_q_travel_program_id')
+ ->references('id')
+ ->on('i_q_travel_programs')
+ ->onDelete('cascade');
+
+ $table->foreign('i_q_travel_item_id')
+ ->references('id')
+ ->on('i_q_travel_items')
+ ->onDelete('cascade');
+
+ $table->foreign('i_q_travel_group_id')
+ ->references('id')
+ ->on('i_q_travel_groups')
+ ->onDelete('cascade');
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::connection('mysql_stern')->dropIfExists('i_q_travel_program_items');
+ }
+}
diff --git a/resources/views/admin/modal/iq_travel_item-place.blade.php b/resources/views/admin/modal/iq_travel_item-place.blade.php
index a968ebd..254b146 100644
--- a/resources/views/admin/modal/iq_travel_item-place.blade.php
+++ b/resources/views/admin/modal/iq_travel_item-place.blade.php
@@ -14,13 +14,12 @@
Das Programm muss erst mit einem Name gespeichert werden.
+ @endif +