FileManager

This commit is contained in:
Kevin Adametz 2020-03-07 19:45:39 +01:00
parent c8948338bb
commit f1e0900a7a
131 changed files with 5844 additions and 3081 deletions

1
.bash-profile Normal file
View file

@ -0,0 +1 @@
export PATH=/Applications/MAMP/bin/php/php7.3.9/bin/:$PATH

View file

@ -16,8 +16,12 @@
<excludeFolder url="file://$MODULE_DIR$/vendor/dompdf/dompdf" />
<excludeFolder url="file://$MODULE_DIR$/vendor/firebase/php-jwt" />
<excludeFolder url="file://$MODULE_DIR$/vendor/iqcontent/laravel-filemanager" />
<excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-diactoros" />
<excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-zendframework-bridge" />
<excludeFolder url="file://$MODULE_DIR$/vendor/laravel/helpers" />
<excludeFolder url="file://$MODULE_DIR$/vendor/laravel/passport" />
<excludeFolder url="file://$MODULE_DIR$/vendor/lcobucci/jwt" />
<excludeFolder url="file://$MODULE_DIR$/vendor/league/commonmark" />
<excludeFolder url="file://$MODULE_DIR$/vendor/league/event" />
<excludeFolder url="file://$MODULE_DIR$/vendor/league/oauth2-server" />
<excludeFolder url="file://$MODULE_DIR$/vendor/markbaker/complex" />
@ -44,7 +48,6 @@
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/psr-http-message-bridge" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/service-contracts" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/translation-contracts" />
<excludeFolder url="file://$MODULE_DIR$/vendor/zendframework/zend-diactoros" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />

8
.idea/php.xml generated
View file

@ -16,7 +16,6 @@
<path value="$PROJECT_DIR$/vendor/swiftmailer/swiftmailer" />
<path value="$PROJECT_DIR$/vendor/composer" />
<path value="$PROJECT_DIR$/vendor/psr/container" />
<path value="$PROJECT_DIR$/vendor/erusev/parsedown" />
<path value="$PROJECT_DIR$/vendor/league/flysystem" />
<path value="$PROJECT_DIR$/vendor/psr/log" />
<path value="$PROJECT_DIR$/vendor/psr/simple-cache" />
@ -92,7 +91,6 @@
<path value="$PROJECT_DIR$/vendor/doctrine/event-manager" />
<path value="$PROJECT_DIR$/vendor/doctrine/cache" />
<path value="$PROJECT_DIR$/vendor/doctrine/dbal" />
<path value="$PROJECT_DIR$/vendor/zendframework/zend-diactoros" />
<path value="$PROJECT_DIR$/vendor/firebase/php-jwt" />
<path value="$PROJECT_DIR$/vendor/defuse/php-encryption" />
<path value="$PROJECT_DIR$/vendor/phpseclib/phpseclib" />
@ -129,9 +127,13 @@
<path value="$PROJECT_DIR$/vendor/symfony/error-handler" />
<path value="$PROJECT_DIR$/vendor/barryvdh/laravel-debugbar" />
<path value="$PROJECT_DIR$/vendor/phpunit/php-invoker" />
<path value="$PROJECT_DIR$/vendor/league/commonmark" />
<path value="$PROJECT_DIR$/vendor/laminas/laminas-diactoros" />
<path value="$PROJECT_DIR$/vendor/laminas/laminas-zendframework-bridge" />
<path value="$PROJECT_DIR$/vendor/laravel/helpers" />
</include_path>
</component>
<component name="PhpProjectSharedConfiguration" php_language_level="7.1" />
<component name="PhpProjectSharedConfiguration" php_language_level="7.2" />
<component name="PhpUnit">
<phpunit_settings>
<PhpUnitSettings custom_loader_path="$PROJECT_DIR$/vendor/autoload.php" />

244
.idea/workspace.xml generated
View file

@ -2,62 +2,15 @@
<project version="4">
<component name="ChangeListManager">
<list default="true" id="e1ac1cea-a1a5-4c16-b5f0-5908c7d368de" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/app/Exports/ReportCollectionExport.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/API/BookingController.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/Admin/ReportController.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/SyS/Tools/ContentLinkController.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Middleware/SysAdmin.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Arrangement.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/ArrangementTemplate.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/ArrangementType.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/BookingServiceItem.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Coupon.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/CreditCardType.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Customer.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/InitialContactType.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Inquiry.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/InquiryTemplate.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/InquiryType.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/InsuranceCertificate.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/LeadParticipant.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Offer.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Participant.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Salutation.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Searchengine.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/ServiceProvider.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/ServiceProviderEntry.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/StatusHistory.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Sym/_Booking.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/TravelBooking.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/TravelCategory.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/TravelCompany.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Website.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Repositories/DraftRepository.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/config/debugbar.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_143834_create_travel_booking_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_150706_create_customer_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151231_create_initial_contact_type_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151258_create_salutation_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151309_create_searchengine_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151330_create_travel_category_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151358_create_inquiry_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151358_create_lead_participant_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151358_create_offer_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151358_create_status_history_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_151359_create_website_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_152708_create_coupon_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_152708_create_credit_card_type_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_152708_create_inquiry_template_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_152709_create_inquiry_type_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_152709_create_insurance_certificate_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_152709_create_participant_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_153723_create_arrangement_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_153723_create_arrangement_template_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_153723_create_arrangement_type_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_154358_create_booking_service_item_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_01_29_154619_create_travel_company_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_02_04_160054_create_service_provider_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_02_04_160055_create_service_provider_entry_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.bash-profile" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSContentAuthorController.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/Settings/KeywordController.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/CMSAuthor.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Models/Keyword.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/archiv.tar" afterDir="false" />
<change afterPath="$PROJECT_DIR$/archiv.tar.gz" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_02_27_160814_create_keywords_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/database/migrations/2020_03_06_140522_create_c_m_s_authors_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171716_create_i_q_content_folders_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171717_create_i_q_content_files_table.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171718_create_i_q_content_categories_table.php" afterDir="false" />
@ -77,11 +30,43 @@
<change afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/colors.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/file.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/move-item.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/_empty.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/admin/report/index.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/sys/tools/links.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/sys/tools/trees.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.env" beforeDir="false" afterPath="$PROJECT_DIR$/.env" afterDir="false" />
<change afterPath="$PROJECT_DIR$/public/js/_bak_filemanager.js" afterDir="false" />
<change afterPath="$PROJECT_DIR$/public/js/summernote-image-title.js" afterDir="false" />
<change afterPath="$PROJECT_DIR$/public/js/summernote-iq-content-extension.js" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/asset/js.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/cms/content/author/index.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/cms/content/author/modal.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/iq/content/assets/body.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/iq/content/assets/modals.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/settings/keywords/index.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-2.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-3.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/Muscat-Sultan-Qaboos-Moschee-h1_cropped_1582804461.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/Tempel-Nefertari-und-Ramses-am-Nassersee-in-Abu-Simbel.youtube" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/Bilder-in/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/Bilder-in/thumbs/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-2.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-3.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/Muscat-Sultan-Qaboos-Moschee-h1-Kopie.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/thumbs/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-2.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/thumbs/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-3.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/thumbs/Muscat-Sultan-Qaboos-Moschee-h1-Kopie.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/thumbs/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/youtube/5_cropped_1574182410.jpg" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root/youtube/thumbs/5_cropped_1574182410.jpg" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/root2/4cropped1574181421212.jpg" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/test/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-2.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/test/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/test/thumbs/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-2.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/test/thumbs/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/thumbs/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-2.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/thumbs/Muscat-Sultan-Qaboos-Moschee-h1-Kopie-3.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/thumbs/Muscat-Sultan-Qaboos-Moschee-h1.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/thumbs/Muscat-Sultan-Qaboos-Moschee-h1_cropped_1582804461.JPG" afterDir="false" />
<change afterPath="$PROJECT_DIR$/storage/app/public/files/shares/thumbs/Tempel-Nefertari-und-Ramses-am-Nassersee-in-Abu-Simbel.jpg" afterDir="false" />
<change afterPath="$PROJECT_DIR$/vendor.tar.gz" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/mein.sterntours.iml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/mein.sterntours.iml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/php.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/php.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
@ -89,30 +74,56 @@
<change beforePath="$PROJECT_DIR$/_ide_helper.php" beforeDir="false" afterPath="$PROJECT_DIR$/_ide_helper.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/_ide_helper_models.php" beforeDir="false" afterPath="$PROJECT_DIR$/_ide_helper_models.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/API/CMSContentController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/API/CMSContentController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/API/CMSContentInfoController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/API/CMSContentInfoController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/API/DraftController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/API/DraftController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/API/FewoController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/API/FewoController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/API/UserController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/API/UserController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Admin/ReportController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Admin/ReportController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/AdminUserController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/AdminUserController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Auth/LoginController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Auth/LoginController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Auth/RegisterController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Auth/RegisterController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/BookingController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/BookingController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSContentController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSContentController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSContentCountryController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSContentCountryController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSContentInfoController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSContentInfoController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSFeedbackController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSFeedbackController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSSidebarController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSSidebarController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSTravelGuideController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/CMS/CMSTravelGuideController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/DataTableController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/DataTableController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/DraftController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/DraftController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/HomeController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/HomeController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/IQ/ContentAssetController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/IQ/ContentAssetController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/IQ/ContentModalController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/IQ/ContentModalController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/IQ/ContentTreeController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/IQ/ContentTreeController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/IQ/Tools/ContentLinkController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/IQ/Tools/ContentLinkController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/RequestController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/RequestController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Settings/TravelAgendaController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Settings/TravelAgendaController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Settings/TravelCountryController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Settings/TravelCountryController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Settings/TravelNationalityController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Settings/TravelNationalityController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/SyS/Tools/ContentLinkController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/SyS/Tools/ContentLinkController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/TranslationController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/TranslationController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/TranslationFileController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/TranslationFileController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/TravelProgramController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/TravelProgramController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/TravelUserBookingFewoController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/TravelUserBookingFewoController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/TravelUserController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/TravelUserController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/UserDataController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/UserDataController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/UserDeleteController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/UserDeleteController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/UserUpdateEmailController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/UserUpdateEmailController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Kernel.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Kernel.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/Booking.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Booking.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/UserUpdatePasswordController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/UserUpdatePasswordController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/IQContentTreeNode.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/IQContentTreeNode.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/Lead.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Lead.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/Sym/TravelCountry.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Sym/TravelCountry.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/TravelUserBookingFewo.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/TravelUserBookingFewo.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/TravelGuide.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/TravelGuide.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/TravelProgram.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/TravelProgram.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Repositories/TravelUserBookingFewoRepository.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Repositories/TravelUserBookingFewoRepository.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Services/HTMLHelper.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Services/HTMLHelper.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Services/Util.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Services/Util.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/User.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/User.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/helpers.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/helpers.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/bootstrap/cache/services.php" beforeDir="false" afterPath="$PROJECT_DIR$/bootstrap/cache/services.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/composer.json" beforeDir="false" afterPath="$PROJECT_DIR$/composer.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/composer.lock" beforeDir="false" afterPath="$PROJECT_DIR$/composer.lock" afterDir="false" />
<change beforePath="$PROJECT_DIR$/config/app.php" beforeDir="false" afterPath="$PROJECT_DIR$/config/app.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/config/permissions.php" beforeDir="false" afterPath="$PROJECT_DIR$/config/permissions.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2018_10_29_202123_create_booking_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2018_10_29_202123_create_booking_table.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2018_10_29_202125_create_lead_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2018_10_29_202125_create_lead_table.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2019_07_19_155853_create_i_q_content_tree_nodes_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_07_19_155853_create_i_q_content_tree_nodes_table.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2018_10_28_134530_create_travel_program_table.php" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2018_10_29_202124_create_arrangement_table.php" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2019_03_11_094922_create_travel_guides_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_03_11_094922_create_travel_guides_table.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/composer.json" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/composer.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/public/css/cropper.min.css" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/public/css/cropper.min.css" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/public/js/cropper.min.js" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/public/js/cropper.min.js" afterDir="false" />
@ -121,6 +132,7 @@
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/DeleteController.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/DeleteController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/DemoController.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/DemoController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/DownloadController.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/DownloadController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/FileController.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/FileController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/FolderController.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/FolderController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/ItemsController.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/ItemsController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/LfmController.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/Controllers/LfmController.php" afterDir="false" />
@ -159,35 +171,27 @@
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/demo.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/demo.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/move.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/move.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/public/.htaccess" beforeDir="false" afterPath="$PROJECT_DIR$/public/.htaccess" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/booking/_detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/booking/_detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/booking/detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/booking/detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/booking/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/booking/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/content/all/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/content/all/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/content/country/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/content/country/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/content/info/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/content/info/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/feedback/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/feedback/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/sidebar/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/sidebar/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/resize.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/packages/iqcontent/laravel-filemanager/src/views/resize.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/public/css/application.css" beforeDir="false" afterPath="$PROJECT_DIR$/public/css/application.css" afterDir="false" />
<change beforePath="$PROJECT_DIR$/public/js/custom.js" beforeDir="false" afterPath="$PROJECT_DIR$/public/js/custom.js" afterDir="false" />
<change beforePath="$PROJECT_DIR$/public/js/filemanager.js" beforeDir="false" afterPath="$PROJECT_DIR$/public/js/_bak_1_filemanager.js" afterDir="false" />
<change beforePath="$PROJECT_DIR$/public/js/pages_file-manager.js" beforeDir="false" afterPath="$PROJECT_DIR$/public/js/pages_file-manager.js" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/travel_guide/detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/travel_guide/detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/travel_guide/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/travel_guide/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/travel_guide/page.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/travel_guide/page.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/travel_guide/tree-detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/travel_guide/tree-detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/cms/travel_guide/tree.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/cms/travel_guide/tree.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/drafts/_detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/drafts/_detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/drafts/detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/drafts/detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/drafts/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/drafts/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/iq/content/assets/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/iq/content/assets/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/layouts/application.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/layouts/application.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/layouts/includes/layout-sidenav.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/layouts/includes/layout-sidenav.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/request/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/request/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/settings/travel_agenda/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/settings/travel_agenda/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/settings/travel_country/detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/settings/travel_country/detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/settings/travel_country/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/settings/travel_country/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/settings/travel_nationality/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/settings/travel_nationality/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/travel/program/detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/travel/program/detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/travel/program/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/travel/program/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/travel/user/detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/travel/user/detail.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/routes/api.php" beforeDir="false" afterPath="$PROJECT_DIR$/routes/api.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/routes/web.php" beforeDir="false" afterPath="$PROJECT_DIR$/routes/web.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/storage/app/public/files/shares/VHJACKODURUmkehrdachbegruentDE.pdf" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/5_cropped_1574182410.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/storage/app/public/files/shares/root/Bilder/thumbs/5_cropped_1574182410.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/storage/app/public/files/shares/root/chartsflot.js" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/storage/app/public/files/shares/root/logo.png" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/storage/app/public/files/shares/root2/4_cropped_1574181421.jpg" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/vendor.zip" beforeDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -256,7 +260,6 @@
<path value="$PROJECT_DIR$/vendor/swiftmailer/swiftmailer" />
<path value="$PROJECT_DIR$/vendor/composer" />
<path value="$PROJECT_DIR$/vendor/psr/container" />
<path value="$PROJECT_DIR$/vendor/erusev/parsedown" />
<path value="$PROJECT_DIR$/vendor/league/flysystem" />
<path value="$PROJECT_DIR$/vendor/psr/log" />
<path value="$PROJECT_DIR$/vendor/psr/simple-cache" />
@ -332,7 +335,6 @@
<path value="$PROJECT_DIR$/vendor/doctrine/event-manager" />
<path value="$PROJECT_DIR$/vendor/doctrine/cache" />
<path value="$PROJECT_DIR$/vendor/doctrine/dbal" />
<path value="$PROJECT_DIR$/vendor/zendframework/zend-diactoros" />
<path value="$PROJECT_DIR$/vendor/firebase/php-jwt" />
<path value="$PROJECT_DIR$/vendor/defuse/php-encryption" />
<path value="$PROJECT_DIR$/vendor/phpseclib/phpseclib" />
@ -369,6 +371,10 @@
<path value="$PROJECT_DIR$/vendor/symfony/error-handler" />
<path value="$PROJECT_DIR$/vendor/barryvdh/laravel-debugbar" />
<path value="$PROJECT_DIR$/vendor/phpunit/php-invoker" />
<path value="$PROJECT_DIR$/vendor/league/commonmark" />
<path value="$PROJECT_DIR$/vendor/laminas/laminas-diactoros" />
<path value="$PROJECT_DIR$/vendor/laminas/laminas-zendframework-bridge" />
<path value="$PROJECT_DIR$/vendor/laravel/helpers" />
</include_path>
</component>
<component name="ProjectId" id="1OVGC0t0zLFaJgjHUxM3IZZZaeh" />
@ -388,24 +394,24 @@
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="database.console.LAST_STATE" value="false" />
<property name="js.buildTools.grunt.grunt-cli.package" value="" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/app/Exports" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/resources/views/cms/content" />
<property name="nodejs_package_manager_path" value="npm" />
<property name="settings.editor.selected.configurable" value="project.propVCSSupport.Mappings" />
</component>
<component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/app/Exports" />
<recent name="$PROJECT_DIR$/resources/views/admin/report" />
<recent name="$PROJECT_DIR$/resources/views" />
<recent name="$PROJECT_DIR$/app/Http/Controllers/Admin" />
<recent name="$PROJECT_DIR$/app/Repositories" />
</key>
<key name="MoveFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/public/js" />
<recent name="$PROJECT_DIR$/database/migrations" />
<recent name="$PROJECT_DIR$/app/Models/Sym" />
<recent name="$PROJECT_DIR$/app/Models" />
<recent name="$PROJECT_DIR$/resources/views/sys/tools" />
<recent name="$PROJECT_DIR$/app/Http/Controllers/SyS/Tools" />
</key>
<key name="CopyFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/resources/views/cms/content" />
<recent name="$PROJECT_DIR$/app/Http/Controllers/CMS" />
<recent name="$PROJECT_DIR$/resources/views/settings/keywords" />
<recent name="$PROJECT_DIR$/app/Http/Controllers/Settings" />
<recent name="$PROJECT_DIR$/resources/views/iq/content/assets" />
</key>
</component>
<component name="RunAnythingCache">
@ -694,6 +700,20 @@
<workItem from="1581497528788" duration="397000" />
<workItem from="1581603048699" duration="622000" />
<workItem from="1581668216737" duration="34000" />
<workItem from="1582045347453" duration="4118000" />
<workItem from="1582112306278" duration="1313000" />
<workItem from="1582374337274" duration="13710000" />
<workItem from="1582552775534" duration="13250000" />
<workItem from="1582642141448" duration="8000" />
<workItem from="1582647348949" duration="914000" />
<workItem from="1582649182412" duration="510000" />
<workItem from="1582653773079" duration="1910000" />
<workItem from="1582714849394" duration="17047000" />
<workItem from="1582800132883" duration="4411000" />
<workItem from="1582805740267" duration="8837000" />
<workItem from="1582975905082" duration="2000" />
<workItem from="1583498910538" duration="8180000" />
<workItem from="1583572243057" duration="5000" />
</task>
<servers />
</component>
@ -734,10 +754,10 @@
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="723" y="54" key="#com.intellij.refactoring.rename.AutomaticRenamingDialog/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581351314829" />
<state x="1018" y="488" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog" timestamp="1580559086038">
<state x="1018" y="488" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog" timestamp="1582729561214">
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="1018" y="488" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1580559086038" />
<state x="1018" y="488" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1582729561214" />
<state x="1018" y="488" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog/-2560.23.2560.1417/2560.-571.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1576083305151" />
<state x="975" y="454" key="#composer-post-update.sh" timestamp="1576084046909">
<screen x="0" y="23" width="2560" height="1417" />
@ -753,20 +773,20 @@
</state>
<state x="1020" y="544" width="527" height="375" key="PHPComposerAddDependencyDialogDimensionKey/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581350432217" />
<state x="1020" y="544" width="535" height="375" key="PHPComposerAddDependencyDialogDimensionKey/-2560.23.2560.1417/2560.-571.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1577532821964" />
<state x="1063" y="650" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2" timestamp="1581433082391">
<state x="1063" y="650" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2" timestamp="1582718815021">
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="1063" y="650" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581433082391" />
<state x="1063" y="650" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1582718815021" />
<state x="1063" y="650" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2/-2560.23.2560.1417/2560.-571.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1577126837332" />
<state x="938" y="488" width="1405" height="940" key="find.popup" timestamp="1581439807962">
<screen x="0" y="23" width="2560" height="1417" />
<state x="-1690" y="379" width="1487" height="940" key="find.popup" timestamp="1583508161392">
<screen x="-2560" y="23" width="2560" height="1417" />
</state>
<state x="938" y="488" width="1405" height="940" key="find.popup/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581439807962" />
<state x="-1690" y="379" width="1487" height="940" key="find.popup/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1583508161392" />
<state x="938" y="488" width="1035" height="714" key="find.popup/-2560.23.2560.1417/2560.-571.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1577550564294" />
<state x="946" y="348" width="670" height="676" key="search.everywhere.popup" timestamp="1580576197347">
<state x="946" y="348" width="670" height="676" key="search.everywhere.popup" timestamp="1582731225953">
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="946" y="348" width="670" height="676" key="search.everywhere.popup/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1580576197347" />
<state x="946" y="348" width="670" height="676" key="search.everywhere.popup/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1582731225953" />
<state x="946" y="348" width="670" height="676" key="search.everywhere.popup/-2560.23.2560.1417/2560.-571.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1577643900011" />
</component>
</project>

View file

@ -5,7 +5,7 @@ namespace PHPSTORM_META {
/**
* PhpStorm Meta file, to provide autocomplete information for PhpStorm
* Generated on 2020-02-10 17:24:00.
* Generated on 2020-02-26 13:37:45.
*
* @author Barry vd. Heuvel <barryvdh@gmail.com>
* @see https://github.com/barryvdh/laravel-ide-helper
@ -41,8 +41,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -51,8 +49,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -63,6 +59,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,
@ -205,8 +202,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -215,8 +210,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -227,6 +220,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,
@ -369,8 +363,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -379,8 +371,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -391,6 +381,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,
@ -533,8 +524,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -543,8 +532,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -555,6 +542,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,
@ -697,8 +685,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -707,8 +693,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -719,6 +703,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,
@ -861,8 +846,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -871,8 +854,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -883,6 +864,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,
@ -1025,8 +1007,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -1035,8 +1015,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -1047,6 +1025,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,
@ -1189,8 +1168,6 @@ namespace PHPSTORM_META {
'Maatwebsite\Excel\Transactions\TransactionManager' => \Maatwebsite\Excel\Transactions\TransactionManager::class,
'NunoMaduro\Collision\Contracts\Adapters\Phpunit\Listener' => \NunoMaduro\Collision\Adapters\Phpunit\Listener::class,
'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class,
'Psr\Http\Message\ResponseInterface' => \Zend\Diactoros\Response::class,
'Psr\Http\Message\ServerRequestInterface' => \Zend\Diactoros\ServerRequest::class,
'Reliese\Coders\Model\Factory' => \Reliese\Coders\Model\Factory::class,
'auth' => \Illuminate\Auth\AuthManager::class,
'auth.driver' => \Illuminate\Auth\SessionGuard::class,
@ -1199,8 +1176,6 @@ namespace PHPSTORM_META {
'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class,
'cache' => \Illuminate\Cache\CacheManager::class,
'cache.store' => \Illuminate\Cache\Repository::class,
'command.app.name' => \Illuminate\Foundation\Console\AppNameCommand::class,
'command.auth.make' => \Illuminate\Auth\Console\AuthMakeCommand::class,
'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class,
'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class,
'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class,
@ -1211,6 +1186,7 @@ namespace PHPSTORM_META {
'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class,
'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class,
'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class,
'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class,
'command.debugbar.clear' => \Barryvdh\Debugbar\Console\ClearCommand::class,
'command.down' => \Illuminate\Foundation\Console\DownCommand::class,
'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class,

File diff suppressed because it is too large Load diff

View file

@ -198,6 +198,8 @@ namespace App\Models\Sym{
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText4($value)
* @property array|null $contact_lands
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactLands($value)
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Booking[] $bookings
* @property-read int|null $bookings_count
*/
class TravelCountry extends \Eloquent {}
}
@ -2184,6 +2186,7 @@ namespace App\Models{
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Lead whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Lead whereWebsiteId($value)
* @mixin \Eloquent
* @property-read \App\Models\Sym\TravelCountry|null $travel_country_crm
*/
class Lead extends \Eloquent {}
}

View file

@ -141,7 +141,6 @@ class CMSContentController extends Controller
public function makeNaviTree(IQContentTree $iq_content_tree, $urlArray = [], $url = "", $lvl = 0, $parent_id = false)
{
$link = false;
if (!empty($urlArray[$lvl])) {
$link = ($urlArray[$lvl]);

View file

@ -8,6 +8,7 @@ use App\Models\Draft;
use App\Models\TravelProgram;
use Carbon\Carbon;
use HTMLHelper;
use Request;
class DraftController extends Controller
@ -49,7 +50,7 @@ class DraftController extends Controller
}
if ($action === "create_drafts_from_fewo") {
$data = \Input::all();
$data = Request::all();
$start_date = Carbon::parse($data['startDateStr']);
$end_date = Carbon::parse($data['endDateStr']);
$pos = 0;

View file

@ -7,7 +7,7 @@ use App\Mail\MailSendFeWoService;
use App\Models\TravelUser;
use App\Models\TravelUserBookingFewo;
use Illuminate\Support\Facades\Mail;
use Input;
use Request;
use Validator;
class FewoController extends Controller
@ -24,7 +24,7 @@ class FewoController extends Controller
{
if ($action == "create_travel_users") {
$data = \Input::all();
$data = Request::all();
if(!isset($data['travel_user']) && !is_array($data['travel_user'])) {
return response()->json(['error' => 'travel_user not exist, but need'], $this->errorStatus);
}
@ -77,7 +77,7 @@ class FewoController extends Controller
if ($action == "create_fewo_booking") {
$data = \Input::all();
$data = Request::all();
if(!isset($data['travel_user_booking_fewo']) && !is_array($data['travel_user_booking_fewo'])) {
return response()->json(['error' => 'travel_user_booking_fewo not exist, but need'], $this->errorStatus);
}

View file

@ -2,7 +2,7 @@
namespace App\Http\Controllers\API;
use Illuminate\Http\Request;
use Request;
use App\Http\Controllers\Controller;
use App\User;
use Illuminate\Support\Facades\Auth;

View file

@ -13,7 +13,6 @@ use App\Services\Util;
use Carbon\Carbon;
use HTMLHelper;
use Illuminate\Validation\Rules\In;
use Input;
use Maatwebsite\Excel\Facades\Excel;
use Request;
use Response;
@ -45,21 +44,21 @@ class ReportController extends Controller
public function providersExport(){
$query = ServiceProviderEntry::with('booking', 'service_provider', 'booking.customer');
if(Input::get('filter_is_cleared') != ""){
$query->where('is_cleared', '=', Input::get('filter_is_cleared'));
if(Request::get('filter_is_cleared') != ""){
$query->where('is_cleared', '=', Request::get('filter_is_cleared'));
}
if(Input::get('filter_service_provider_id') != ""){
$query->where('service_provider_id', '=', Input::get('filter_service_provider_id'));
if(Request::get('filter_service_provider_id') != ""){
$query->where('service_provider_id', '=', Request::get('filter_service_provider_id'));
}
if(Input::get('filter_travel_date_from') != ""){
if(Request::get('filter_travel_date_from') != ""){
$query->whereHas('booking', function ($q) {
$travel_date_from = Carbon::parse(Input::get('filter_travel_date_from'))->format("Y-m-d");
$travel_date_from = Carbon::parse(Request::get('filter_travel_date_from'))->format("Y-m-d");
$q->where("start_date", '>=', $travel_date_from);
});
}
if(Input::get('filter_travel_date_to') != ""){
if(Request::get('filter_travel_date_to') != ""){
$query->whereHas('booking', function ($q) {
$travel_date_to = Carbon::parse(Input::get('filter_travel_date_to'))->format("Y-m-d");
$travel_date_to = Carbon::parse(Request::get('filter_travel_date_to'))->format("Y-m-d");
$q->where("start_date", '<=', $travel_date_to);
});
}
@ -71,7 +70,7 @@ class ReportController extends Controller
$filename = "file-".date('Y-m-d-H-i-s');
$exports = $query->get();
$columns = [];
if(Input::get('export') === "export"){
if(Request::get('export') === "export"){
$filename = "Export_".date('Y-m-d-H-i-s');
$headers = array(
@ -114,7 +113,7 @@ class ReportController extends Controller
$isset[] = $export->booking->lead_id;
}
}
if(Input::get('export') === "export_lt"){
if(Request::get('export') === "export_lt"){
$filename = "Export_LT_".date('Y-m-d-H-i-s');
$headers = array(
@ -162,21 +161,21 @@ class ReportController extends Controller
$query = ServiceProviderEntry::with('booking', 'service_provider', 'booking.customer');
if(Input::get('filter_is_cleared') != ""){
$query->where('is_cleared', '=', Input::get('filter_is_cleared'));
if(Request::get('filter_is_cleared') != ""){
$query->where('is_cleared', '=', Request::get('filter_is_cleared'));
}
if(Input::get('filter_service_provider_id') != ""){
$query->where('service_provider_id', '=', Input::get('filter_service_provider_id'));
if(Request::get('filter_service_provider_id') != ""){
$query->where('service_provider_id', '=', Request::get('filter_service_provider_id'));
}
if(Input::get('filter_travel_date_from') != ""){
if(Request::get('filter_travel_date_from') != ""){
$query->whereHas('booking', function ($q) {
$travel_date_from = Carbon::parse(Input::get('filter_travel_date_from'))->format("Y-m-d");
$travel_date_from = Carbon::parse(Request::get('filter_travel_date_from'))->format("Y-m-d");
$q->where("start_date", '>=', $travel_date_from);
});
}
if(Input::get('filter_travel_date_to') != ""){
if(Request::get('filter_travel_date_to') != ""){
$query->whereHas('booking', function ($q) {
$travel_date_to = Carbon::parse(Input::get('filter_travel_date_to'))->format("Y-m-d");
$travel_date_to = Carbon::parse(Request::get('filter_travel_date_to'))->format("Y-m-d");
$q->where("start_date", '<=', $travel_date_to);
});
}

View file

@ -10,13 +10,10 @@ use App\Repositories\UserRepository;
use App\Services\HTMLHelper;
use App\User;
use Illuminate\Support\Facades\Mail;
use Input;
use Request;
use Validator;
use DataTables;
class AdminUserController extends Controller
{
protected $userRepo;
@ -63,7 +60,7 @@ class AdminUserController extends Controller
public function store()
{
$data = Input::all();
$data = Request::all();
if($data['user_id'] === "new"){
$rules = array(
@ -76,9 +73,9 @@ class AdminUserController extends Controller
'name' => 'required'
);
}
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withInput(Input::all())->withErrors($validator);
return back()->withRequest(Request::all())->withErrors($validator);
}
if($data['user_id'] === "new"){
@ -140,7 +137,7 @@ class AdminUserController extends Controller
public function updateModal($step = false){
if($step == 'user'){
$data = Input::all();
$data = Request::all();
$user = User::findOrFail($data['id']);
$user->permissions = isset($data['permissions']) ? $data['permissions'] : [];

View file

@ -5,7 +5,7 @@ namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Http\Request;
use Illuminate\Http\Request;;
class LoginController extends Controller

View file

@ -4,7 +4,7 @@ namespace App\Http\Controllers\Auth;
use App\User;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Request;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator;
use Illuminate\Foundation\Auth\RegistersUsers;

View file

@ -5,7 +5,7 @@ namespace App\Http\Controllers;
use App\Models\Booking;
use App\Models\BookingDraftItem;
use App\Repositories\BookingRepository;
use Input;
use Request;
class BookingController extends Controller
{
@ -50,7 +50,7 @@ class BookingController extends Controller
// \Session()->flash('alert-save', '1');
$data = Input::all();
$data = Request::all();
if($id == "new") {
$booking = new Booking();
}else{

View file

@ -0,0 +1,91 @@
<?php
namespace App\Http\Controllers\CMS;
use App\Http\Controllers\Controller;
use App\Models\CMSAuthor;
use Request;
use Validator;
class CMSContentAuthorController extends Controller
{
/*
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
}
public function index()
{
$data = [
'contents' => CMSAuthor::all()->sortByDesc('id')
];
return view('cms.content.author.index', $data);
}
public function store()
{
$data = Request::all();
$rules = array(
'name' => 'required',
);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withErrors($validator);
}
if($data['id'] === "new"){
CMSAuthor::create($data);
}else{
$model = CMSAuthor::find($data['id']);
$model->fill($data);
$model->save();
}
\Session()->flash('alert-save', '1');
return redirect(route('cms_content_author'));
}
public function loadModal()
{
if(Request::ajax()){
$data = Request::all();
$returnHTML = "";
if(isset($data['model']) && isset($data['id']) ){
if($data['model'] === 'content'){
if($data['id'] === "new"){
$value = new CMSAuthor();
}else {
$value = CMSAuthor::find($data['id']);
}
$returnHTML = view("cms.content.author.modal", compact('data','value') )->render();
}
}
return response()->json(['response' => $data, 'html'=>$returnHTML]);
}
}
public function delete($id){
$content = CMSAuthor::findOrFail($id);
$content->delete();
\Session()->flash('alert-success', __('Autor gelöscht'));
return redirect(route('cms_content_author'));
}
}

View file

@ -5,7 +5,6 @@ namespace App\Http\Controllers\CMS;
use App\Http\Controllers\Controller;
use App\Models\CMSContent;
use Input;
use Request;
use Validator;
@ -35,12 +34,12 @@ class CMSContentController extends Controller
public function store()
{
$data = Input::all();
$data = Request::all();
$rules = array(
'name' => 'required',
'field' => 'required',
);
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withErrors($validator);
@ -69,7 +68,7 @@ class CMSContentController extends Controller
public function loadModal()
{
if(Request::ajax()){
$data = Input::all();
$data = Request::all();
$returnHTML = "";
if(isset($data['model']) && isset($data['id']) ){
if($data['model'] == 'content'){

View file

@ -7,7 +7,6 @@ use App\Http\Controllers\Controller;
use App\Models\CMSContent;
use App\Models\TravelCountry;
use App\Models\TravelNationality;
use Input;
use Request;
use Validator;
@ -53,7 +52,7 @@ class CMSContentCountryController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
if(!isset($data['contact_lands'])){
$data['contact_lands'] = null;
}

View file

@ -9,7 +9,6 @@ use App\Models\CMSInfo;
use App\Models\CMSInfoAvailable;
use App\Models\CMSInfoHoliday;
use App\Services\HTMLHelper;
use Input;
use Request;
use Validator;
@ -40,7 +39,7 @@ class CMSContentInfoController extends Controller
public function store()
{
$data = Input::all();
$data = Request::all();
if($data['action'] === "saveAll"){

View file

@ -6,7 +6,7 @@ namespace App\Http\Controllers\CMS;
use App\Http\Controllers\Controller;
use App\Models\Feedback;
use Carbon\Carbon;
use Input;
use Request;
class CMSFeedbackController extends Controller
{
@ -56,7 +56,7 @@ class CMSFeedbackController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
if($id == "new") {
if(!isset($data['feedback_parent']) && !$data['feedback_parent']) {

View file

@ -5,7 +5,7 @@ namespace App\Http\Controllers\CMS;
use App\Http\Controllers\Controller;
use App\Models\SidebarWidget;
use Input;
use Request;
class CMSSidebarController extends Controller
@ -57,7 +57,7 @@ class CMSSidebarController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
if($id == "new") {
$widget = new SidebarWidget();
}else{

View file

@ -8,10 +8,10 @@ use App\Models\IQContentTree;
use App\Models\IQContentTreeNode;
use App\Models\TravelGuide;
use App\Models\TravelPageGuide;
use AppBundle\Util;
use Gregwar\Image\Image;
use Illuminate\Http\Request;
use Input;
#use AppBundle\Util;
#use Gregwar\Image\Image;
use IqContent\LaravelFilemanager\Lfm;
use Request;
use Validator;
class CMSTravelGuideController extends Controller
@ -44,7 +44,6 @@ class CMSTravelGuideController extends Controller
public function page()
{
//make tree
$data = [
'travel_guide_pages' => TravelPageGuide::getPageGuides(),
@ -56,7 +55,7 @@ class CMSTravelGuideController extends Controller
public function detail($id)
{
if($id == "new") {
if($id === "new") {
$model = new TravelGuide();
$id = 'new';
$model->active = 1;
@ -65,15 +64,15 @@ class CMSTravelGuideController extends Controller
$model = TravelGuide::findOrFail($id);
$id = $model->id;
}
if(Input::get('clean') == "true"){
if(Request::get('clean') === "true"){
$model->full_text = \App\Services\Util::cleanHTML($model->full_text);
}
$data = [
'response_clean' => Request::get('clean'),
'travel_guide' => $model,
'id' => $id,
'lfm_helper' => app(Lfm::class),
];
return view('cms.travel_guide.detail', $data);
@ -83,7 +82,7 @@ class CMSTravelGuideController extends Controller
public function pageDetail($id)
{
if($id == "new") {
if($id === "new") {
/* $model = new TravelGuide();
$id = 'new';
$model->active = 1;
@ -104,13 +103,13 @@ class CMSTravelGuideController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
$data['active'] = isset($data['active']) ? true : false;
$data['scope'] = isset($data['scope']) ? true : false;
$rules = array(
'name' => 'required',
);
if($id != "new") {
if($id !== "new") {
$model = TravelGuide::findOrFail($id);
$rules = array(
@ -121,12 +120,12 @@ class CMSTravelGuideController extends Controller
}
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withErrors($validator);
}
if($id == "new") {
if($id === "new") {
$model = TravelGuide::create($data);
}else{
$model = TravelGuide::findOrFail($id);
@ -141,14 +140,14 @@ class CMSTravelGuideController extends Controller
public function pageStore($id)
{
$data = Input::all();
$data = Request::all();
$data['status'] = isset($data['status']) ? 1 : 0;
$data['show_in_navi'] = isset($data['show_in_navi']) ? 1 : 0;
$rules = array(
'title' => 'required',
);
if($id != "new") {
if($id !== "new") {
$model = TravelPageGuide::findOrFail($id);
$rules = array(
@ -158,12 +157,12 @@ class CMSTravelGuideController extends Controller
}
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withErrors($validator);
}
if($id == "new") {
if($id === "new") {
$model = TravelPageGuide::create($data);
}else{
$model = TravelPageGuide::findOrFail($id);

View file

@ -8,7 +8,6 @@ use Carbon\Carbon;
use Composer\DependencyResolver\Request;
use DataTables;
use App\User;
use Input;
class DataTableController extends Controller
{

View file

@ -5,7 +5,6 @@ namespace App\Http\Controllers;
use App\Models\Draft;
use App\Models\DraftItem;
use App\Models\DraftType;
use Input;
class DraftController extends Controller
{
@ -48,7 +47,7 @@ class DraftController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
if($id == "new") {
$draft = new Draft();
}else{
@ -145,7 +144,7 @@ class DraftController extends Controller
*/
public function typeUpdate(){
$data = Input::all();
$data = Request::all();
if($data['id'] == "new"){
$draft_type = DraftType::create([
'name' => $data['name'],
@ -184,7 +183,7 @@ class DraftController extends Controller
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function loadOldAction(){
$data = Input::all();
$data = Request::all();
$template = \App\Models\Sym\ArrangementTemplate::findOrFail($data['load_old']);
$draft = new Draft();
@ -259,7 +258,7 @@ class DraftController extends Controller
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function loadNewAction(){
$data = Input::all();
$data = Request::all();
$d = Draft::findOrFail($data['load_new']);
$draft = new Draft();
$draft->active = true;

View file

@ -8,7 +8,6 @@ use Auth;
use Carbon\Carbon;
use Config;
use Request;
use Input;
class HomeController extends Controller
{
@ -50,8 +49,8 @@ class HomeController extends Controller
public function loadingModal(){
$data = Input::get('data');
$target = Input::get('target');
$data = Request::get('data');
$target = Request::get('target');
$response = "";
if($data == "data_protection"){

View file

@ -3,7 +3,7 @@
namespace App\Http\Controllers\IQ;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Request;
use IqContent\LaravelFilemanager\Controllers\LfmController;
class ContentAssetController extends LfmController
@ -14,7 +14,18 @@ class ContentAssetController extends LfmController
{
$data = [
'models' => [],
'lfm_helper' => $this->helper,
'modal' => false,
];
return view('iq.content.assets.index', $data)->withHelper($this->helper);
return view('iq.content.assets.index', $data);
}
public function modal(){
$data = [
'models' => [],
'lfm_helper' => $this->helper,
'modal' => true,
];
return view('iq.content.assets.body', $data);
}
}

View file

@ -12,7 +12,6 @@ use App\Models\IQContentTree;
use App\Models\IQContentTreeNode;
use Illuminate\Database\Eloquent\Collection;
use Request;
use Input;
class ContentModalController extends Controller
{
@ -32,8 +31,8 @@ class ContentModalController extends Controller
*/
public function load()
{
if(\Request::ajax()){
$data = Input::all();
if(Request::ajax()){
$data = Request::all();
$ret = "";
if(isset($data['model']) && isset($data['id']) ){
switch ($data['model']){

View file

@ -10,9 +10,8 @@ use App\Models\IQContentTreeNode;
use App\Models\TravelGuide;
use App\Models\TravelPageGuide;
use App\Repositories\IQ\ContentSiteRepository;
use Illuminate\Http\Request;
use Illuminate\Support\Collection;
use Input;
use Request;
use Validator;
class ContentTreeController extends Controller
@ -147,7 +146,7 @@ class ContentTreeController extends Controller
public function store($id, $node_id = false, $area_section_id = false)
{
$data = Input::all();
$data = Request::all();
//from ajax
if(isset($data['action'])){
@ -193,7 +192,7 @@ class ContentTreeController extends Controller
$rules = array(
'name' => 'required',
);
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withErrors($validator);
}
@ -278,6 +277,42 @@ class ContentTreeController extends Controller
}
public function delete($id, $node_id = false, $section_id = false){
//TODO delete Node not the tree....
$model = IQContentTree::findOrFail($id);
$tree_node = IQContentTreeNode::find($node_id);
if($tree_node){
$this->recrusiveDelete($id, $tree_node->id);
$tree_node->delete();
\Session()->flash('alert-success', __('Tree Node gelöscht'));
}
return redirect(route('iq_content_tree_detail', [$id]));
}
public function recrusiveDelete($id, $node_id = false, $section_id = false){
$model = IQContentTree::findOrFail($id);
$tree_node = IQContentTreeNode::find($node_id);
if($tree_node){
if($tree_node->iq_content_tree_node_childs->count()){
foreach ($tree_node->iq_content_tree_node_childs as $child){
$this->recrusiveDelete($id, $child->id);
$child->delete();
}
}
if($tree_node->iq_content_sites->count()){
foreach ($tree_node->iq_content_sites as $site){
$site->delete();
}
}
}
}
public function removeSite($id, $node_id, $travel_guide_id, $r=false){
$model = IQContentTree::findOrFail($id);
$tree_node = IQContentTreeNode::findOrFail($node_id);

View file

@ -4,11 +4,10 @@ namespace App\Http\Controllers\IQ\Tools;
use App\Http\Controllers\Controller;
use App\Models\IQContentSite;
use App\Models\IQContentSiteField;
use App\Models\IQContentTree;
use App\Models\IQContentTreeNode;
use App\Models\TravelGuide;
use Input;
use Request;
use Validator;
class ContentLinkController extends Controller
@ -96,7 +95,7 @@ class ContentLinkController extends Controller
public function readNodeAndSaveToTree(){
$input = Input::all();
$input = Request::all();
$ret = [];
if(isset($input['text'])){
$out = $this->ul_to_array($input['text']);
@ -226,7 +225,7 @@ class ContentLinkController extends Controller
$iqContentTree = IQContentTree::find(2);
$this->makeTree($iqContentTree);
$input = Input::all();
$input = Request::all();
$ret = [];
if(isset($input['text'])){

View file

@ -6,7 +6,7 @@ use App\Models\Booking;
use App\Models\Sym\TravelCountry;
use App\Models\TravelAgenda;
use Carbon\Carbon;
use Input;
use Request;
use DataTables;
class RequestController extends Controller
@ -49,32 +49,32 @@ class RequestController extends Controller
$query = Booking::where('lead_id', '!=', NULL);
if(Input::get('full_firstname_search') != ""){
$query->where('participant_firstname', 'LIKE', '%'.Input::get('full_firstname_search').'%');
if(Request::get('full_firstname_search') != ""){
$query->where('participant_firstname', 'LIKE', '%'.Request::get('full_firstname_search').'%');
}
if(Input::get('full_lastname_search') != ""){
$query->where('participant_name', 'LIKE', '%'.Input::get('full_lastname_search').'%');
if(Request::get('full_lastname_search') != ""){
$query->where('participant_name', 'LIKE', '%'.Request::get('full_lastname_search').'%');
}
if(Input::get('travel_option_country_id') != ""){
$country_ids = TravelCountry::where('contact_lands', 'LIKE', '%"'.Input::get('travel_option_country_id').'"%')->get()->pluck('id');
$country_ids[] = Input::get('travel_option_country_id');
if(Request::get('travel_option_country_id') != ""){
$country_ids = TravelCountry::where('contact_lands', 'LIKE', '%"'.Request::get('travel_option_country_id').'"%')->get()->pluck('id');
$country_ids[] = Request::get('travel_option_country_id');
$query->whereIn('travel_country_id', $country_ids);
}
if(Input::get('travel_option_agenda_id') != ""){
$query->where('travelagenda_id', '=', Input::get('travel_option_agenda_id'));
if(Request::get('travel_option_agenda_id') != ""){
$query->where('travelagenda_id', '=', Request::get('travel_option_agenda_id'));
}
// $query->where('end_date', '<=', $now);
if(Input::get('travel_option_search')){
if(Request::get('travel_option_search')){
$now = Carbon::now();
switch (Input::get('travel_option_search')){
switch (Request::get('travel_option_search')){
case 'before_2':
$query->whereBetween('start_date', [Carbon::now()->modify('-2 month'), $now]);
@ -99,14 +99,14 @@ class RequestController extends Controller
}else{
$start = null;
$end = null;
if(Input::get('arrival_start_date') != ""){
$arrStart = explode(".", Input::get('arrival_start_date'));
if(Request::get('arrival_start_date') != ""){
$arrStart = explode(".", Request::get('arrival_start_date'));
if(count($arrStart) == 3){
$start = Carbon::create($arrStart[2], $arrStart[1], $arrStart[0], 0, 0, 0);
}
}
if(Input::get('arrival_end_date') != ""){
$arrEnd = explode(".", Input::get('arrival_end_date'));
if(Request::get('arrival_end_date') != ""){
$arrEnd = explode(".", Request::get('arrival_end_date'));
if(count($arrEnd) == 3){
$end = Carbon::create($arrEnd[2], $arrEnd[1], $arrEnd[0], 23, 59, 59);
}
@ -123,14 +123,14 @@ class RequestController extends Controller
$start = null;
$end = null;
if(Input::get('departure_start_date') != ""){
$arrStart = explode(".", Input::get('departure_start_date'));
if(Request::get('departure_start_date') != ""){
$arrStart = explode(".", Request::get('departure_start_date'));
if(count($arrStart) == 3){
$start = Carbon::create($arrStart[2], $arrStart[1], $arrStart[0], 0, 0, 0);
}
}
if(Input::get('departure_end_date') != ""){
$arrEnd = explode(".", Input::get('departure_end_date'));
if(Request::get('departure_end_date') != ""){
$arrEnd = explode(".", Request::get('departure_end_date'));
if(count($arrEnd) == 3){
$end = Carbon::create($arrEnd[2], $arrEnd[1], $arrEnd[0], 23, 59, 59);
}
@ -148,27 +148,27 @@ class RequestController extends Controller
if(Input::get('sort_travel_country_id') != ""){
$query->where('travel_country_id', '=', Input::get('sort_travel_country_id'));
if(Request::get('sort_travel_country_id') != ""){
$query->where('travel_country_id', '=', Request::get('sort_travel_country_id'));
}
if(Input::get('sort_travelagenda_id') != ""){
$query->where('travelagenda_id', '=', Input::get('sort_travelagenda_id'));
if(Request::get('sort_travelagenda_id') != ""){
$query->where('travelagenda_id', '=', Request::get('sort_travelagenda_id'));
}
if(Input::get('sort_sf_guard_user_id') != ""){
$query->where('sf_guard_user_id', '=', Input::get('sort_sf_guard_user_id'));
if(Request::get('sort_sf_guard_user_id') != ""){
$query->where('sf_guard_user_id', '=', Request::get('sort_sf_guard_user_id'));
}
if(Input::get('sort_travel_documents') != ""){
$query->where('travel_documents', '=', Input::get('sort_travel_documents'));
if(Request::get('sort_travel_documents') != ""){
$query->where('travel_documents', '=', Request::get('sort_travel_documents'));
}
if(Input::get('full_lead_id_search') != ""){
$query->where('lead_id', 'LIKE', '%'.Input::get('full_lead_id_search'). '%');
if(Request::get('full_lead_id_search') != ""){
$query->where('lead_id', 'LIKE', '%'.Request::get('full_lead_id_search'). '%');
}
if(Input::get('full_booking_id_search') != ""){
$query->where('id', 'LIKE', '%'.Input::get('full_booking_id_search').'%');
if(Request::get('full_booking_id_search') != ""){
$query->where('id', 'LIKE', '%'.Request::get('full_booking_id_search').'%');
}
return $query;
}

View file

@ -0,0 +1,60 @@
<?php
namespace App\Http\Controllers\Settings;
use App\Http\Controllers\Controller;
use App\Models\Booking;
use App\Models\Keyword;
use App\Models\TravelAgenda;
use Request;
class KeywordController extends Controller
{
public function __construct()
{
$this->middleware('admin');
}
public function index($step = false)
{
$data = [
'keywords' => Keyword::all(),
];
return view('settings.keywords.index', $data);
}
public function update(){
$data = Request::all();
if($data['id'] === "new"){
$model = Keyword::create([
'name' => $data['name'],
]);
}else{
$model = Keyword::find($data['id']);
$model->name = $data['name'];
$model->save();
}
\Session()->flash('alert-save', '1');
return redirect(route('admin_settings_keyword'));
}
public function delete($id){
//TODO check ist linked
/*if(Booking::where('travelagenda_id', $id)->count()){
\Session()->flash('alert-error', 'Eintrag wird verwendet');
return redirect()->back();
}*/
$model = Keyword::findOrFail($id);
$model->delete();
\Session()->flash('alert-success', 'Eintrag gelöscht');
return redirect()->back();
}
}

View file

@ -6,12 +6,7 @@ use App\Http\Controllers\Controller;
use App\Models\Booking;
use App\Models\TravelAgenda;
use App\Models\TravelCountry;
use App\Models\TravelNationality;
use App\Models\TravelNationalityRequirement;
use Carbon\Carbon;
use HTMLHelper;
use Input;
use Request;
class TravelAgendaController extends Controller
{
@ -32,7 +27,7 @@ class TravelAgendaController extends Controller
public function update(){
$data = Input::all();
$data = Request::all();
if($data['id'] == "new"){
$model = TravelAgenda::create([
'name' => $data['name'],

View file

@ -6,10 +6,7 @@ use App\Http\Controllers\Controller;
use App\Models\TravelCountry;
use App\Models\TravelNationality;
use App\Models\TravelNationalityRequirement;
use Carbon\Carbon;
use HTMLHelper;
use Input;
use Request;
class TravelCountryController extends Controller
{
@ -49,7 +46,7 @@ class TravelCountryController extends Controller
public function store(){
$data = Input::all();
$data = Request::all();
$data['is_customer_country'] = isset($data['is_customer_country']) ? true : false;
$data['active_frontend'] = isset($data['active_frontend']) ? true : false;
$data['active_backend'] = isset($data['active_backend']) ? true : false;

View file

@ -4,12 +4,9 @@ namespace App\Http\Controllers\Settings;
use App\Http\Controllers\Controller;
use App\Models\TravelCountry;
use App\Models\TravelNationality;
use App\Models\TravelNationalityRequirement;
use Carbon\Carbon;
use HTMLHelper;
use Input;
use Request;
class TravelNationalityController extends Controller
{
@ -30,7 +27,7 @@ class TravelNationalityController extends Controller
public function update(){
$data = Input::all();
$data = Request::all();
if($data['id'] == "new"){
$model = TravelNationality::create([
'name' => $data['name'],

View file

@ -8,7 +8,7 @@ use App\Models\IQContentSiteField;
use App\Models\IQContentTree;
use App\Models\IQContentTreeNode;
use App\Models\TravelGuide;
use Input;
use Request;
use Validator;
class ContentLinkController extends Controller
@ -192,7 +192,7 @@ class ContentLinkController extends Controller
public function readNodeAndSaveToTree(){
$input = Input::all();
$input = Request::all();
$ret = [];
if(isset($input['text'])){
$out = $this->ul_to_array($input['text']);
@ -322,7 +322,7 @@ class ContentLinkController extends Controller
$iqContentTree = IQContentTree::find(2);
$this->makeTree($iqContentTree);
$input = Input::all();
$input = Request::all();
$ret = [];
if(isset($input['text'])){

View file

@ -4,7 +4,7 @@ namespace App\Http\Controllers;
use App;
use File;
use Input;
use Request;
class TranslationController extends Controller
{
@ -63,7 +63,7 @@ class TranslationController extends Controller
$path = $this->resourcePath($this->languagesPath);
$file = $path.$language.".json";
$data = Input::all();
$data = Request::all();
$this->backup($path, $language.".json");
unset($data['_token']);

View file

@ -1,9 +1,5 @@
<?php
//use Input;
//use Request;
namespace App\Http\Controllers;
use App;

View file

@ -6,7 +6,7 @@ use App\Models\TravelClass;
use App\Models\TravelProgram;
use App\Models\TravelProgramDraft;
use App\Repositories\TravelProgramRepository;
use Input;
use Request;
class TravelProgramController extends Controller
{
@ -48,7 +48,7 @@ class TravelProgramController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
$program = $this->travelProgramRepo->update($data);
\Session()->flash('alert-save', '1');
return redirect(route('travel_program_detail', [$program->id]));
@ -63,7 +63,7 @@ class TravelProgramController extends Controller
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function classUpdate(){
$data = Input::all();
$data = Request::all();
$this->travelProgramRepo->updateClass($data);
\Session()->flash('alert-save', '1');
return redirect(route('travel_program_detail', [$data['program_id']]));
@ -89,7 +89,7 @@ class TravelProgramController extends Controller
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function draftUpdate(){
$data = Input::all();
$data = Request::all();
$this->travelProgramRepo->updateDraft($data);
\Session()->flash('alert-save', '1');
return redirect(route('travel_program_detail', [$data['travel_program_id']]));

View file

@ -12,7 +12,7 @@ use App\Models\TravelUserBookingFewo;
use App\Repositories\TravelUserBookingFewoRepository;
use App\Services\Util;
use Illuminate\Support\Facades\Mail;
use Input;
use Request;
class TravelUserBookingFewoController extends Controller
{
@ -69,18 +69,18 @@ class TravelUserBookingFewoController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
if($data['action'] == 'saveAll'){
return $this->userBookingFewoRepo->update($id, $data);
}
if($data['action'] == 'createInvoice'){
if(!TravelUserBookingFewo::find($id)){
\Session()->flash('alert-error', __('Buchung nicht gefunden.'));
return back()->withInput(Input::all());
return back()->withRequest(Request::all());
}
$ret = $this->userBookingFewoRepo->check($id, $data);
if($ret['success'] == false){
return back()->withInput(Input::all())->withErrors($ret['error']);
return back()->withRequest(Request::all())->withErrors($ret['error']);
}
if($ret['success'] == true){
$this->userBookingFewoRepo->createInvoicePDF($id);
@ -92,11 +92,11 @@ class TravelUserBookingFewoController extends Controller
if($data['action'] == 'createTravelInfo'){
if(!TravelUserBookingFewo::find($id)){
\Session()->flash('alert-error', __('Buchung nicht gefunden.'));
return back()->withInput(Input::all());
return back()->withRequest(Request::all());
}
$ret = $this->userBookingFewoRepo->check($id, $data);
if($ret['success'] == false){
return back()->withInput(Input::all())->withErrors($ret['error']);
return back()->withRequest(Request::all())->withErrors($ret['error']);
}
if($ret['success'] == true){
$this->userBookingFewoRepo->createTravelInfoPDF($id, $data['info_mail_text']);
@ -110,9 +110,9 @@ class TravelUserBookingFewoController extends Controller
$travel_user_booking_fewo = TravelUserBookingFewo::findOrFail($id);
if($travel_user_booking_fewo->travel_user_id && $travel_user_booking_fewo->travel_user->email){
$mail_bbc = config('mail.mail_bbc');
Mail::to($travel_user_booking_fewo->travel_user->email)->bcc($mail_bbc)->send(new MailSendFeWoInvoice($travel_user_booking_fewo, Input::get('send_mail_user_notice')));
Mail::to($travel_user_booking_fewo->travel_user->email)->bcc($mail_bbc)->send(new MailSendFeWoInvoice($travel_user_booking_fewo, Request::get('send_mail_user_notice')));
$send_user_mail = $travel_user_booking_fewo->send_user_mail;
$send_user_mail[] = [date('H:i d.m.Y') => $travel_user_booking_fewo->travel_user->email." ".Input::get('send_mail_user_notice')];
$send_user_mail[] = [date('H:i d.m.Y') => $travel_user_booking_fewo->travel_user->email." ".Request::get('send_mail_user_notice')];
$travel_user_booking_fewo->send_user_mail = $send_user_mail;
$travel_user_booking_fewo->save();
\Session()->flash('alert-success', __('E-Mail wurde an den Mieter versendet.'));
@ -138,12 +138,12 @@ class TravelUserBookingFewoController extends Controller
$travel_user_booking_fewo = TravelUserBookingFewo::findOrFail($id);
if($travel_user_booking_fewo){
$mail_bbc = config('mail.mail_bbc');
Mail::to(Input::get('send_mail_service_mail'))->bcc($mail_bbc)->send(new MailSendFeWoService($travel_user_booking_fewo, Input::get('send_mail_service_subject'), Input::get('send_mail_service_content')));
Mail::to(Request::get('send_mail_service_mail'))->bcc($mail_bbc)->send(new MailSendFeWoService($travel_user_booking_fewo, Request::get('send_mail_service_subject'), Request::get('send_mail_service_content')));
$send_service_mail = $travel_user_booking_fewo->send_service_mail;
$send_service_mail[] = ['d' => date('H:i d.m.Y'),
'm'=>Input::get('send_mail_service_mail'),
's'=>Input::get('send_mail_service_subject'),
'c'=>Input::get('send_mail_service_content')];
'm'=>Request::get('send_mail_service_mail'),
's'=>Request::get('send_mail_service_subject'),
'c'=>Request::get('send_mail_service_content')];
$travel_user_booking_fewo->send_service_mail = $send_service_mail;
$travel_user_booking_fewo->save();
@ -155,13 +155,13 @@ class TravelUserBookingFewoController extends Controller
if($data['action'] == 'sendMailtoEmployee') {
$travel_user_booking_fewo = TravelUserBookingFewo::findOrFail($id);
if($travel_user_booking_fewo){
$mails = explode(",", Input::get('send_mail_employee_mail'));
Mail::to($mails)->send(new MailSendFeWoService($travel_user_booking_fewo, Input::get('send_mail_employee_subject'), Input::get('send_mail_employee_content')));
$mails = explode(",", Request::get('send_mail_employee_mail'));
Mail::to($mails)->send(new MailSendFeWoService($travel_user_booking_fewo, Request::get('send_mail_employee_subject'), Request::get('send_mail_employee_content')));
$send_employee_mail = $travel_user_booking_fewo->send_employee_mail;
$send_employee_mail[] = ['d' => date('H:i d.m.Y'),
'm'=>Input::get('send_mail_employee_mail'),
's'=>Input::get('send_mail_employee_subject'),
'c'=>Input::get('send_mail_employee_content')];
'm'=>Request::get('send_mail_employee_mail'),
's'=>Request::get('send_mail_employee_subject'),
'c'=>Request::get('send_mail_employee_content')];
$travel_user_booking_fewo->send_employee_mail = $send_employee_mail;
$travel_user_booking_fewo->save();

View file

@ -4,7 +4,7 @@ namespace App\Http\Controllers;
use App\Models\TravelUser;
use Input;
use Request;
use Validator;
class TravelUserController extends Controller
@ -43,7 +43,7 @@ class TravelUserController extends Controller
public function store($id)
{
$data = Input::all();
$data = Request::all();
$rules = array(
'salutation_id' => 'required',
@ -58,10 +58,10 @@ class TravelUserController extends Controller
$rules['email'] = 'required|string|email|max:255|unique:mysql_stern.travel_users,email,'.$model->id;
}
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withInput(Input::all())->withErrors($validator);
return back()->withRequest(Request::all())->withErrors($validator);
}
if($id == "new") {

View file

@ -4,7 +4,7 @@
namespace App\Http\Controllers;
use App\Repositories\UserRepository;
use Auth;
use Input;
use Request;
use Validator;
@ -41,12 +41,12 @@ class UserDataController extends Controller
$rules = array(
'name' => 'required'
);
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withInput(Input::all())->withErrors($validator);
return back()->withRequest(Request::all())->withErrors($validator);
} else {
$data = Input::all();
$data = Request::all();
$user->name = $data['name'];
$user->save();
\Session()->flash('alert-save', true);
@ -60,7 +60,7 @@ class UserDataController extends Controller
public function userDataAcceptedForm(){
$user = Auth::user();
if(Input::get('sender_accepted_infos') == "on"){
if(Request::get('sender_accepted_infos') == "on"){
$user->agreement = now();
}else {
$user->agreement = null;

View file

@ -5,8 +5,7 @@ namespace App\Http\Controllers;
use Auth;
use Validator;
use Input;
use Illuminate\Http\Request;
use Request;
use Illuminate\Support\Facades\Hash;
use App\Repositories\UserRepository;
@ -53,7 +52,7 @@ class UserDeleteController extends Controller
});
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {

View file

@ -6,11 +6,9 @@ namespace App\Http\Controllers;
use App\User;
use Auth;
use Validator;
use Input;
use Request;
use Carbon\Carbon;
use Illuminate\Database\Connection;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Mail\ReportExport;
use Illuminate\Support\Facades\Mail;
@ -52,7 +50,7 @@ class UserUpdateEmailController extends Controller
return true;
});
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
// redirect our user back to the form with the errors from the validator
$messages = $validator->messages();
@ -104,7 +102,7 @@ class UserUpdateEmailController extends Controller
return true;
});
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
// redirect our user back to the form with the errors from the validator
$messages = $validator->messages();

View file

@ -6,8 +6,7 @@ namespace App\Http\Controllers;
use Auth;
use Illuminate\Support\Facades\Hash;
use Validator;
use Input;
use Illuminate\Http\Request;
use Request;
class UserUpdatePasswordController extends Controller
@ -45,7 +44,7 @@ class UserUpdatePasswordController extends Controller
});
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
@ -91,7 +90,7 @@ class UserUpdatePasswordController extends Controller
);
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {

31
app/Models/CMSAuthor.php Normal file
View file

@ -0,0 +1,31 @@
<?php
/**
* Created by Reliese Model.
*/
namespace App\Models;
use Carbon\Carbon;
use Reliese\Database\Eloquent\Model;
/**
* Class CMSAuthor
*
* @property int $id
* @property string $name
* @property Carbon $created_at
* @property Carbon $updated_at
*
* @package App\Models
*/
class CMSAuthor extends Model
{
protected $connection = 'mysql_stern';
protected $table = 'c_m_s_authors';
protected $fillable = [
'name'
];
}

View file

@ -122,6 +122,12 @@ class IQContentTreeNode extends Model
}
}
public function getUrl(){
return config('app.url_stern')."/".$this->getUri();
}
public function getUri(){
$root = $this->iq_content_tree->identifier."/";

31
app/Models/Keyword.php Normal file
View file

@ -0,0 +1,31 @@
<?php
/**
* Created by Reliese Model.
*/
namespace App\Models;
use Carbon\Carbon;
use Reliese\Database\Eloquent\Model;
/**
* Class Keyword
*
* @property int $id
* @property string $name
* @property Carbon $created_at
* @property Carbon $updated_at
*
* @package App\Models
*/
class Keyword extends Model
{
protected $connection = 'mysql_stern';
protected $table = 'keywords';
protected $fillable = [
'name'
];
}

View file

@ -90,6 +90,7 @@ use Reliese\Database\Eloquent\Model;
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Lead whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Lead whereWebsiteId($value)
* @mixin \Eloquent
* @property-read \App\Models\Sym\TravelCountry|null $travel_country_crm
*/
class Lead extends Model
{

View file

@ -36,6 +36,8 @@ use Illuminate\Database\Eloquent\Model;
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText4($value)
* @property array|null $contact_lands
* @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactLands($value)
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Booking[] $bookings
* @property-read int|null $bookings_count
*/
class TravelCountry extends Model
{

View file

@ -67,7 +67,7 @@ class TravelGuide extends Model
];
protected $fillable = [
'name', 'slug', 'text', 'full_text', 'keyword', 'meta_title', 'meta_description', 'meta_keywords', 'country_id', 'box_image_url', 'pos', 'scope', 'active',
'name', 'slug', 'text', 'full_text', 'author_id', 'keyword', 'meta_title', 'meta_description', 'meta_keywords', 'country_id', 'box_image_url', 'pos', 'scope', 'active',
];
@ -93,8 +93,13 @@ class TravelGuide extends Model
return $iq_content_site->iq_content_tree_node;
}
}
return false;
}
public function author()
{
return $this->belongsTo('App\Models\Author', 'author_id', 'id');
}
public static function getScopeOptions($setKey = false){
$options = self::$scopes;

View file

@ -124,6 +124,7 @@ class TravelProgram extends Model
'subtitle',
'program_code',
'weekdays',
'keywords',
'status',
];
@ -142,6 +143,12 @@ class TravelProgram extends Model
return $this->hasOne('App\Models\TravelProgramCountry', 'program_id', 'id');
}
public function hasTravelProgramDrafts (){
if($this->travel_program_drafts->count()){
return true;
}
return false;
}
public function getWeekdaysArray(){
if($this->weekdays){
return explode(',', $this->weekdays);

View file

@ -14,7 +14,7 @@ use App\Models\TravelUserBookingFewo;
use App\Services\Util;
use PDF;
use Carbon\Carbon;
use Input;
use Request;
use Storage;
use Validator;
@ -99,7 +99,7 @@ class TravelUserBookingFewoRepository extends BaseRepository {
'status' => 'required'
);
// $rules['email'] = 'required|string|email|max:255|unique:.travel_users,email,'.$model->id;
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return ['success' => false, 'error' => $validator];
}
@ -166,7 +166,7 @@ class TravelUserBookingFewoRepository extends BaseRepository {
foreach ($fewos as $fewo){
$error[] = "Reservierung gefunden: ".$fewo->from_date->format('d.m.Y')." - ".$fewo->to_date->format('d.m.Y');
}
return back()->withInput(Input::all())->withErrors($error);
return back()->withRequest(Request::all())->withErrors($error);
}
}
@ -180,14 +180,14 @@ class TravelUserBookingFewoRepository extends BaseRepository {
'status' => 'required'
);
if($fewo_reservation_id > 0 && $model && Input::get('invoice_number')){
if($fewo_reservation_id > 0 && $model && Request::get('invoice_number')){
$rules['invoice_number'] = 'required|unique:mysql_stern.travel_user_booking_fewos,invoice_number,'.$model->id;
}
$validator = Validator::make(Input::all(), $rules);
$validator = Validator::make(Request::all(), $rules);
if ($validator->fails()) {
return back()->withInput(Input::all())->withErrors($validator);
return back()->withRequest(Request::all())->withErrors($validator);
}
$data['is_calendar_fewo_direct'] = isset($data['is_calendar_fewo_direct']) ? true : false;

View file

@ -1,6 +1,7 @@
<?php
namespace App\Services;
use App\Models\CMSAuthor;
use App\Models\Country;
use App\Models\Draft;
use App\Models\DraftType;
@ -210,6 +211,17 @@ class HTMLHelper
return $ret;
}
public static function getAuthorOptions($setId = false){
$options = CMSAuthor::orderBy('id', "DESC")->get();
$ret = "";
foreach ($options as $option){
$attr = ($option->id === $setId) ? 'selected="selected"' : '';
$ret .= '<option value="'.$option->id.'" '.$attr.'>'.$option->name.'</option>\n';
}
return $ret;
}
public static function getTravelClassOptions($programId = false, $setId = false){
$options = TravelClass::where('program_id', $programId)->get();
$ret = '<option value="">alle Kategorien</option>\n';

Binary file not shown.

BIN
archiv.tar.gz Normal file

Binary file not shown.

View file

@ -68,25 +68,30 @@
9 => 'Illuminate\\View\\ViewServiceProvider',
10 => 'Barryvdh\\Debugbar\\ServiceProvider',
11 => 'Barryvdh\\DomPDF\\ServiceProvider',
12 => 'Cviebrock\\EloquentSluggable\\ServiceProvider',
13 => 'Fideloper\\Proxy\\TrustedProxyServiceProvider',
14 => 'Intervention\\Image\\ImageServiceProvider',
15 => 'IqContent\\LaravelFilemanager\\LaravelFilemanagerServiceProvider',
16 => 'Jenssegers\\Date\\DateServiceProvider',
17 => 'Laracasts\\Flash\\FlashServiceProvider',
18 => 'Laravel\\Passport\\PassportServiceProvider',
19 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
20 => 'Carbon\\Laravel\\ServiceProvider',
21 => 'Yajra\\DataTables\\DataTablesServiceProvider',
22 => 'Laravel\\Passport\\PassportServiceProvider',
23 => 'App\\Providers\\AppServiceProvider',
24 => 'App\\Providers\\AuthServiceProvider',
25 => 'App\\Providers\\EventServiceProvider',
26 => 'App\\Providers\\RouteServiceProvider',
27 => 'Jenssegers\\Date\\DateServiceProvider',
28 => 'Intervention\\Image\\ImageServiceProvider',
29 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
30 => 'Yajra\\DataTables\\DataTablesServiceProvider',
12 => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider',
13 => 'Cviebrock\\EloquentSluggable\\ServiceProvider',
14 => 'Fideloper\\Proxy\\TrustedProxyServiceProvider',
15 => 'Intervention\\Image\\ImageServiceProvider',
16 => 'IqContent\\LaravelFilemanager\\LaravelFilemanagerServiceProvider',
17 => 'Jenssegers\\Date\\DateServiceProvider',
18 => 'Laracasts\\Flash\\FlashServiceProvider',
19 => 'Laravel\\Passport\\PassportServiceProvider',
20 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
21 => 'Carbon\\Laravel\\ServiceProvider',
22 => 'NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider',
23 => 'Reliese\\Coders\\CodersServiceProvider',
24 => 'Yajra\\DataTables\\DataTablesServiceProvider',
25 => 'Laravel\\Passport\\PassportServiceProvider',
26 => 'App\\Providers\\AppServiceProvider',
27 => 'App\\Providers\\AuthServiceProvider',
28 => 'App\\Providers\\EventServiceProvider',
29 => 'App\\Providers\\RouteServiceProvider',
30 => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider',
31 => 'Jenssegers\\Date\\DateServiceProvider',
32 => 'Intervention\\Image\\ImageServiceProvider',
33 => 'Maatwebsite\\Excel\\ExcelServiceProvider',
34 => 'Yajra\\DataTables\\DataTablesServiceProvider',
35 => 'Reliese\\Coders\\CodersServiceProvider',
),
'deferred' =>
array (
@ -98,6 +103,7 @@
'Illuminate\\Contracts\\Bus\\QueueingDispatcher' => 'Illuminate\\Bus\\BusServiceProvider',
'cache' => 'Illuminate\\Cache\\CacheServiceProvider',
'cache.store' => 'Illuminate\\Cache\\CacheServiceProvider',
'cache.psr6' => 'Illuminate\\Cache\\CacheServiceProvider',
'memcached.connector' => 'Illuminate\\Cache\\CacheServiceProvider',
'command.cache.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.cache.forget' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
@ -105,19 +111,13 @@
'command.auth.resets.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.config.cache' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.config.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.db.wipe' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.down' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.environment' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.event.cache' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.event.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.event.list' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.key.generate' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.fresh' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.install' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.refresh' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.reset' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.rollback' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.status' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.optimize' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.optimize.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.package.discover' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
@ -139,8 +139,6 @@
'command.up' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.view.cache' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.view.clear' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.app.name' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.auth.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.cache.table' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.channel.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.console.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
@ -153,7 +151,6 @@
'command.listener.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.mail.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.middleware.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.model.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.notification.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.notification.table' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
@ -173,6 +170,14 @@
'migrator' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'migration.repository' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'migration.creator' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.fresh' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.install' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.refresh' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.reset' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.rollback' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.status' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'command.migrate.make' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'composer' => 'Illuminate\\Foundation\\Providers\\ConsoleSupportServiceProvider',
'hash' => 'Illuminate\\Hashing\\HashServiceProvider',
'hash.driver' => 'Illuminate\\Hashing\\HashServiceProvider',
@ -194,15 +199,11 @@
'translation.loader' => 'Illuminate\\Translation\\TranslationServiceProvider',
'validator' => 'Illuminate\\Validation\\ValidationServiceProvider',
'validation.presence' => 'Illuminate\\Validation\\ValidationServiceProvider',
'command.ide-helper.generate' => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider',
'command.ide-helper.models' => 'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider',
'command.tinker' => 'Laravel\\Tinker\\TinkerServiceProvider',
'html' => 'Collective\\Html\\HtmlServiceProvider',
'form' => 'Collective\\Html\\HtmlServiceProvider',
'Collective\\Html\\HtmlBuilder' => 'Collective\\Html\\HtmlServiceProvider',
'Collective\\Html\\FormBuilder' => 'Collective\\Html\\HtmlServiceProvider',
'NunoMaduro\\Collision\\Contracts\\Provider' => 'NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider',
'Reliese\\Coders\\Model\\Factory' => 'Reliese\\Coders\\CodersServiceProvider',
),
'when' =>
array (
@ -242,20 +243,11 @@
'Illuminate\\Validation\\ValidationServiceProvider' =>
array (
),
'Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider' =>
array (
),
'Laravel\\Tinker\\TinkerServiceProvider' =>
array (
),
'Collective\\Html\\HtmlServiceProvider' =>
array (
),
'NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider' =>
array (
),
'Reliese\\Coders\\CodersServiceProvider' =>
array (
),
),
);

View file

@ -14,7 +14,7 @@
}
],
"require": {
"php": "^7.1.3",
"php": "^7.2",
"barryvdh/laravel-dompdf": "^0.8.5",
"cviebrock/eloquent-sluggable": "*",
"doctrine/dbal": "*",
@ -24,7 +24,8 @@
"iqcontent/laravel-filemanager": "*",
"jenssegers/date": "*",
"laracasts/flash": "*",
"laravel/framework": "5.8.*",
"laravel/framework": "^6.0",
"laravel/helpers": "^1.1",
"laravel/passport": "*",
"laravel/tinker": "*",
"laravelcollective/html": "*",

1006
composer.lock generated

File diff suppressed because it is too large Load diff

View file

@ -195,6 +195,7 @@ return [
'aliases' => [
'App' => Illuminate\Support\Facades\App::class,
'Arr' => Illuminate\Support\Arr::class,
'Artisan' => Illuminate\Support\Facades\Artisan::class,
'Auth' => Illuminate\Support\Facades\Auth::class,
'Blade' => Illuminate\Support\Facades\Blade::class,
@ -224,12 +225,13 @@ return [
'Schema' => Illuminate\Support\Facades\Schema::class,
'Session' => Illuminate\Support\Facades\Session::class,
'Storage' => Illuminate\Support\Facades\Storage::class,
'Str' => Illuminate\Support\Str::class,
'URL' => Illuminate\Support\Facades\URL::class,
'Validator' => Illuminate\Support\Facades\Validator::class,
'View' => Illuminate\Support\Facades\View::class,
'Input' => Illuminate\Support\Facades\Input::class,
'Input' => Illuminate\Support\Facades\Request::class,
'Form' => Collective\Html\FormFacade::class,
'HTML' => Collective\Html\HtmlFacade::class,
//'HTML' => Collective\Html\HtmlFacade::class,
'Image' => Intervention\Image\Facades\Image::class,
'Carbon' => Carbon\Carbon::class,
'Date' => Jenssegers\Date\Date::class,

View file

@ -23,12 +23,17 @@ return [
'cms-fb' => ['name' => 'ADMIN CMS > Feedback' , 'color' => 'secondary'],
'cms-sb' => ['name' => 'ADMIN CMS > Sidebar' , 'color' => 'secondary'],
'cms-cn' => ['name' => 'ADMIN CMS > Inhalte' , 'color' => 'secondary'],
],
'cms-cn-in' => ['name' => 'ADMIN CMS > Inhalte > Infos' , 'color' => 'secondary'],
'cms-cn-al' => ['name' => 'ADMIN CMS > Inhalte > Inhalte' , 'color' => 'secondary'],
'cms-cn-co' => ['name' => 'ADMIN CMS > Inhalte > Länder' , 'color' => 'secondary'],
'cms-cn-au' => ['name' => 'ADMIN CMS > Inhalte > Autor' , 'color' => 'secondary'],
],
2 => [
'sua-st' => ['name' => 'SUPERADMIN > Einstellungen' , 'color' => 'superadmin'],
'sua-st-tp' => ['name' => 'SUPERADMIN > Einstellungen > Reisprogramme' , 'color' => 'superadmin'],
'sua-st-tc' => ['name' => 'SUPERADMIN > Einstellungen > Reiseländer' , 'color' => 'superadmin'],
'sua-st-tn' => ['name' => 'SUPERADMIN > Einstellungen > Nationalitäten' , 'color' => 'superadmin'],
'sua-st-ke' => ['name' => 'SUPERADMIN > Einstellungen > Keywords' , 'color' => 'superadmin'],
'sua-re' => ['name' => 'SUPERADMIN > Export' , 'color' => 'superadmin'],
'sua-re-bo' => ['name' => 'SUPERADMIN > Export > Buchungen' , 'color' => 'superadmin'],
'sua-re-pp' => ['name' => 'SUPERADMIN > Export > Leistungsträger' , 'color' => 'superadmin'],

View file

@ -1,36 +0,0 @@
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTravelProgramTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::connection('mysql_stern')->create('travel_program', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
$table->string('subtitle');
$table->string('program_code');
$table->string('weekdays');
$table->boolean('status')->default('true');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::connection('mysql_stern')->dropIfExists('travel_program');
}
}

View file

@ -1,56 +0,0 @@
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
/**
* Migration auto-generated by Sequel Pro Laravel Export (1.4.1)
* @see https://github.com/cviebrock/sequel-pro-laravel-export
*/
class CreateArrangementTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('arrangement', function (Blueprint $table) {
$table->bigIncrements('id');
$table->bigInteger('template_id')->nullable();
$table->date('state')->nullable();
$table->date('begin')->nullable();
$table->date('end')->nullable();
$table->string('type_s', 80)->nullable();
$table->text('data_s')->nullable();
$table->bigInteger('view_position')->nullable();
$table->bigInteger('booking_id')->nullable();
$table->bigInteger('type_id');
$table->tinyInteger('in_pdf')->nullable()->default(0);
$table->index('template_id', 'arrangement_template_id_idx');
$table->index('booking_id', 'arrangement_booking_id_idx');
$table->foreign('booking_id', 'arrangement_booking_id_booking_id')->references('id')->on('booking')->onDelete('CASCADE
')->onUpdate('RESTRICT');
$table->foreign('template_id', 'arrangement_template_id_arrangement_template_id')->references('id')->on('arrangement_template')->onDelete('CASCADE
')->onUpdate('RESTRICT');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('arrangement');
}
}

View file

@ -21,6 +21,9 @@ class CreateTravelGuidesTable extends Migration
$table->string('text')->nullable();
$table->text('full_text')->nullable();
$table->unsignedBigInteger('author_id')->nullable();
$table->string('keyword')->nullable();
@ -37,6 +40,10 @@ class CreateTravelGuidesTable extends Migration
$table->timestamps();
$table->foreign('author_id')
->references('id')
->on('c_m_s_authors');
});
}

View file

@ -0,0 +1,32 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateKeywordsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::connection('mysql_stern')->create('keywords', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('name', 255);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::connection('mysql_stern')->dropIfExists('keywords');
}
}

View file

@ -0,0 +1,32 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateCMSAuthorsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::connection('mysql_stern')->create('c_m_s_authors', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('name', 255);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::connection('mysql_stern')->dropIfExists('c_m_s_authors');
}
}

View file

@ -23,11 +23,11 @@
"ext-exif": "*",
"ext-fileinfo": "*",
"intervention/image": "2.*",
"illuminate/config": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.*",
"illuminate/filesystem": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.*",
"illuminate/support": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.*",
"illuminate/http": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.*",
"illuminate/container": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.*",
"illuminate/config": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0",
"illuminate/filesystem": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0",
"illuminate/support": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0",
"illuminate/http": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0",
"illuminate/container": "5.4.* || 5.5.* || 5.6.* || 5.7.* || 5.8.* || ^6.0",
"cviebrock/eloquent-sluggable": "*"
},
"require-dev": {

View file

@ -55,6 +55,8 @@ class FileController extends LfmController
$content_id = $this->helper->input('content_id');
$content_title = $this->helper->input('content_title');
$content_description = $this->helper->input('content_description');
$content_author = $this->helper->input('content_author');
$file = $this->lfm->pretty($file_name);
@ -63,6 +65,7 @@ class FileController extends LfmController
'id' => $content_id,
'title' => $content_title,
'description' => $content_description,
'author' => $content_author,
];
if($content_id && $content_id != ""){

View file

@ -44,15 +44,27 @@ class UploadController extends LfmController
if (is_array($uploaded_files)) {
$response = count($error_bag) > 0 ? $error_bag : parent::$success_response;
} else { // upload via ckeditor 'Upload' tab
} else { // upload via ckeditor5 expects json responses
if (is_null($new_filename)) {
$response = $error_bag[0];
$response = ['error' =>
[
'message' => $error_bag[0]
]
];
} else {
$response = view(Lfm::PACKAGE_NAME . '::use')
/*$response = view(Lfm::PACKAGE_NAME . '::use')
->withFile($this->lfm->setName($new_filename)->url());
*/
$url = $this->lfm->setName($new_filename)->url();
$response = [
'url' => $url
];
}
}
return $response;
return response()->json($response);
}
}

View file

@ -2,6 +2,7 @@
namespace IqContent\LaravelFilemanager;
use App\Models\CMSAuthor;
use Symfony\Component\HttpFoundation\File\UploadedFile;
class LfmItem
@ -9,7 +10,7 @@ class LfmItem
private $lfm;
private $helper;
private $columns = ['name', 'url', 'time', 'icon', 'color', 'is_file', 'is_image', 'thumb_url', 'size', 'dimension', 'content'];
private $columns = ['name', 'url', 'time', 'icon', 'color', 'is_file', 'is_image', 'thumb_url', 'size', 'dimension', 'content', 'identifier'];
public $attributes = [];
public function __construct(LfmPath $lfm, Lfm $helper)
@ -119,11 +120,28 @@ class LfmItem
public function content()
{
if($this->model()){
return $this->model()->content;
$content = $this->model()->content;
if(isset($content['author'])){
$author = CMSAuthor::find($content['author']);
if($author){
$content['author_name'] = $author->name;
}
}
return $content;
}
}
public function identifier()
{
if($this->model()){
return $this->model()->identifier;
}
}
public function sizeRow()
{
return $this->isFile() ? $this->lfm->size() : '';

View file

@ -313,11 +313,13 @@ class LfmPath
// Upload section
public function upload($file)
{
$this->uploadValidator($file);
$error = $this->uploadValidator($file);
if($error !== 'pass'){
return false;
}
$new_file_name = $this->getNewName($file);
$new_file_path = $this->setName($new_file_name)->path('absolute');
$working_folder_id = $this->getModelParentFolderId();
//event(new ImageIsUploading($new_file_path));
@ -339,7 +341,6 @@ class LfmPath
]);
// TODO should be "FileWasUploaded"
// event(new ImageWasUploaded($new_file_path));
return $new_file_name;
}

View file

@ -54,8 +54,8 @@
options = {};
$(document).ready(function () {
$("#notify").on("shown.bs.modal", function() {
$("#notify").find('.modal-footer button.btn-primary').hide();
var $dataX = $('#dataX'),
$dataY = $('#dataY'),
$dataHeight = $('#dataHeight'),
@ -67,8 +67,7 @@
preview: ".img-preview",
strict: false,
crop: function (data) {
console.log(data);
// console.log(data);
// Output the result data for cropping image.
$dataX.val(Math.round(data.x));
$dataY.val(Math.round(data.y));
@ -78,14 +77,20 @@
};
$image.cropper(options);
});
$("#notify").on("hidden.bs.modal", function() {
$("#notify").find('.modal-footer button.btn-primary').show();
$image.cropper('destroy');
$("#notify").off("shown.bs.modal");
$("#notify").off("hidden.bs.modal");
});
});
function closeAndLoadItems() {
$image = $('.crop-container > img');
$image.cropper('destroy');
$('#notify').modal('hide').find('.modal-body').html("");
loadItems();
LFileManager.loadItems();
}
function changeAspectRatio(_this, aspectRatio) {
options.aspectRatio = aspectRatio;
@ -96,7 +101,7 @@
return false;
}
function performCrop() {
performLfmRequest('cropimage', {
LFileManager.performLfmRequest('cropimage', {
img: $("#img").val(),
working_dir: $("#working_dir").val(),
dataX: $("#dataX").val(),
@ -108,7 +113,7 @@
}
function performCropNew() {
performLfmRequest('cropnewimage', {
LFileManager.performLfmRequest('cropnewimage', {
img: $("#img").val(),
working_dir: $("#working_dir").val(),
dataX: $("#dataX").val(),

View file

@ -205,43 +205,43 @@
{
name: 'rename',
icon: 'edit',
label: lang['menu-rename'],
label: lfm_lang['menu-rename'],
multiple: false
},
{
name: 'download',
icon: 'download',
label: lang['menu-download'],
label: lfm_lang['menu-download'],
multiple: true
},
// {
// name: 'preview',
// icon: 'image',
// label: lang['menu-view'],
// label: lfm_lang['menu-view'],
// multiple: true
// },
{
name: 'move',
icon: 'paste',
label: lang['menu-move'],
label: lfm_lang['menu-move'],
multiple: true
},
{
name: 'resize',
icon: 'arrows-alt',
label: lang['menu-resize'],
label: lfm_lang['menu-resize'],
multiple: false
},
{
name: 'crop',
icon: 'crop',
label: lang['menu-crop'],
label: lfm_lang['menu-crop'],
multiple: false
},
{
name: 'trash',
icon: 'trash',
label: lang['menu-delete'],
label: lfm_lang['menu-delete'],
multiple: true
},
];
@ -250,12 +250,12 @@
{
by: 'alphabetic',
icon: 'sort-alpha-down',
label: lang['nav-sort-alphabetic']
label: lfm_lang['nav-sort-alphabetic']
},
{
by: 'time',
icon: 'sort-numeric-down',
label: lang['nav-sort-time']
label: lfm_lang['nav-sort-time']
}
];
</script>
@ -268,7 +268,7 @@
uploadMultiple: false,
parallelUploads: 5,
clickable: '#upload-button',
dictDefaultMessage: lang['message-drop'],
dictDefaultMessage: lfm_lang['message-drop'],
init: function() {
var _this = this; // For the closure
this.on('success', function(file, response) {

View file

@ -20,9 +20,9 @@
$("#notify").modal('hide');
var items =[];
$("#items").find("input").each(function() {items.push(this.id)});
performLfmRequest('domove', {
LFileManager.performLfmRequest('domove', {
items: items,
goToFolder: $folder
}).done(refreshFoldersAndItems);
}).done(LFileManager.refreshFoldersAndItems);
}
</script>

View file

@ -116,10 +116,10 @@
}
function doResize() {
performLfmRequest('doresize', {
LFileManager.performLfmRequest('doresize', {
img: $("#img").val(),
dataHeight: $("#height").val(),
dataWidth: $("#width").val()
}).done(loadItems);
}).done(LFileManager.loadItems);
}
</script>

View file

@ -253,4 +253,91 @@ li li li li li div.dd-content-link {
.switcher-on-off.switcher .switcher-input:checked ~ .switcher-indicator {
background: #648859;
color: #fff;
}
}
.note-toolbar.card-header {
background-color: #f0f0f0;
}
@media (min-width: 992px){
.modal-xl {
max-width: 962px;
}
}
@media (min-width: 1200px){
.modal-xl {
max-width: 1170px;
}
}
figure {
border: 1px solid gainsboro;
display: inline-block;
}
figure p {
margin-bottom: 0.2rem;
}
figcaption {
display: block;
padding: 10px;
}
.figure-caption {
color: #595a5c;
}
.modal-xl.modal-dialog {
width: 98%;
height: 92%;
padding: 0;
}
.modal-xl .modal-content {
min-height: 99%;
}
.note-editor.note-frame.fullscreen, .note-editor.note-airframe.fullscreen {
z-index: 2040;
}
.video-container {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}
.video-container iframe,
.video-container object,
.video-container embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.mediaA {
width: 98%;
margin-left: .9%;
margin-right: .9%;
display: block;
}
.mediaA img {
float: left;
width: 100%;
}
.mediaA .mediaInfo {
width: 100%;
float: left;
background-color: #648859;
color: #fff;
margin-bottom: 1rem;
}
.mediaA .mediaInfo p {
padding: 4px 4px 4px 8px;
margin: 0;
width: auto;
}

View file

@ -0,0 +1,933 @@
var lfm_route = location.origin + '/laravel-filemanager';
var lfm_show_list;
var lfm_sort_type = 'alphabetic';
var lfm_selected = [];
var lfm_items = [];
var lfm_content = '#file-manager-content';
function initFileManager($editor = false) {
if(!$editor){
$(document).on('click', '#lfm_add-file', function () {
performLfmRequest('add-file', {})
.done(function (data) {
hideNavAndShowEditor(data, function () {
performLfmRequest('add-dofile', {
working_dir: $("#working_dir").val(),
file_type: $("#from_file_type").val(),
// file_name: $("#form_file_name").val(),
file_content: $("#form_file_content").val(),
}).done(refreshFoldersAndItems);
});
});
});
$(document).on('click', '#lfm_add-folder', function () {
dialog(lang['message-name'], '', createFolder);
});
$(document).on('click', '#lfm_upload', function () {
$('#uploadModal').modal('show');
});
$('#uploadModal').on('hidden.bs.modal', function(e) {
$('#uploadForm')[0].dropzone.removeAllFiles();
});
$('#uploadClearButton').on('click', function () {
$('#uploadForm')[0].dropzone.removeAllFiles();
});
}
if($(lfm_content).length) {
loadItems();
performLfmRequest('errors')
.done(function (response) {
JSON.parse(response).forEach(function (message) {
$('#alerts').append(
$('<div>').addClass('alert alert-warning')
.append($('<i>').addClass('fas fa-exclamation-circle'))
.append(' ' + message)
);
});
});
$(lfm_content).on('dragenter', function () {
$('#uploadModal').modal('show');
});
}
// Checkboxes
$('.file-manager-container').on('change', '.file-item-checkbox input', function() {
$(this).parents('.file-item')[this.checked ? 'addClass': 'removeClass']('selected border-primary');
});
// Focus
$('.file-manager-container').on('focusin', '.file-item', function() {
$(this).addClass('focused');
});
$('.file-manager-container').on('focusout', '.file-item', function() {
if ($('.file-item-actions.show').length) return;
$(this).removeClass('focused');
});
$('.file-manager-container').on('hide.bs.dropdown', '.file-item-actions', function() {
if ($(this).parents('.file-item').find(':focus').length) return;
$(this).parents('.file-item').removeClass('focused');
});
// Change view
$('[name="file-manager-view"]').on('change', function() {
$('.file-manager-container')
.removeClass('file-manager-col-view file-manager-row-view')
.addClass(this.value);
});
};
$(document).ready(function () {
initFileManager();
/*
actions.reverse().forEach(function (action) {
$('#nav-buttons > ul').prepend(
$('<li>').addClass('nav-item').append(
$('<a>').addClass('nav-link d-none')
.attr('data-action', action.name)
.attr('data-multiple', action.multiple)
.append($('<i>').addClass('fas fa-fw fa-' + action.icon))
.append($('<span>').text(action.label))
)
);
});
sortings.forEach(function (sort) {
$('#nav-buttons .dropdown-menu').append(
$('<a>').addClass('dropdown-item').attr('data-sortby', sort.by)
.append($('<i>').addClass('fas fa-fw fa-' + sort.icon))
.append($('<span>').text(sort.label))
.click(function() {
sort_type = sort.by;
loadItems();
})
);
});
*/
/* if (usingWysiwygEditor()) {
$('#multi_selection_toggle').hide();
}*/
});
// ======================
// == Navbar actions ==
// ======================
/*
$('#multi_selection_toggle').click(function () {
multi_selection_enabled = !multi_selection_enabled;
$('#multi_selection_toggle i')
.toggleClass('fa-times', multi_selection_enabled)
.toggleClass('fa-check-double', !multi_selection_enabled);
if (!multi_selection_enabled) {
clearSelected();
}
});
*/
/*
$(document).on('click', '[data-display]', function() {
show_list = $(this).data('display');
loadItems();
});
$(document).on('click', '[data-action]', function() {
window[$(this).data('action')]($(this).data('multiple') ? getSelectedItems() : getOneSelectedElement());
});
// ==========================
// == Multiple Selection ==
// ==========================
*/
/*
function clearSelected () {
selected = [];
multi_selection_enabled = false;
updateSelectedStyle();
}
function updateSelectedStyle() {
items.forEach(function (item, index) {
$('[data-id=' + index + ']')
.find('.square')
.toggleClass('selected', selected.indexOf(index) > -1);
});
toggleActions();
}
function getOneSelectedElement(orderOfItem) {
var index = orderOfItem !== undefined ? orderOfItem : selected[0];
return items[index];
}
function getSelectedItems() {
return selected.reduce(function (arr_objects, id) {
arr_objects.push(getOneSelectedElement(id));
return arr_objects
}, []);
}
*/
function getSelectedItems() {
var items = [];
$('input.lfm-control-input').each(function () {
if($(this).prop('checked')){
items.push(getOneSelectedElement($(this).parents('.file-item').data('id')));
}
});
return items;
}
function hasSelectedItems() {
$('input.lfm-control-input').each(function () {
//console.log($(this).prop('checked'));
if($(this).prop('checked')){
return true;
}
});
return false;
}
function getOneSelectedElement(orderOfItem) {
var index = orderOfItem !== undefined ? orderOfItem : lfm_selected[0];
return lfm_items[index];
}
function toggleActions() {
$('a[data-action=item_rename]').on('click', function () {
item = getOneSelectedElement($(this).parents('.file-item').data('id'));
rename(item);
});
$('a[data-action=item_move]').on('click', function (e) {
var items = [];
items.push(getOneSelectedElement($(this).parents('.file-item').data('id')));
move(items);
});
$('a[data-action=item_color]').on('click', function (e) {
item = getOneSelectedElement($(this).parents('.file-item').data('id'));
colors(item);
});
$('a[data-action=item_crop]').on('click', function (e) {
item = getOneSelectedElement($(this).parents('.file-item').data('id'));
crop(item);
});
$('a[data-action=item_resize]').on('click', function (e) {
item = getOneSelectedElement($(this).parents('.file-item').data('id'));
resize(item);
});
$('a[data-action=item_trash]').on('click', function () {
var items = [];
items.push(getOneSelectedElement($(this).parents('.file-item').data('id')));
trash(items);
});
$('a[data-action=item_download]').on('click', function () {
var items = [];
items.push(getOneSelectedElement($(this).parents('.file-item').data('id')));
download(items);
});
$('a[data-action=selected_items_move]').on('click', function () {
var items = getSelectedItems();
move(items);
});
$('a[data-action=selected_items_remove]').on('click', function () {
var items = getSelectedItems();
trash(items);
});
$('a[data-action=selected_items_download]').on('click', function () {
var items = getSelectedItems();
download(items);
});
/* var one_selected = selected.length === 1;
var many_selected = selected.length >= 1;
var only_image = getSelectedItems()
.filter(function (item) { return !item.is_image; })
.length === 0;
var only_file = getSelectedItems()
.filter(function (item) { return !item.is_file; })
.length === 0;
$('[data-action=use]').toggleClass('d-none', !(many_selected && only_file));
$('[data-action=rename]').toggleClass('d-none', !one_selected);
$('[data-action=preview]').toggleClass('d-none', !(many_selected && only_file));
$('[data-action=move]').toggleClass('d-none', !many_selected);
$('[data-action=download]').toggleClass('d-none', !(many_selected && only_file));
$('[data-action=resize]').toggleClass('d-none', !(one_selected && only_image));
$('[data-action=crop]').toggleClass('d-none', !(one_selected && only_image));
$('[data-action=trash]').toggleClass('d-none', !many_selected);
$('[data-action=open]').toggleClass('d-none', !one_selected || only_file);
$('#multi_selection_toggle').toggleClass('d-none', usingWysiwygEditor() || !many_selected);
$('#actions').toggleClass('d-none', selected.length === 0);
*/
}
// ======================
// == Folder actions ==
// ======================
function goTo(new_dir) {
if(!$('.dropdown-menu').hasClass('show')){
$('#working_dir').val(new_dir);
loadItems();
}
}
function getPreviousDir() {
var working_dir = $('#working_dir').val();
if(!working_dir){
working_dir = "/shares";
}
return working_dir.substring(0, working_dir.lastIndexOf('/'));
}
// ====================
// == Ajax actions ==
// ====================
function performLfmRequest(url, parameter, type) {
var data = defaultParameters();
if (parameter != null) {
$.each(parameter, function (key, value) {
data[key] = value;
});
}
// console.log(lfm_route + '/' + url);
// console.log(type);
// console.log(data);
return $.ajax({
type: 'GET',
beforeSend: function(request) {
var token = getUrlParam('token');
if (token !== null) {
request.setRequestHeader("Authorization", 'Bearer ' + token);
}
},
dataType: type || 'text',
url: lfm_route + '/' + url,
data: data,
cache: false
}).done(function (data) {
// console.log(data);
/* if(data !== "OK"){
var response = JSON.parse(data);
console.log("done");
console.log(response);
if(response.type === "error"){
$.growl({
title: "Error",
message: response.data,
location: 'tr'
});
}
}
*/
}).fail(function (jqXHR, textStatus, errorThrown) {
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
displayErrorResponse(jqXHR);
refreshFoldersAndItems();
});
}
function displayErrorResponse(jqXHR) {
notify('<div style="max-height:50vh;overflow: scroll;">' + jqXHR.responseText + '</div>');
};
function isJSON(text) {
if (typeof text!=="string"){
return false;
}
try{
JSON.parse(text);
return true;
}
catch (error){
return false;
}
}
var refreshFoldersAndItems = function (data) {
loadItems();
if(isJSON(data)){
var response = JSON.parse(data);
//console.log("done");
//console.log(response);
if(response.type === "error"){
$.growl({
title: "Error",
message: response.data,
location: 'tr'
});
}
}else{
if(data != 'OK') {
data = Array.isArray(data) ? data.join('<br/>') : data;
notify(data);
}
}
};
var hideNavAndShowEditor = function (data, callback = false) {
// $('#nav-buttons > ul').addClass('d-none');
//console.log(data);
notify(data, callback);
};
function loadItems() {
loading(true);
performLfmRequest('jsonitems', {show_list: lfm_show_list, sort_type: lfm_sort_type}, 'html')
.done(function (data) {
//console.log(data);
lfm_selected = [];
var response = JSON.parse(data);
var working_dir = response.working_dir;
lfm_items = response.items;
var hasItems = lfm_items.length !== 0;
$('#lfm_empty').toggleClass('d-none', hasItems);
//$(lfm_content).html(''); //.removeAttr('class');
var toprev = $('<div class="file-item" id="to-previous"><div class="file-item-icon file-item-level-up fas fa-level-up-alt text-secondary"></div><a href="javascript:void(0)" class="file-item-name">zurück</a></div>');
$(lfm_content).html('').append(toprev);
if (hasItems) {
$(lfm_content).addClass(response.display).addClass('preserve_actions_space');
lfm_items.forEach(function (item, index) {
var template = $('#lfm_item-template').clone()
.removeAttr('id').removeClass('d-none')
.attr('data-id', index)
//.click(toggleSelected)
.click(function (e) {
//console.log($(e.target));
if(!$(e.target).hasClass('lfm-click-disable') && !$(e.target).hasClass('dropdown-item')){
if (item.is_file) {
if($(e.target).hasClass('file-item-img') || $(e.target).hasClass('file-item-icon')){
preview_item(item);
}else{
if($(this).hasClass('file-item')){
$(this).find('.lfm-control-input').click();
}
}
} else {
goTo(item.url);
}
}
if($(e.target).hasClass('lfm-control-input')){
if(getSelectedItems().length > 0){
if($('.media-multi-settings').hasClass('d-none')){
$('.media-multi-settings').removeClass('d-none');
}
}else{
if(!$('.media-multi-settings').hasClass('d-none')){
$('.media-multi-settings').addClass('d-none');
}
}
}
});
if (item.thumb_url) {
var image = $('<div>').addClass('file-item-img').css('background-image', 'url("' + item.thumb_url + '?timestamp=' + item.time + '")');
var dot = $('<span>').addClass('badge badge-dot badge-default indicator_before').css({"background-color":item.color});
} else {
var image = $('<div>').addClass('file-item-icon fa ' + item.icon).css({"color":item.color});
var dot = $('<span>').addClass('badge badge-dot badge-default indicator_before').css({"background-color":item.color});
}
if(!item.is_image){ //no image
template.find('.link-item-crop').remove();
template.find('.link-item-resize').remove();
}else{
// template.find('.link-item-color').remove();
}
if(!item.is_file){ //dirs
template.find('.link-item-download').remove();
}
template.find('.file-item-name').before(image);
var item_name = $('<span>').addClass('file-item-name-insert').html(item.name);
template.find('.file-item-name').html(item_name);
template.find('.file-item-name-insert').before(dot);
var str = "";
if(item.dimension){
str += item.dimension + " | "
}
if(item.size){
str += item.size + " | "
}
str += (new Date(item.time * 1000)).toLocaleString();
template.find('.file-item-changed').text(str);
$(lfm_content).append(template);
});
}
//$('#nav-buttons > ul').removeClass('d-none');
$('#working_dir').val(working_dir);
// console.log('Current working_dir : ' + working_dir);
var breadcrumbs = [];
var validSegments = working_dir.split('/').filter(function (e) { return e; });
validSegments.forEach(function (segment, index) {
if (index === 0) {
// set root folder name as the first breadcrumb
breadcrumbs.push("Medien");
//breadcrumbs.push($("[data-path='/" + segment + "']").text());
} else {
breadcrumbs.push(segment);
}
});
$('#current_folder').text(breadcrumbs[breadcrumbs.length - 1]);
$('#lfm_breadcrumbs > ol').html('');
breadcrumbs.forEach(function (breadcrumb, index) {
var li = $('<li>').addClass('breadcrumb-item').text(breadcrumb);
if (index === breadcrumbs.length - 1) {
li.addClass('active').attr('aria-current', 'page');
} else {
li.click(function () {
// go to corresponding path
goTo('/' + validSegments.slice(0, 1 + index).join('/'));
});
}
$('#lfm_breadcrumbs > ol').append(li);
});
var atRootFolder = getPreviousDir() == '';
$('#to-previous').toggleClass('d-none', atRootFolder);
$('#to-previous').click(function () {
var previous_dir = getPreviousDir();
if (previous_dir == '') return;
goTo(previous_dir);
});
loading(false);
toggleActions();
});
}
function loading(show_loading) {
$('#lfm_loading').toggleClass('d-none', !show_loading);
}
function createFolder(folder_name) {
performLfmRequest('newfolder', {name: folder_name})
.done(refreshFoldersAndItems);
}
// ==================================
// == File Actions ==
// ==================================
function rename(item) {
dialog(lang['message-rename'], item.name, function (new_name) {
performLfmRequest('rename', {
file: item.name,
new_name: new_name
}).done(refreshFoldersAndItems);
});
}
function colors(item) {
performLfmRequest('colorhue', {color: item.color})
.done(function (data) {
hideNavAndShowEditor(data, function () {
performLfmRequest('docolorhue', {
file: item.name,
new_color: $('#notify').find('input').val(),
}).done(refreshFoldersAndItems);
});
});
}
function trash(items) {
notify(lang['message-delete'], function () {
var d = performLfmRequest('delete', {
items: items.map(function (item) { return item.name; })
}).done(refreshFoldersAndItems);
// console.log(d);
});
}
function crop(item) {
performLfmRequest('crop', {img: item.name})
.done(hideNavAndShowEditor);
}
function resize(item) {
performLfmRequest('resize', {img: item.name})
.done(hideNavAndShowEditor);
}
function move(items) {
performLfmRequest('move', { items: items.map(function (item) { return item.name; }) })
.done(refreshFoldersAndItems);
}
function download(items) {
items.forEach(function (item, index) {
var data = defaultParameters();
data['file'] = item.name;
var token = getUrlParam('token');
if (token) {
data['token'] = token;
}
setTimeout(function () {
location.href = lfm_route + '/download?' + $.param(data);
}, index * 100);
});
}
function open(item) {
goTo(item.url);
}
function preview_item(item) {
//var items = [];
//items.push(item);
preview(item);
}
function preview(item) {
var media = $('#previewTemplate').clone().attr('id', 'previewMedia').removeClass('d-none');
var item_content_id = "";
if(item.icon == "fa-image" || item.icon == "fa-file-pdf"){
media.find('.media-preview').attr('src', item.url + '?timestamp=' + item.time).removeClass('d-none');
}else if(item.icon == "fab fa-youtube-square"){
media.find('.embed-responsive-item').attr('src', 'https://www.youtube.com/embed/' +item.content.id + '?rel=0');
media.find('.embed-responsive').removeClass('d-none');
item_content_id = item.content.id;
}else{
var icon = $('<div>').addClass('file-item-icon fa ' + item.icon).css('color', item.color);
media.find('.file-manager-col-view').html(icon).removeClass('d-none');
}
if(item.content){
media.find('.media-content-title').val(item.content.title);
media.find('.media-content-description').val(item.content.description);
}
media.find('.media-content-title').parent().removeClass('d-none');
media.find('.media-content-description').parent().removeClass('d-none');
media.find('.media-name').html(item.name);
media.find('.media-url').val(item.url);
media.find('.media-download').attr('target', '_blank').attr('href', item.url);
callback = function () {
performLfmRequest('file-content', {
file: item.name,
content_id: item_content_id,
content_title: media.find('.media-content-title').val(),
content_description: media.find('.media-content-description').val(),
}).done(refreshFoldersAndItems);
};
/* if (item.thumb_url) {
media.find('.carousel-image').css('background-image', 'url(\'' + item.url + '?timestamp=' + item.time + '\')');
} else {
media.find('.carousel-image').css('width', '50vh').append($('<div>').addClass('mime-icon ico-' + item.icon));
}
media.find('.carousel-label')
.append($('<i class="fas fa-external-link-alt ml-2"></i>'));
*/
notify(media, callback);
}
/*function preview(items) {
var carousel = $('#carouselTemplate').clone().attr('id', 'previewCarousel').removeClass('d-none');
var imageTemplate = carousel.find('.carousel-item').clone().removeClass('active');
var indicatorTemplate = carousel.find('.carousel-indicators > li').clone().removeClass('active');
carousel.children('.carousel-inner').html('');
carousel.children('.carousel-indicators').html('');
carousel.children('.carousel-indicators,.carousel-control-prev,.carousel-control-next').toggle(items.length > 1);
items.forEach(function (item, index) {
var carouselItem = imageTemplate.clone()
.addClass(index === 0 ? 'active' : '');
if (item.thumb_url) {
carouselItem.find('.carousel-image').css('background-image', 'url(\'' + item.url + '?timestamp=' + item.time + '\')');
} else {
carouselItem.find('.carousel-image').css('width', '50vh').append($('<div>').addClass('mime-icon ico-' + item.icon));
}
carouselItem.find('.carousel-label').attr('target', '_blank').attr('href', item.url)
.append(item.name)
.append($('<i class="fas fa-external-link-alt ml-2"></i>'));
carousel.children('.carousel-inner').append(carouselItem);
var carouselIndicator = indicatorTemplate.clone()
.addClass(index === 0 ? 'active' : '')
.attr('data-slide-to', index);
carousel.children('.carousel-indicators').append(carouselIndicator);
});
// carousel swipe control
var touchStartX = null;
carousel.on('touchstart', function (event) {
var e = event.originalEvent;
if (e.touches.length == 1) {
var touch = e.touches[0];
touchStartX = touch.pageX;
}
}).on('touchmove', function (event) {
var e = event.originalEvent;
if (touchStartX != null) {
var touchCurrentX = e.changedTouches[0].pageX;
if ((touchCurrentX - touchStartX) > 60) {
touchStartX = null;
carousel.carousel('prev');
} else if ((touchStartX - touchCurrentX) > 60) {
touchStartX = null;
carousel.carousel('next');
}
}
}).on('touchend', function () {
touchStartX = null;
});
// end carousel swipe control
notify(carousel);
}*/
/*
function use(items) {
function useTinymce3(url) {
if (!usingTinymce3()) { return; }
var win = tinyMCEPopup.getWindowArg("window");
win.document.getElementById(tinyMCEPopup.getWindowArg("input")).value = url;
if (typeof(win.ImageDialog) != "undefined") {
// Update image dimensions
if (win.ImageDialog.getImageData) {
win.ImageDialog.getImageData();
}
// Preview if necessary
if (win.ImageDialog.showPreviewImage) {
win.ImageDialog.showPreviewImage(url);
}
}
tinyMCEPopup.close();
}
function useTinymce4AndColorbox(url) {
if (!usingTinymce4AndColorbox()) { return; }
parent.document.getElementById(getUrlParam('field_name')).value = url;
if(typeof parent.tinyMCE !== "undefined") {
parent.tinyMCE.activeEditor.windowManager.close();
}
if(typeof parent.$.fn.colorbox !== "undefined") {
parent.$.fn.colorbox.close();
}
}
function useCkeditor3(url) {
if (!usingCkeditor3()) { return; }
if (window.opener) {
// Popup
window.opener.CKEDITOR.tools.callFunction(getUrlParam('CKEditorFuncNum'), url);
} else {
// Modal (in iframe)
parent.CKEDITOR.tools.callFunction(getUrlParam('CKEditorFuncNum'), url);
parent.CKEDITOR.tools.callFunction(getUrlParam('CKEditorCleanUpFuncNum'));
}
}
function useFckeditor2(url) {
if (!usingFckeditor2()) { return; }
var p = url;
var w = data['Properties']['Width'];
var h = data['Properties']['Height'];
window.opener.SetUrl(p,w,h);
}
var url = items[0].url;
var callback = getUrlParam('callback');
var useFileSucceeded = true;
if (usingWysiwygEditor()) {
useTinymce3(url);
useTinymce4AndColorbox(url);
useCkeditor3(url);
useFckeditor2(url);
} else if (callback && window[callback]) {
window[callback](getSelectedItems());
} else if (callback && parent[callback]) {
parent[callback](getSelecteditems());
} else if (window.opener) { // standalone button or other situations
window.opener.SetUrl(getSelectedItems());
} else {
useFileSucceeded = false;
}
if (useFileSucceeded) {
if (window.opener) {
window.close();
}
} else {
console.log('window.opener not found');
// No editor found, open/download file using browser's default method
window.open(url);
}
}
//end useFile
// ==================================
// == WYSIWYG Editors Check ==
// ==================================
function usingTinymce3() {
return !!window.tinyMCEPopup;
}
function usingTinymce4AndColorbox() {
return !!getUrlParam('field_name');
}
function usingCkeditor3() {
return !!getUrlParam('CKEditor') || !!getUrlParam('CKEditorCleanUpFuncNum');
}
function usingFckeditor2() {
return window.opener && typeof data != 'undefined' && data['Properties']['Width'] != '';
}
function usingWysiwygEditor() {
return usingTinymce3() || usingTinymce4AndColorbox() || usingCkeditor3() || usingFckeditor2();
}
*/
// ==================================
// == Others ==
// ==================================
function getUrlParam(paramName) {
var reParam = new RegExp('(?:[\?&]|&)' + paramName + '=([^&]+)', 'i');
var match = window.location.search.match(reParam);
return ( match && match.length > 1 ) ? match[1] : null;
}
function defaultParameters() {
return {
working_dir: $('#working_dir').val(),
type: $('#type').val()
};
}
function notImp() {
notify('Not yet implemented!');
}
function notify(body, callback) {
$('#notify').find('.btn-primary').toggle(callback !== undefined);
if(callback !== 'success'){
$('#notify').find('.btn-primary').unbind().click(callback);
}else{
$('#notify').find('.btn-primary').unbind();
}
$('#notify').modal('show').find('.modal-body').html(body);
}
function dialog(title, value, callback) {
$('#dialog').find('input').val(value);
$('#dialog').on('shown.bs.modal', function () {
$('#dialog').find('input').focus();
});
$('#dialog').find('.btn-primary').unbind('click').click(function (e) {
callback($('#dialog').find('input').val());
});
$('#dialog').find('input').unbind('keypress.key13').bind('keypress.key13', function (e) {
if (e.which === 13) {
$('#dialog').find('.btn-primary').click();
}
});
$('#dialog').modal('show').find('.modal-title').text(title);
}

View file

@ -0,0 +1,720 @@
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery')) :
typeof define === 'function' && define.amd ? define(['exports', 'jquery'], factory) :
(global = global || self, factory(global.fileManager = {}, global.jQuery));
}(this, function (exports, $) { 'use strict';
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
function _extends() {
_extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
var lfm_route = location.origin + '/laravel-filemanager';
var lfm_show_list;
var lfm_sort_type = 'alphabetic';
var lfm_selected = [];
var lfm_items = [];
var LFM_CONTENT = '#file-manager-content';
var LFM_CONTAINER = '.file-manager-container';
var NAME = 'filemanager';
var VERSION = '1.0.0';
var DATA_KEY = 'fileManager';
var Default = {
toggle: true,
preventDefault: true,
triggerElement: 'a',
parentTrigger: 'li',
subMenu: 'ul'
};
var FileManager =
/*#__PURE__*/
function () {
function FileManager(element, config) {
this._element = element;
this.config = _extends({}, Default, config);
}// Getters
var _proto = FileManager.prototype;
_proto.test = function test(){
console.log("test");
};
_proto.init = function init() {
console.log("int");
if (!this._editor) {
var _self = this;
$(document).on('click', '#lfm_add-file', function () {
_self._performLfmRequest('add-file', {})
.done(function (data) {
_self._hideNavAndShowEditor(data, function () {
_self._performLfmRequest('add-dofile', {
working_dir: $("#working_dir").val(),
file_type: $("#from_file_type").val(),
// file_name: $("#form_file_name").val(),
file_content: $("#form_file_content").val(),
}).done(_self._refreshFoldersAndItems(_self));
});
});
});
$(document).on('click', '#lfm_add-folder', function () {
_self._dialog(lang['message-name'], '', _self._createFolder());
});
$(document).on('click', '#lfm_upload', function () {
$('#uploadModal').modal('show');
});
$('#uploadModal').on('hidden.bs.modal', function (e) {
$('#uploadForm')[0].dropzone.removeAllFiles();
});
$('#uploadClearButton').on('click', function () {
$('#uploadForm')[0].dropzone.removeAllFiles();
});
}
if ($(LFM_CONTENT).length) {
this._loadItems();
this._performLfmRequest('errors')
.done(function (response) {
JSON.parse(response).forEach(function (message) {
$('#alerts').append(
$('<div>').addClass('alert alert-warning')
.append($('<i>').addClass('fas fa-exclamation-circle'))
.append(' ' + message)
);
});
});
$(LFM_CONTENT).on('dragenter', function () {
$('#uploadModal').modal('show');
});
}
if ($(LFM_CONTAINER).length) {
// Checkboxes
$(LFM_CONTAINER).on('change', '.file-item-checkbox input', function () {
$(this).parents('.file-item')[this.checked ? 'addClass' : 'removeClass']('selected border-primary');
});
// Focus
$(LFM_CONTAINER).on('focusin', '.file-item', function () {
$(this).addClass('focused');
});
$(LFM_CONTAINER).on('focusout', '.file-item', function () {
if ($('.file-item-actions.show').length) return;
$(this).removeClass('focused');
});
$(LFM_CONTAINER).on('hide.bs.dropdown', '.file-item-actions', function () {
if ($(this).parents('.file-item').find(':focus').length) return;
$(this).parents('.file-item').removeClass('focused');
});
}
// Change view
$('[name="file-manager-view"]').on('change', function () {
$('.file-manager-container')
.removeClass('file-manager-col-view file-manager-row-view')
.addClass(this.value);
});
return this;
};
// ======================
// == Folder actions ==
// ======================
_proto._getSelectedItems = function() {
var items = [];
$('input.lfm-control-input').each(function () {
if ($(this).prop('checked')) {
items.push(this._getOneSelectedElement($(this).parents('.file-item').data('id')));
}
});
return items;
};
_proto._hasSelectedItems = function() {
$('input.lfm-control-input').each(function () {
//console.log($(this).prop('checked'));
if ($(this).prop('checked')) {
return true;
}
});
return false;
};
_proto._getOneSelectedElement = function(orderOfItem) {
var index = orderOfItem !== undefined ? orderOfItem : lfm_selected[0];
return lfm_items[index];
};
_proto._toggleActions = function() {
var _self = this;
$('a[data-action=item_rename]').on('click', function () {
item = this._getOneSelectedElement($(this).parents('.file-item').data('id'));
_self._rename(item);
});
$('a[data-action=item_move]').on('click', function (e) {
var items = [];
items.push(_self._getOneSelectedElement($(this).parents('.file-item').data('id')));
_self._move(items);
});
$('a[data-action=item_color]').on('click', function (e) {
item = _self._getOneSelectedElement($(this).parents('.file-item').data('id'));
_self._colors(item);
});
$('a[data-action=item_crop]').on('click', function (e) {
item = _self._getOneSelectedElement($(this).parents('.file-item').data('id'));
_self._crop(item);
});
$('a[data-action=item_resize]').on('click', function (e) {
item = _self._getOneSelectedElement($(this).parents('.file-item').data('id'));
_self._resize(item);
});
$('a[data-action=item_trash]').on('click', function () {
var items = [];
items.push(_self._getOneSelectedElement($(this).parents('.file-item').data('id')));
_self._trash(items);
});
$('a[data-action=item_download]').on('click', function () {
var items = [];
items.push(_self._getOneSelectedElement($(this).parents('.file-item').data('id')));
_self._download(items);
});
$('a[data-action=selected_items_move]').on('click', function () {
var items = _self._getSelectedItems();
_self._move(items);
});
$('a[data-action=selected_items_remove]').on('click', function () {
var items = _self._getSelectedItems();
_self._trash(items);
});
$('a[data-action=selected_items_download]').on('click', function () {
var items = _self._getSelectedItems();
_self._download(items);
});
};
_proto._goTo = function(new_dir) {
if (!$('.dropdown-menu').hasClass('show')) {
$('#working_dir').val(new_dir);
this._loadItems();
}
};
_proto._getPreviousDir = function() {
var working_dir = $('#working_dir').val();
if (!working_dir) {
working_dir = "/shares";
}
return working_dir.substring(0, working_dir.lastIndexOf('/'));
};
// ====================
// == Ajax actions ==
// ====================
_proto._performLfmRequest = function(url, parameter, type) {
var data = this._defaultParameters();
if (parameter != null) {
$.each(parameter, function (key, value) {
data[key] = value;
});
}
// console.log(lfm_route + '/' + url);
// console.log(type);
// console.log(data);
var _self = this;
return $.ajax({
type: 'GET',
beforeSend: function (request) {
var token = _self.getUrlParam('token');
if (token !== null) {
request.setRequestHeader("Authorization", 'Bearer ' + token);
}
},
dataType: type || 'text',
url: lfm_route + '/' + url,
data: data,
cache: false
}).done(function (data) {
// console.log(data);
/* if(data !== "OK"){
var response = JSON.parse(data);
console.log("done");
console.log(response);
if(response.type === "error"){
$.growl({
title: "Error",
message: response.data,
location: 'tr'
});
}
}
*/
}).fail(function (jqXHR, textStatus, errorThrown) {
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
_self._displayErrorResponse(jqXHR);
_self._refreshFoldersAndItems(_self);
});
};
_proto._displayErrorResponse = function(jqXHR) {
this._notify('<div style="max-height:50vh;overflow: scroll;">' + jqXHR.responseText + '</div>');
};
_proto._isJSON = function(text) {
if (typeof text !== "string") {
return false;
}
try {
JSON.parse(text);
return true;
} catch (error) {
return false;
}
};
_proto._refreshFoldersAndItems = function(_self, data) {
_self._loadItems();
if (_self._isJSON(data)) {
var response = JSON.parse(data);
//console.log("done");
//console.log(response);
if (response.type === "error") {
$.growl({
title: "Error",
message: response.data,
location: 'tr'
});
}
} else {
if (data !== 'OK') {
data = Array.isArray(data) ? data.join('<br/>') : data;
this._notify(data);
}
}
};
_proto._hideNavAndShowEditor = function(data, callback = false) {
// $('#nav-buttons > ul').addClass('d-none');
//console.log(data);
this._notify(data, callback);
};
_proto._loadItems = function() {
this._loading(true);
var _self = this;
this._performLfmRequest('jsonitems', {show_list: lfm_show_list, sort_type: lfm_sort_type},
'html')
.done(function (data) {
//console.log(data);
lfm_selected = [];
var response = JSON.parse(data);
var working_dir = response.working_dir;
lfm_items = response.items;
var hasItems = lfm_items.length !== 0;
$('#lfm_empty').toggleClass('d-none', hasItems);
//$(LFM_CONTENT).html(''); //.removeAttr('class');
var top_rev = $('<div class="file-item" id="to-previous"><div class="file-item-icon file-item-level-up fas fa-level-up-alt text-secondary"></div><a href="javascript:void(0)" class="file-item-name">zurück</a></div>');
$(LFM_CONTENT).html('').append(top_rev);
if (hasItems) {
$(LFM_CONTENT).addClass(response.display).addClass('preserve_actions_space');
lfm_items.forEach(function (item, index) {
var template = $('#lfm_item-template').clone()
.removeAttr('id').removeClass('d-none')
.attr('data-id', index)
//.click(toggleSelected)
.click(function (e) {
//console.log($(e.target));
if (!$(e.target).hasClass('lfm-click-disable') && !$(e.target).hasClass('dropdown-item')) {
if (item.is_file) {
if ($(e.target).hasClass('file-item-img') || $(e.target).hasClass('file-item-icon')) {
_self._preview_item(item);
} else {
if ($(this).hasClass('file-item')) {
$(this).find('.lfm-control-input').click();
}
}
} else {
_self._goTo(item.url);
}
}
if ($(e.target).hasClass('lfm-control-input')) {
if (this._getSelectedItems().length > 0) {
if ($('.media-multi-settings').hasClass('d-none')) {
$('.media-multi-settings').removeClass('d-none');
}
} else {
if (!$('.media-multi-settings').hasClass('d-none')) {
$('.media-multi-settings').addClass('d-none');
}
}
}
});
if (item.thumb_url) {
var image = $('<div>').addClass('file-item-img').css('background-image', 'url("' + item.thumb_url + '?timestamp=' + item.time + '")');
var dot = $('<span>').addClass('badge badge-dot badge-default indicator_before').css({"background-color": item.color});
} else {
var image = $('<div>').addClass('file-item-icon fa ' + item.icon).css({"color": item.color});
var dot = $('<span>').addClass('badge badge-dot badge-default indicator_before').css({"background-color": item.color});
}
if (!item.is_image) { //no image
template.find('.link-item-crop').remove();
template.find('.link-item-resize').remove();
} else {
// template.find('.link-item-color').remove();
}
if (!item.is_file) { //dirs
template.find('.link-item-download').remove();
}
template.find('.file-item-name').before(image);
var item_name = $('<span>').addClass('file-item-name-insert').html(item.name);
template.find('.file-item-name').html(item_name);
template.find('.file-item-name-insert').before(dot);
var str = "";
if (item.dimension) {
str += item.dimension + " | "
}
if (item.size) {
str += item.size + " | "
}
str += (new Date(item.time * 1000)).toLocaleString();
template.find('.file-item-changed').text(str);
$(LFM_CONTENT).append(template);
});
}
//$('#nav-buttons > ul').removeClass('d-none');
$('#working_dir').val(working_dir);
// console.log('Current working_dir : ' + working_dir);
var breadcrumbs = [];
var validSegments = working_dir.split('/').filter(function (e) {
return e;
});
validSegments.forEach(function (segment, index) {
if (index === 0) {
// set root folder name as the first breadcrumb
breadcrumbs.push("Medien");
//breadcrumbs.push($("[data-path='/" + segment + "']").text());
} else {
breadcrumbs.push(segment);
}
});
$('#current_folder').text(breadcrumbs[breadcrumbs.length - 1]);
$('#lfm_breadcrumbs > ol').html('');
breadcrumbs.forEach(function (breadcrumb, index) {
var li = $('<li>').addClass('breadcrumb-item').text(breadcrumb);
if (index === breadcrumbs.length - 1) {
li.addClass('active').attr('aria-current', 'page');
} else {
li.click(function () {
// go to corresponding path
this._goTo('/' + validSegments.slice(0, 1 + index).join('/'));
});
}
$('#lfm_breadcrumbs > ol').append(li);
});
var atRootFolder = _self._getPreviousDir() == '';
$('#to-previous').toggleClass('d-none', atRootFolder);
$('#to-previous').click(function () {
var previous_dir = _self._getPreviousDir();
if (previous_dir === '') return;
this._goTo(previous_dir);
});
_self._loading(false);
_self._toggleActions();
});
};
_proto._loading = function(show_loading) {
$('#lfm_loading').toggleClass('d-none', !show_loading);
};
_proto._createFolder = function(folder_name) {
var _self = this;
this._performLfmRequest('newfolder', {name: folder_name})
.done(_self._refreshFoldersAndItems(_self));
};
// ==================================
// == File Actions ==
// ==================================
_proto._rename = function(item) {
var _self = this;
this._dialog(lang['message-rename'], item.name, function (new_name) {
_self._performLfmRequest('rename', {
file: item.name,
new_name: new_name
}).done(_self._refreshFoldersAndItems(_self));
});
};
_proto._colors = function(item) {
var _self = this;
this._performLfmRequest('colorhue', {color: item.color})
.done(function (data) {
_self._hideNavAndShowEditor(data, function () {
_self._performLfmRequest('docolorhue', {
file: item.name,
new_color: $('#notify').find('input').val(),
}).done(_self._refreshFoldersAndItems(_self));
});
});
};
_proto._trash = function(items) {
var _self = this;
this._notify(lang['message-delete'], function () {
var d = _self._performLfmRequest('delete', {
items: items.map(function (item) {
return item.name;
})
}).done(r_self._efreshFoldersAndItems);
// console.log(d);
});
};
_proto._crop = function(item) {
var _self = this;
this._performLfmRequest('crop', {img: item.name})
.done(_self._hideNavAndShowEditor());
};
_proto._resize = function(item) {
var _self = this;
this._performLfmRequest('resize', {img: item.name})
.done(_self._hideNavAndShowEditor());
};
_proto._move = function(items) {
var _self = this;
this._performLfmRequest('move', {
items: items.map(function (item) {
return item.name;
})
})
.done(_self._refreshFoldersAndItems(_self));
};
_proto._download = function(items) {
items.forEach(function (item, index) {
var data = this._defaultParameters();
data['file'] = item.name;
var token = this.getUrlParam('token');
if (token) {
data['token'] = token;
}
setTimeout(function () {
location.href = lfm_route + '/download?' + $.param(data);
},
index * 100);
});
};
_proto._open = function(item) {
this._goTo(item.url);
};
_proto._preview_item = function(item) {
//var items = [];
//items.push(item);
this._preview(item);
};
_proto._preview = function(item) {
var media = $('#previewTemplate').clone().attr('id', 'previewMedia').removeClass('d-none');
var item_content_id = "";
if (item.icon === "fa-image" || item.icon === "fa-file-pdf") {
media.find('.media-preview').attr('src', item.url + '?timestamp=' + item.time).removeClass('d-none');
} else if (item.icon === "fab fa-youtube-square") {
media.find('.embed-responsive-item').attr('src', 'https://www.youtube.com/embed/' + item.content.id + '?rel=0');
media.find('.embed-responsive').removeClass('d-none');
item_content_id = item.content.id;
} else {
var icon = $('<div>').addClass('file-item-icon fa ' + item.icon).css('color', item.color);
media.find('.file-manager-col-view').html(icon).removeClass('d-none');
}
if (item.content) {
media.find('.media-content-title').val(item.content.title);
media.find('.media-content-description').val(item.content.description);
}
media.find('.media-content-title').parent().removeClass('d-none');
media.find('.media-content-description').parent().removeClass('d-none');
media.find('.media-name').html(item.name);
media.find('.media-url').val(item.url);
media.find('.media-download').attr('target', '_blank').attr('href', item.url);
var _self = this;
var callback = function () {
_self._performLfmRequest('file-content', {
file: item.name,
content_id: item_content_id,
content_title: media.find('.media-content-title').val(),
content_description: media.find('.media-content-description').val(),
}).done(_self._refreshFoldersAndItems(_self));
};
this._notify(media, callback);
};
// ==================================
// == Others ==
// ==================================
_proto.getUrlParam = function(paramName) {
var reParam = new RegExp('(?:[\?&]|&)' + paramName + '=([^&]+)', 'i');
var match = window.location.search.match(reParam);
return (match && match.length > 1) ? match[1] : null;
};
_proto._defaultParameters = function() {
return {
working_dir: $('#working_dir').val(),
type: $('#type').val()
};
};
_proto._notImp = function() {
this._notify('Not yet implemented!');
};
_proto._notify = function(body, callback) {
$('#notify').find('.btn-primary').toggle(callback !== undefined);
if(callback !== 'success'){
$('#notify').find('.btn-primary').unbind().click(callback);
}else{
$('#notify').find('.btn-primary').unbind();
}
$('#notify').modal('show').find('.modal-body').html(body);
};
_proto._dialog = function(title, value, callback) {
$('#dialog').find('input').val(value);
$('#dialog').on('shown.bs.modal', function () {
$('#dialog').find('input').focus();
});
$('#dialog').find('.btn-primary').unbind('click').click(function (e) {
callback($('#dialog').find('input').val());
});
$('#dialog').find('input').unbind('keypress.key13').bind('keypress.key13', function (e) {
if (e.which === 13) {
$('#dialog').find('.btn-primary').click();
}
});
$('#dialog').modal('show').find('.modal-title').text(title);
};
FileManager.jQueryInterface = function jQueryInterface(config) {
// eslint-disable-next-line func-names
return this.each(function () {
var $this = $(this);
var data = $this.data(DATA_KEY);
var conf = _extends({}, Default, $this.data(), typeof config === 'object' && config ? config : {});
if (!data) {
data = new FileManager(this, conf);
$this.data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error("No method named \"" + config + "\"");
}
data[config]();
}
});
};
return FileManager;
}();
$.fn[NAME] = FileManager.jQueryInterface; // eslint-disable-line no-param-reassign
$.fn[NAME].Constructor = FileManager; // eslint-disable-line no-param-reassign
$.fn[NAME].noConflict = function () {
// eslint-disable-line no-param-reassign
$.fn[NAME] = JQUERY_NO_CONFLICT; // eslint-disable-line no-param-reassign
return FileManager.jQueryInterface;
};
exports.FileManager = FileManager;
Object.defineProperty(exports, '__esModule', { value: true });
//return FileManager;
}));

View file

@ -308,11 +308,27 @@ jQuery(document).ready(function() {
e.preventDefault();
iq_update_data_load(e, $(this));
});
$(document).on('show.bs.modal', '.modal', function (event) {
var zIndex = 2040 + (10 * $('.modal:visible').length);
$(this).css('z-index', zIndex);
setTimeout(function() {
$('.modal-backdrop').not('.modal-stack').css('z-index', zIndex - 1).addClass('modal-stack');
}, 0);
});
});
jQuery.each(jQuery('textarea.autoExpand'), function() {
var offset = this.offsetHeight - this.clientHeight;
var resizeTextarea = function(el) {
jQuery(el).css('height', 'auto').css('height', el.scrollHeight + offset);
};
jQuery(this).on('keyup input', function() { resizeTextarea(this); }).removeClass('autoExpand');
resizeTextarea(this);
});
$(function() {
$('.datepicker-range').datepicker({
calendarWeeks: true,
orientation: 'auto left',

File diff suppressed because it is too large Load diff

View file

@ -1,33 +1 @@
$(function() {
// Checkboxes
$('.file-manager-container').on('change', '.file-item-checkbox input', function() {
$(this).parents('.file-item')[this.checked ? 'addClass': 'removeClass']('selected border-primary');
});
// Focus
$('.file-manager-container').on('focusin', '.file-item', function() {
$(this).addClass('focused');
});
$('.file-manager-container').on('focusout', '.file-item', function() {
if ($('.file-item-actions.show').length) return;
$(this).removeClass('focused');
});
$('.file-manager-container').on('hide.bs.dropdown', '.file-item-actions', function() {
if ($(this).parents('.file-item').find(':focus').length) return;
$(this).parents('.file-item').removeClass('focused');
});
// Change view
$('[name="file-manager-view"]').on('change', function() {
$('.file-manager-container')
.removeClass('file-manager-col-view file-manager-row-view')
.addClass(this.value);
});
});

View file

@ -0,0 +1,171 @@
(function (factory) {
/* global define */
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['jquery'], factory);
} else if (typeof module === 'object' && module.exports) {
// Node/CommonJS
module.exports = factory(require('jquery'));
} else {
// Browser globals
factory(window.jQuery);
}
}(function ($) {
$.extend(true, $.summernote.lang, {
'en-US': {
imageTitle: {
edit: 'Edit title',
titleLabel: 'Title',
altLabel: 'Alternative Text'
}
},
'de-DE': {
imageTitle: {
edit: 'Titel bearbeiten',
titleLabel: 'Titel | weiterführende Infos nicht für SEO',
altLabel: 'ALT-Tag | beschreibt das Bild'
}
},
});
$.extend($.summernote.plugins, {
'imageTitle': function (context) {
var self = this;
var ui = $.summernote.ui;
var $note = context.layoutInfo.note;
var $editor = context.layoutInfo.editor;
var $editable = context.layoutInfo.editable;
if (typeof context.options.imageTitle === 'undefined') {
context.options.imageTitle = {};
}
if (typeof context.options.imageTitle.specificAltField === 'undefined') {
context.options.imageTitle.specificAltField = false;
}
var options = context.options;
var lang = options.langInfo;
context.memo('button.imageTitle', function () {
var button = ui.button({
contents: ui.icon(options.icons.pencil),
tooltip: lang.imageTitle.edit,
container: false,
click: function (e) {
context.invoke('imageTitle.show');
}
});
return button.render();
});
this.initialize = function () {
var $container = options.dialogsInBody ? $(document.body) : $editor;
var body = '<div class="form-group">' +
'<label>' + lang.imageTitle.altLabel + '</label>' +
'<input class="note-image-alt-text form-control" type="text" />' +
'</div>';
if (options.imageTitle.specificAltField) {
body += '<div class="form-group">' +
'<label>' + lang.imageTitle.titleLabel + '</label>' +
'<input class="note-image-title-text form-control" type="text" />' +
'</div>';
}
var footer = '<button href="#" class="btn btn-primary note-image-title-btn">' + lang.imageTitle.edit + '</button>';
this.$dialog = ui.dialog({
title: lang.imageTitle.edit,
body: body,
footer: footer
}).render().appendTo($container);
};
this.destroy = function () {
ui.hideDialog(this.$dialog);
this.$dialog.remove();
};
this.bindEnterKey = function ($input, $btn) {
$input.on('keypress', function (event) {
if (event.keyCode === 13) {
$btn.trigger('click');
}
});
};
this.show = function () {
var $img = $($editable.data('target'));
var imgInfo = {
imgDom: $img,
title: $img.attr('title'),
alt: $img.attr('alt'),
};
this.showLinkDialog(imgInfo).then(function (imgInfo) {
ui.hideDialog(self.$dialog);
var $img = imgInfo.imgDom;
if (imgInfo.alt) {
$img.attr('alt', imgInfo.alt);
}
else {
$img.removeAttr('alt');
}
if (imgInfo.title) {
$img.attr('title', imgInfo.title);
}
else {
$img.removeAttr('title');
}
$note.val(context.invoke('code'));
$note.change();
});
};
this.showLinkDialog = function (imgInfo) {
return $.Deferred(function (deferred) {
var $imageTitle = self.$dialog.find('.note-image-title-text'),
$imageAlt = (options.imageTitle.specificAltField) ? self.$dialog.find('.note-image-alt-text') : null,
$editBtn = self.$dialog.find('.note-image-title-btn');
ui.onDialogShown(self.$dialog, function () {
context.triggerEvent('dialog.shown');
$editBtn.click(function (event) {
event.preventDefault();
deferred.resolve({
imgDom: imgInfo.imgDom,
title: $imageTitle.val(),
alt: (options.imageTitle.specificAltField) ? $imageAlt.val() : $imageTitle.val(),
});
});
$imageTitle.val(imgInfo.title).trigger('focus');
self.bindEnterKey($imageTitle, $editBtn);
if (options.imageTitle.specificAltField) {
$imageAlt.val(imgInfo.alt);
self.bindEnterKey($imageAlt, $editBtn);
}
});
ui.onDialogHidden(self.$dialog, function () {
$editBtn.off('click');
if (deferred.state() === 'pending') {
deferred.reject();
}
});
ui.showDialog(self.$dialog);
});
};
}
});
}));

View file

@ -0,0 +1,202 @@
(function(factory)
{
/* global define */
if (typeof define === 'function' && define.amd)
{
// AMD. Register as an anonymous module.
define(['jquery'], factory);
}
else if (typeof module === 'object' && module.exports)
{
// Node/CommonJS
module.exports = factory(require('jquery'));
}
else
{
// Browser globals
factory(window.jQuery);
}
}(function($)
{
// Extends plugins for adding gallery.
// - plugin is external module for customizing.
$.extend($.summernote.plugins,
{
/**
* @param {Object} context - context object has status of editor.
*/
'gallery': function(context)
{
var self = this;
// ui has renders to build ui elements.
// - you can create a button with `ui.button`
var ui = $.summernote.ui;
// add gallery button
context.memo('button.gallery', function()
{
// create button
var button = ui.button(
{
contents: '<i class="fa fa-image"></i>',
tooltip: 'Medien',
click: function()
{
self.fillModal();
self.$modal.modal();
}
});
// create jQuery object from button instance.
$gallery = button.render();
return $gallery;
});
// This events will be attached when editor is initialized.
this.events = {
// This will be called after modules are initialized.
'summernote.init': function(we, e)
{
self.editable = context.layoutInfo.editable; //contentEditable element
self.editor = this;
// get summernote onInit set parameters
self.image_dialog_images_url = $(this).data('image_dialog_images_url');
self.image_dialog_images_html = $(this).data('image_dialog_images_html');
self.image_dialog_title = $(this).data('image_dialog_title');
self.image_dialog_close_btn_text = $(this).data('image_dialog_close_btn_text');
self.image_dialog_ok_btn_text = $(this).data('image_dialog_ok_btn_text');
self.fillModal = function()
{
//fill modal with images whether from url or given html
if (typeof self.image_dialog_images_html !== "undefined")
{
self.setModalHtml(self.image_dialog_images_html)
self.setEvents();
}
else if (typeof self.image_dialog_images_url !== "undefined")
{
var next = self.setEvents;
self.getImagesFromUrl(next);
}
else
{
console.error("options image_dialog_images_html or image_dialog_images_url must be set");
}
};
self.setModalHtml = function(html)
{ // set variabl parts to modal html
var title = self.image_dialog_title;
var close = self.image_dialog_close_btn_text;
var ok = self.image_dialog_ok_btn_text;
if (self.image_dialog_title !== "undefined") self.$modal.find('.modal-title').html(title);
if (self.image_dialog_close_btn_text !== "undefined") self.$modal.find('#modal_iq_close').html(close);
if (self.image_dialog_ok_btn_text !== "undefined") self.$modal.find('#modal_iq_save').html(ok);
self.$modal.find('.modal-body').html(html);
LFileManager.initFileManager(true);
};
self.getImagesFromUrl = function(callback)
{
// get images html from url
$.get(self.image_dialog_images_url, function(html)
{
self.setModalHtml(html);
callback();
}).fail(function()
{
console.error("error loading from "+self.image_dialog_images_url);
})
};
self.setEvents = function()
{
// images click event to select image
/*self.$modal.find('img').click(function(event)
{
// $(this).toggleClass(self.select_class);
});*/
};
// set the focus to the last focused element in the editor
self.recoverEditorFocus = function ()
{
var last_focused_el = $(self.editor).data('last_focused_element');
if(typeof last_focused_el !== "undefined")
{
var editor = self.editable;
var range = document.createRange();
var sel = window.getSelection();
var cursor_position = last_focused_el.length;
range.setStart(last_focused_el, cursor_position);
range.collapse(true);
sel.removeAllRanges();
sel.addRange(range);
editor.focus();
}
};
self.saveLastFocusedElement = function()
{
var focused_element = window.getSelection().focusNode;
var parent = $(self.editable).get(0);
if ($.contains(parent, focused_element))
{
$(self.editor).data('last_focused_element', focused_element)
};
};
self.editorEvents = function () {
$(self.editable).on('keypress, mousemove', function()
{
self.saveLastFocusedElement();
})
};
self.editorEvents();
self.fillModal();
},
// This will be called when user releases a key on editable.
'summernote.keyup': function(we, e)
{
self.saveLastFocusedElement();
}
};
// This method will be called when editor is initialized by $('..').summernote();
// You can create elements for plugin
this.initialize = function()
{
var $modal = this.$modal = $('#modal_iq_assets').hide();
// add selected images to summernote editor
$modal.find("button#modal_iq_save").click(function(event)
{
var items = LFileManager.getSelectedItems();
$modal.modal('hide');
self.recoverEditorFocus();
items.forEach(function (item, index) {
var insert = LFileManager.insertHTML(item);
if(insert){
context.invoke('editor.pasteHTML', insert);
}
});
});
};
// This methods will be called when editor is destroyed by $('..').summernote('destroy');
// You should remove elements on `initialize`.
this.destroy = function()
{
console.log("destroy");
// this.$panel.remove();
// this.$panel = null;
};
}
});
}));

View file

@ -0,0 +1,7 @@
<script>
@if(isset($lfm_helper))
LFileManager.setConfig('lfm_lang', {!! json_encode(trans('laravel-filemanager::lfm')) !!});
LFileManager.setConfig('lfm_availableMimeTypes', "{{ implode(',', $lfm_helper->availableMimeTypes()) }}");
LFileManager.setConfig('lfm_maxUploadSize', {{ $lfm_helper->maxUploadSize() }});
@endif
</script>

View file

@ -0,0 +1,135 @@
@extends('layouts.layout-2')
@section('content')
<h4 class="font-weight-bold py-3 mb-1">
{{ __('Authoren') }}
</h4>
@if ($errors->any())
<div class="row">
<div class="col-sm-12">
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
</div>
@endif
<div class="card">
<div class="card-datatable table-responsive py-2" data-route-modal="{{ route('cms_content_author_load_modal') }}" data-target-modal="#modals-load-content">
<div class="mr-4 mb-2 text-right">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="new"
data-model="content"
>Neuen Autor anlegen</button>
</div>
<table class="datatables-default table table-striped table-bordered clients-table">
<thead>
<tr>
<th style="max-width: 60px;">&nbsp;</th>
<th>{{__('Name')}}</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach($contents as $value)
<tr>
<td class="not">
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="{{ $value->id }}"
data-model="content">
<span class="fa fa-edit"></span>
</button>
</td>
<td>{{ $value->name }}</td>
<td><a class="text-danger" href="{{ route('cms_content_author_delete', [$value->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="fa fa-trash-alt"></i></a></td>
</tr>
@endforeach
</tbody>
</table>
<div class="mt-4 mr-4 text-right">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-load-content"
data-id="new"
data-model="content"
>Neuen Autor anlegen</button>
</div>
</div>
</div>
<script>
$( document ).ready(function() {
function loadModalInner(self, data){
var url = data.route,
contentType = 'application/x-www-form-urlencoded; charset=UTF-8';
$.ajax({
url: url,
data: data,
type: "POST",
dataType: "json",
cache: false,
contentType: contentType,
encode: true,
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
success: function(data) {
$(data.response.target).find('.modal-dialog').html(data.html);
//$('.selectpicker').selectpicker('refresh');
//datepicker_birthday_init();
},
error: function(xhr, status, errorThrown) {
console.log(xhr);
console.log(xhr.responseText);
console.log(errorThrown);
console.log("Sorry, there was a problem!");
}
});
return false;
}
$('#modals-load-content').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget);
if (!button.data('id')) {
return;
}
var data = {};
data.route = button.parents('.card').find('.card-datatable').data('route-modal');
data.target = button.parents('.card').find('.card-datatable').data('target-modal');
data.id = button.data('id');
data.model = button.data('model');
console.log(data);
loadModalInner(this, data);
});
$('.datatables-default').dataTable({
"bLengthChange": false,
"iDisplayLength": 50,
"language": {
"url": "/js/German.json"
}
});
});
</script>
<!-- Modal template -->
<div class="modal fade" id="modals-load-content">
<div class="modal-dialog">
</div>
</div>
@endsection

View file

@ -0,0 +1,29 @@
{!! Form::open(['url' => route('cms_content_author_store'), 'class' => 'modal-content']) !!}
<input type="hidden" name="id" id="id" value="@if($value->id>0){{$value->id}}@else new @endif">
<div class="modal-header">
<h5 class="modal-title">
{{ __('Autor') }}
<span class="font-weight-light">erstellen/bearbeiten</span>
</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>
<div class="modal-body">
<div class="form-row">
<div class="form-group col">
<label for="name" class="form-label">{{ __('Name') }}</label>
{{ Form::text('name', $value->name, array('placeholder'=>__('Name'), 'class'=>'form-control', 'required')) }}
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">schließen</button>
<button type="submit" class="btn btn-primary">speichern</button>
</div>
{!! Form::close() !!}

View file

@ -20,7 +20,6 @@
</div>
@endif
{!! Form::open(['url' => route('cms_travel_guide_detail', [$id]), 'class' => 'form-horizontal']) !!}
<h4 class="font-weight-bold py-3 mb-1">
@ -62,7 +61,7 @@
<span class="custom-control-label">{{__('Langer Text')}}</span>
</label>
<label class="form-label" for="travel_guide_full_text">{{ __('Text') }}* </label>
@if(Input::get('clean') == "true")
@if($response_clean === "true")
&nbsp; &nbsp;<a class="btn btn-primary btn-xs" href="?clean=">Clean Text on</a>
@else
&nbsp; &nbsp;<a class="btn btn-default btn-xs" href="?clean=true">Clean Text off</a>
@ -71,6 +70,22 @@
{{ Form::textarea('full_text', $travel_guide->full_text , ['class' => 'form-control summernote']) }}
</div>
</div>
<div class="form-row">
<!--<div class="form-group col-sm-6">
<label class="form-label" for="preview_image">{{ __('Vorschau Bild:') }}</label>
{{ Form::text('preview_image', '', array('placeholder'=>__('Vorschau Bild'), 'class'=>'form-control', 'id'=>'preview_image')) }}
</div>-->
<div class="form-group col-sm-6">
<label class="form-label" for="author_id">{{ __('Autor dieses Artikels:') }} <a href="{{route('cms_content_author')}}"><i class="fa fa-share-square"></i></a> </label>
<select class="custom-select" name="author_id">
<option value="">kein Autor</option>
{!! HTMLHelper::getAuthorOptions($travel_guide->author_id) !!}
</select>
</div>
</div>
<hr>
<button type="button" class="btn btn-primary btn-sm float-right mb-2" data-toggle="modal" data-target="#modals-load-content"
data-id="add"
data-model="guide"
@ -98,8 +113,10 @@
</a>
</td>
<td>{{$iq_content_site->iq_content_tree_node->name}}</td>
<td>{{$iq_content_site->iq_content_tree_node->getUri()}}</td>
<td><a href="{{ $iq_content_site->iq_content_tree_node->getUrl() }}" class="btn icon-btn btn-sm btn-secondary" target="_blank">
<span class="fa fa-external-link-alt"></span>
</a> {{$iq_content_site->iq_content_tree_node->getUri()}}
</td>
<td>
@if($iq_content_site->iq_content_tree_node->active)
<span class="badge badge-pill badge-success"><i class="fa fa-check"></i></span>

View file

@ -131,12 +131,24 @@
<input type="hidden" name="model" value="tree">
<input type="hidden" name="action" value="tree-node">
<input type="hidden" name="tree_id" value="{{$model->id}}">
<div class="input-group mb-4">
<div class="input-group-prepend">
<span class="input-group-text"><span
class="fa fa-link mr-2 text-primary"></span></span>
<div class="form-row">
<div class="form-group col-10 col-sm-11">
<div class="input-group mb-4">
<div class="input-group-prepend">
<span class="input-group-text">
<a href="{{ $tree_node->getUrl() }}" class="" target="_blank">
<span class="fa fa-external-link-alt mr-2 text-secondary"></span>
</a>
</span>
</div>
{{ Form::text('uri', $tree_node->getUri(), array('readonly'=>true, 'class'=>'form-control')) }}
</div>
</div>
<div class="form-group col-2 col-sm-1">
<a class="btn btn-sm btn-danger float-right" href="{{ route('iq_content_tree_delete', [$model->id, $tree_node->id, ($section? $section : '')]) }}" onclick="return confirm('Wirklich löschen? Node wird mit allen Unter-Nodes und Verknüpfungen gelöscht. ');">
<i class="fa fa-trash-alt"></i>
</a>
</div>
{{ Form::text('uri', $tree_node->getUri(), array('readonly'=>true, 'class'=>'form-control')) }}
</div>
<div class="form-row mb-2">
<div class="form-group col">
@ -150,7 +162,6 @@
</div>
<div class="form-row mb-2">
<div class="form-group col">
<button type="button" class="btn btn-primary btn-sm float-right mb-2"
data-toggle="modal" data-target="#modals-load-content"
data-id="add"

View file

@ -0,0 +1,224 @@
<style>
.nav-pills > .nav-item > .nav-link {
height: 5rem;
display: flex;
align-items: center;
}
.nav-pills > .sub-item > .nav-link {
height: 3rem;
padding-left: 3rem;
}
.nav-pills > li.active > a, .nav-pills > li:hover > a {
background-color: #ddd;
border-radius: 0;
color: #333844;
}
.carousel-image {
height: 50vh;
background-position: center;
background-size: contain;
background-repeat: no-repeat;
margin: 0 auto;
}
.carousel-indicators {
bottom: 0;
}
.carousel-label, .carousel-label:hover {
position: absolute;
bottom: 0;
background: linear-gradient(transparent 10px, rgba(0, 0, 0, .4), rgba(0, 0, 0, .5));
padding: 40px 20px 30px;
width: 100%;
color: white;
word-break: break-word;
text-align: center;
}
.carousel-control-background {
border-radius: 50%;
width: 25px;
height: 25px;
box-shadow: 0 0 10px #666;
background-color: #666;
}
#uploadForm > .dz-default.dz-message {
border: 2px dashed #ccc;
border-radius: 5px;
color: #aaa;
margin: 0;
padding: 3rem 0;
}
#lfm_empty {
padding-bottom: 0.8em;
}
.messages-card {
overflow: visible;
}
.badge.indicator_before {
margin-right: 0.3em;
width: 0.8em;
height: 0.8em;
margin-bottom: 0.3em;
/*-webkit-transform: translate(-50%, -100%);
transform: translate(-50%, -100%);*/
}
.file-manager-row-view .file-item-changed {
width: auto;
}
.default-style .file-manager-row-view .file-item-name {
width: auto;
}
.file-item-actions.btn-group .btn-default {
border-right: 1px solid rgba(24, 28, 33, 0.3);
border-left: 1px solid rgba(24, 28, 33, 0.3);
}
.file-item-checkbox .custom-control-label::before{
border:1px solid rgba(24, 28, 33, 0.3);
}
.file-item {
border: 1px solid rgba(0, 0, 0, 0.1);
}
.file-item:hover {
border: 1px solid #f2bf24;
background-color: rgba(242, 191, 36, 0.1);
}
.modal-xl .modal-long {
padding: 0.5rem;
}
</style>
@if(!$modal)
<h4 class="font-weight-bold mb-4">
Medien
</h4>
@endif
<div id="alerts"></div>
<div class="card messages-card">
<div class="row no-gutters">
<!-- content list -->
<div class="col">
<div class="file-manager-actions container-p-x py-2">
<div>
<button id="lfm_upload" type="button" class="btn btn-primary mr-2"><i class="fas fa-upload"></i>&nbsp; Hochladen</button>
<button id="lfm_add-file" type="button" class="btn btn-default mr-2"><i class="fas fa-file"></i> Neue Datei</button>
<button id="lfm_add-folder" type="button" class="btn btn-secondary mr-2"><i class="fas fa-folder"></i> Neuer Ordner</button>
<div class="btn-group mr-2 d-none media-multi-settings">
<button type="button" class="btn btn-default md-btn-flat dropdown-toggle px-2" data-toggle="dropdown"><i class="ion ion-ios-settings"></i> Optionen</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="javascript:void(0)" data-action="selected_items_move"><i class="fa fa-reply-all"></i> verschieben</a>
<a class="dropdown-item" href="javascript:void(0)" data-action="selected_items_remove"><i class="fa fa-trash-alt"></i> löschen</a>
</div>
</div>
</div>
<div>
<div class="btn-group btn-group-toggle" data-toggle="buttons">
<label class="btn btn-default icon-btn md-btn-flat active">
<input type="radio" name="file-manager-view" value="file-manager-col-view" checked> <span class="ion ion-md-apps"></span>
</label>
<label class="btn btn-default icon-btn md-btn-flat">
<input type="radio" name="file-manager-view" value="file-manager-row-view"> <span class="ion ion-md-menu"></span>
</label>
</div>
</div>
</div>
<!-- <a class="navbar-brand d-block d-lg-none" id="current_folder"></a> -->
<div class="container-m-nx container-m-ny bg-lightest mb-2" id="lfm_breadcrumbs">
<ol class="breadcrumb text-big container-p-x py-3 m-0">
<li class="breadcrumb-item">
<a href="javascript:void(0)">home</a>
</li>
<li class="breadcrumb-item">
<a href="javascript:void(0)">projects</a>
</li>
<li class="breadcrumb-item active">site</li>
</ol>
<hr class="m-0">
</div>
<div id="lfm_loading" class="d-none text-center mb-4"><i class="fas fa-spinner fa-spin"></i></div>
<div id="lfm_empty" class="text-center d-none">
<i class="fa fa-folder-open"></i>
{{ trans('laravel-filemanager::lfm.message-empty') }}
</div>
<div id="lfm_item-template" class="file-item d-none">
<div class="file-item-select-bg bg-primary"></div>
<label class="file-item-checkbox custom-control custom-checkbox lfm-click-disable">
<input type="checkbox" class="custom-control-input lfm-control-input lfm-click-disable">
<span class="custom-control-label lfm-click-disable"></span>
</label>
<a href="javascript:void(0)" class="file-item-name">
</a>
<div class="file-item-changed"></div>
<div class="file-item-actions btn-group lfm-click-disable">
<button type="button" class="btn btn-default btn-sm rounded-pill icon-btn md-btn-flat hide-arrow dropdown-toggle lfm-click-disable" data-toggle="dropdown"><i class="ion ion-ios-more lfm-click-disable"></i></button>
<div class="dropdown-menu">
<a class="dropdown-item" href="javascript:void(0)" data-action="item_rename"><i class="fa fa-sync-alt"></i> umbenennen</a>
<a class="dropdown-item" href="javascript:void(0)" data-action="item_move"><i class="fa fa-reply"></i> verschieben</a>
<a class="dropdown-item link-item-download" href="javascript:void(0)" data-action="item_download"><i class="fa fa-download"></i> download</a>
<a class="dropdown-item link-item-crop" href="javascript:void(0)" data-action="item_crop"><i class="fa fa-crop"></i> zuschneiden</a>
<!-- <a class="dropdown-item link-item-resize" href="javascript:void(0)" data-action="item_resize"><i class="fa fa-crop"></i> Größe ändern</a> -->
<a class="dropdown-item link-item-color" href="javascript:void(0)" data-action="item_color"><i class="fa fa-paint-brush"></i> Farbe</a>
<a class="dropdown-item" href="javascript:void(0)" data-action="item_trash"><i class="fa fa-trash"></i> löschen</a>
</div>
</div>
</div>
<div class="file-manager-container file-manager-col-view" id="file-manager-content">
</div>
</div>
</div><!-- / .row -->
</div><!-- / .card -->
<div id="previewTemplate" class="d-none bg-light text-center">
<div class="ui-bordered">
<img src="#" alt="" class="img-fluid media-preview d-none" style="background-color: #fff;">
<div class="file-manager-col-view d-none"></div>
<div class="embed-responsive embed-responsive-16by9 d-none">
<iframe class="embed-responsive-item" src="" allowfullscreen></iframe>
</div>
<div class="p-3">
<h5 class="media-name"> </h5>
<div class="form-group d-none">
<input type="text" class="form-control media-content-title" placeholder="Title">
</div>
<div class="form-group d-none">
<textarea type="text" class="form-control media-content-description" placeholder="Description"></textarea>
</div>
<div class="form-group d-none">
<select class="custom-select media-content-author">
<option value="">kein Autor</option>
{!! HTMLHelper::getAuthorOptions() !!}
</select>
</div>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="ion ion-md-link"></i></span>
</div>
<input type="text" class="form-control media-url" placeholder="Link" readonly>
<div class="input-group-append">
<span class="input-group-text"><a href="#" class="media-download"><i class="fas fa-external-link-alt"></i></a></span>
</div>
</div>
</div>
</div>
</div>

View file

@ -1,265 +1,12 @@
@extends('layouts.layout-2')
@extends('layouts.layout-2')
@section('content')
<style>
@include('iq.content.assets.body')
.nav-pills > .nav-item > .nav-link {
height: 5rem;
display: flex;
align-items: center;
}
.nav-pills > .sub-item > .nav-link {
height: 3rem;
padding-left: 3rem;
}
.nav-pills > li.active > a, .nav-pills > li:hover > a {
background-color: #ddd;
border-radius: 0;
color: #333844;
}
.carousel-image {
height: 50vh;
background-position: center;
background-size: contain;
background-repeat: no-repeat;
margin: 0 auto;
}
.carousel-indicators {
bottom: 0;
}
.carousel-label, .carousel-label:hover {
position: absolute;
bottom: 0;
background: linear-gradient(transparent 10px, rgba(0, 0, 0, .4), rgba(0, 0, 0, .5));
padding: 40px 20px 30px;
width: 100%;
color: white;
word-break: break-word;
text-align: center;
}
.carousel-control-background {
border-radius: 50%;
width: 25px;
height: 25px;
box-shadow: 0 0 10px #666;
background-color: #666;
}
#uploadForm > .dz-default.dz-message {
border: 2px dashed #ccc;
border-radius: 5px;
color: #aaa;
margin: 0;
padding: 3rem 0;
}
#lfm_empty {
padding-bottom: 0.8em;
}
.messages-card {
overflow: visible;
}
.badge.indicator {
margin-left: 0.8em;
width: 0.8em;
height: 0.8em;
}
.file-manager-row-view .file-item-changed {
width: auto;
}
.default-style .file-manager-row-view .file-item-name {
width: auto;
}
</style>
<h4 class="font-weight-bold mb-4">
Medien
</h4>
<div id="alerts"></div>
<div class="card messages-card">
<div class="row no-gutters">
<!-- content list -->
<div class="col">
<div class="file-manager-actions container-p-x py-2">
<div>
<button id="lfm_upload" type="button" class="btn btn-primary mr-2"><i class="fas fa-upload"></i>&nbsp; Hochladen</button>
<button id="lfm_add-file" type="button" class="btn btn-default mr-2"><i class="fas fa-file"></i> Neue Datei</button>
<button id="lfm_add-folder" type="button" class="btn btn-secondary mr-2"><i class="fas fa-folder"></i> Neuer Ordner</button>
<div class="btn-group mr-2 d-none media-multi-settings">
<button type="button" class="btn btn-default md-btn-flat dropdown-toggle px-2" data-toggle="dropdown"><i class="ion ion-ios-settings"></i> Optionen</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="javascript:void(0)" data-action="selected_items_move"><i class="fa fa-reply-all"></i> verschieben</a>
<a class="dropdown-item" href="javascript:void(0)" data-action="selected_items_remove"><i class="fa fa-trash-alt"></i> löschen</a>
</div>
</div>
</div>
<div>
<div class="btn-group btn-group-toggle" data-toggle="buttons">
<label class="btn btn-default icon-btn md-btn-flat active">
<input type="radio" name="file-manager-view" value="file-manager-col-view" checked> <span class="ion ion-md-apps"></span>
</label>
<label class="btn btn-default icon-btn md-btn-flat">
<input type="radio" name="file-manager-view" value="file-manager-row-view"> <span class="ion ion-md-menu"></span>
</label>
</div>
</div>
</div>
<!-- <a class="navbar-brand d-block d-lg-none" id="current_folder"></a> -->
<div class="container-m-nx container-m-ny bg-lightest mb-2" id="lfm_breadcrumbs">
<ol class="breadcrumb text-big container-p-x py-3 m-0">
<li class="breadcrumb-item">
<a href="javascript:void(0)">home</a>
</li>
<li class="breadcrumb-item">
<a href="javascript:void(0)">projects</a>
</li>
<li class="breadcrumb-item active">site</li>
</ol>
<hr class="m-0">
</div>
<div id="lfm_loading" class="d-none text-center mb-4"><i class="fas fa-spinner fa-spin"></i></div>
<div id="lfm_empty" class="text-center d-none">
<i class="fa fa-folder-open"></i>
{{ trans('laravel-filemanager::lfm.message-empty') }}
</div>
<div id="lfm_item-template" class="file-item d-none">
<div class="file-item-select-bg bg-primary"></div>
<label class="file-item-checkbox custom-control custom-checkbox lfm-click-disable">
<input type="checkbox" class="custom-control-input lfm-control-input lfm-click-disable">
<span class="custom-control-label lfm-click-disable"></span>
</label>
<a href="javascript:void(0)" class="file-item-name">
</a>
<div class="file-item-changed"></div>
<div class="file-item-actions btn-group lfm-click-disable">
<button type="button" class="btn btn-default btn-sm rounded-pill icon-btn borderless md-btn-flat hide-arrow dropdown-toggle lfm-click-disable" data-toggle="dropdown"><i class="ion ion-ios-more lfm-click-disable"></i></button>
<div class="dropdown-menu">
<a class="dropdown-item" href="javascript:void(0)" data-action="item_rename"><i class="fa fa-sync-alt"></i> umbenennen</a>
<a class="dropdown-item" href="javascript:void(0)" data-action="item_move"><i class="fa fa-reply"></i> verschieben</a>
<a class="dropdown-item link-item-download" href="javascript:void(0)" data-action="item_download"><i class="fa fa-download"></i> download</a>
<a class="dropdown-item link-item-crop" href="javascript:void(0)" data-action="item_crop"><i class="fa fa-crop"></i> zuschneiden</a>
<!-- <a class="dropdown-item link-item-resize" href="javascript:void(0)" data-action="item_resize"><i class="fa fa-crop"></i> Größe ändern</a> -->
<a class="dropdown-item link-item-color" href="javascript:void(0)" data-action="item_color"><i class="fa fa-paint-brush"></i> Farbe</a>
<a class="dropdown-item" href="javascript:void(0)" data-action="item_trash"><i class="fa fa-trash"></i> löschen</a>
</div>
</div>
</div>
<div class="file-manager-container file-manager-col-view" id="file-manager-content">
</div>
</div>
</div><!-- / .row -->
</div><!-- / .card -->
<div class="modal fade" id="uploadModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myModalLabel">{{ trans('laravel-filemanager::lfm.title-upload') }}</h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aia-hidden="true">&times;</span></button>
</div>
<div class="modal-body">
{!! Form::open([ 'url' => route('iqcontent.lfm.upload'), 'method' => 'post', 'files' => true, 'enctype' => 'multipart/form-data', 'class' => 'dropzone', 'id' => 'uploadForm' ]) !!}
<div class="form-group" id="attachment">
<div class="controls text-center">
<div class="input-group w-100">
<a class="btn btn-primary w-100 text-white" id="upload-button">{{ trans('laravel-filemanager::lfm.message-choose') }}</a>
</div>
</div>
</div>
<input type='hidden' name='working_dir' id='working_dir'>
<input type='hidden' name='type' id='type' value='{{ request("type") }}'>
<div class="fallback">
<input name="file" type="file" multiple>
</div>
{!! Form::close() !!}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="notify" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"></h4>
</div>
<div class="modal-body"></div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
<button type="button" class="btn btn-primary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-confirm') }}</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="dialog" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"></h4>
</div>
<div class="modal-body">
<input type="text" class="form-control">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
<button type="button" class="btn btn-primary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-confirm') }}</button>
</div>
</div>
</div>
</div>
<div id="previewTemplate" class="d-none bg-light text-center">
<div class="ui-bordered">
<img src="#" alt="" class="img-fluid media-preview d-none" style="background-color: #fff;">
<div class="file-manager-col-view d-none"></div>
<div class="embed-responsive embed-responsive-16by9 d-none">
<iframe class="embed-responsive-item" src="" allowfullscreen></iframe>
</div>
<div class="p-3">
<h5 class="media-name"> </h5>
<div class="form-group d-none">
<input type="text" class="form-control media-content-title" placeholder="Title">
</div>
<div class="form-group d-none">
<textarea type="text" class="form-control media-content-description" placeholder="Description"></textarea>
</div>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="ion ion-md-link"></i></span>
</div>
<input type="text" class="form-control media-url" placeholder="Link" readonly>
<div class="input-group-append">
<span class="input-group-text"><a href="#" class="media-download"><i class="fas fa-external-link-alt"></i></a></span>
</div>
</div>
</div>
</div>
</div>
<script>
var lang = {!! json_encode(trans('laravel-filemanager::lfm')) !!};
</script>
@endsection

View file

@ -0,0 +1,86 @@
<div class="modal fade" id="modals-load-content">
<div class="modal-dialog modal-lg">
</div>
</div>
@if(isset($lfm_helper))
<div class="modal fade" id="modal_iq_assets" tabindex="-1" role="dialog">
<div class="modal-xl modal-dialog ">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Medien</h4><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
</div>
<div class="modal-body modal-long">
</div>
<div class="modal-footer">
<button type="button" id="modal_iq_close" class="btn btn-default" data-dismiss="modal">schließen</button>
<button type="button" id="modal_iq_save" class="btn btn-primary">Einfügen</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="uploadModal" tabindex="-1" role="dialog" aria-labelledby="myUploadModal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myUploadModal">{{ trans('laravel-filemanager::lfm.title-upload') }}</h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aia-hidden="true">&times;</span></button>
</div>
<div class="modal-body">
{!! Form::open([ 'url' => route('iqcontent.lfm.upload'), 'method' => 'post', 'files' => true, 'enctype' => 'multipart/form-data', 'class' => 'dropzone', 'id' => 'uploadForm' ]) !!}
<div class="form-group" id="attachment">
<div class="controls text-center">
<div class="input-group w-100">
<a class="btn btn-primary w-100 text-white" id="upload-button">{{ trans('laravel-filemanager::lfm.message-choose') }}</a>
</div>
</div>
</div>
<input type='hidden' name='working_dir' id='working_dir'>
<input type='hidden' name='type' id='type' value='{{ request("type") }}'>
<div class="fallback">
<input name="file" type="file" multiple>
</div>
{!! Form::close() !!}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default btn-sm" id="uploadClearButton"><i class="fa fa-sync"></i></button>
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="notify" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"></h4>
</div>
<div class="modal-body"></div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
<button type="button" class="btn btn-primary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-confirm') }}</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="dialog" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title"></h4>
</div>
<div class="modal-body">
<input type="text" class="form-control">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-close') }}</button>
<button type="button" class="btn btn-primary w-100" data-dismiss="modal">{{ trans('laravel-filemanager::lfm.btn-confirm') }}</button>
</div>
</div>
</div>
</div>
@endif

View file

@ -31,8 +31,8 @@
<link rel="stylesheet" href="{{ mix('/vendor/libs/growl/growl.css') }}">
@if(isset($helper))
<link rel="stylesheet" href="{{ asset('/vendor/laravel-filemanager/css/dropzone.min.css') }}">
@if(isset($lfm_helper))
<link rel="stylesheet" href="{{ asset('/vendor/laravel-filemanager/css/dropzone.min.css') }}">
@else
<link rel="stylesheet" href="{{ asset('/vendor/libs/dropzone/dropzone.css') }}">
@endif
@ -49,7 +49,7 @@
-->
<link rel="stylesheet" href="{{ mix('/vendor/libs/dragula/dragula.css') }}">
<link rel="stylesheet" href="{{ mix('/vendor/libs/minicolors/minicolors.css') }}">
<link rel="stylesheet" href="{{ asset('/vendor/libs/summernote/dist/summernote-bs4.css') }}">
<link rel="stylesheet" href="{{ asset('/vendor/libs/summernote/dist/summernote-bs4.css?v=0.8.16') }}">
<link rel="stylesheet" href="{{ asset('/vendor/libs/nestable/nestable.css') }}">
<link rel="stylesheet" href="{{ asset('/vendor/css/pages/messages.css') }}">
@ -68,6 +68,7 @@
@yield('styles')
<!-- Application stylesheets -->
<link rel="stylesheet" href="{{ mix('/css/application.css') }}{{ get_file_last_time('js/application.css') }}">
<script src="{{ asset('/js/jquery.min.js') }}"></script>
@ -103,11 +104,8 @@
@yield('layout-content')
<div class="modal fade" id="modals-load-content">
<div class="modal-dialog modal-lg">
</div>
</div>
@include('iq.content.assets.modals')
<!-- Core scripts -->
<script src="{{ mix('/vendor/libs/popper/popper.js') }}"></script>
@ -116,7 +114,7 @@
<script src="{{ mix('/vendor/libs/growl/growl.js') }}"></script>
<script src="{{ asset('/vendor/libs/js-cookie/src/js.cookie.js') }}"></script>
@if(isset($helper))
@if(isset($lfm_helper))
<script src="{{ asset('/vendor/laravel-filemanager/js/dropzone.min.js') }}"></script>
@else
<script src="{{asset('/vendor/libs/dropzone/dropzone.js')}}"></script>
@ -137,11 +135,16 @@
<script src="{{ mix('/vendor/libs/dragula/dragula.js') }}"></script>
<script src="{{asset('/vendor/libs/nestable/my-nestable.js')}}"></script>
<script src="{{ mix('/vendor/libs/minicolors/minicolors.js') }}"></script>
<script src="{{ asset('/vendor/libs/summernote/dist/summernote-bs4.js') }}"></script>
<script src="{{ asset('/vendor/libs/summernote/dist/summernote-bs4.js?v=0.8.16') }}"></script>
<script src="{{ asset('/vendor/libs/summernote/dist/lang/summernote-de-DE.js?v=0.8.16') }}"></script>
<script src="{{ asset('/vendor/laravel-filemanager/js/cropper.min.js') }}"></script>
<script src="{{ asset('/js/pages_file-manager.js') }}"></script>
<script src="{{ asset('/js/filemanager.js?v1') }}"></script>
<script src="{{ asset('/js/summernote-iq-content-extension.js?v=2') }}"></script>
<script src="{{ asset('/js/summernote-image-title.js?v=2') }}"></script>
@if(isset($lfm_helper))
<script src="{{ asset('/vendor/laravel-filemanager/js/cropper.min.js') }}"></script>
<script src="{{ asset('/js/filemanager.js?v3') }}"></script>
@endif
<!-- Libs -->
<!-- `perfect-scrollbar` library required by SideNav plugin -->
@ -151,34 +154,12 @@
<!-- Application javascripts -->
<script src="{{ mix('/js/application.js') }}"></script>
<script src="{{ asset('/js/custom.js?v') }}{{ get_file_last_time('js/custom.js') }}"></script>
<script>
@if(isset($helper))
<script src="{{ asset('/js/custom.js?v1') }}{{ get_file_last_time('/js/custom.js') }}"></script>
Dropzone.options.uploadForm = {
paramName: "upload[]", // The name that will be used to transfer the file
uploadMultiple: false,
parallelUploads: 10,
clickable: '#upload-button',
//dictDefaultMessage: lang['message-drop'],
init: function() {
var _this = this; // For the closure
this.on('success', function(file, response) {
console.log(response);
if (response == 'OK') {
loadItems();
} else {
this.defaultOptions.error(file, response); //response.join('\n')
}
});
},
headers: {
'Authorization': 'Bearer ' + getUrlParam('token')
},
// acceptedFiles: "{{ implode(',', $helper->availableMimeTypes()) }}",
maxFilesize: ({{ $helper->maxUploadSize() }} / 1000),
};
@endif
@include('asset.js')
<script>
// Dragula
$(function() {
// Drag handle
@ -189,21 +170,98 @@
});
});
Dropzone.autoDiscover = false;
@if(isset($lfm_helper))
$("#uploadForm").dropzone({
paramName: "upload[]", // The name that will be used to transfer the file
uploadMultiple: false,
parallelUploads: 10,
clickable: '#upload-button',
//dictDefaultMessage: LFileManager.lfm_config['lfm_lang']['message-drop'],
init: function () {
var _this = this; // For the closure
this.on('success', function (file, response) {
//console.log(response);
if (response === 'OK') {
LFileManager.loadItems();
} else {
_this.defaultOptions.error(file, response); //response.join('\n')
}
});
},
headers: {
'Authorization': 'Bearer ' + LFileManager.getUrlParam('token')
},
// acceptedFiles: LFileManager.lfm_config['lfm_availableMimeTypes'] ,
maxFilesize: (LFileManager.lfm_config['lfm_maxUploadSize'] / 1000),
});
@endif
/*Dropzone.options.uploadForm = {
paramName: "upload[]", // The name that will be used to transfer the file
uploadMultiple: false,
parallelUploads: 10,
clickable: '#upload-button',
//dictDefaultMessage: LFileManager.lfm_config['lfm_lang']['message-drop'],
init: function() {
console.log("Dinit")
var _this = this; // For the closure
this.on('success', function(file, response) {
console.log(response);
if (response === 'OK') {
LFileManager.loadItems();
} else {
_this.defaultOptions.error(file, response); //response.join('\n')
}
});
},
headers: {
'Authorization': 'Bearer ' + LFileManager.getUrlParam('token')
},
// acceptedFiles: LFileManager.lfm_config['lfm_availableMimeTypes'] ,
maxFilesize: (LFileManager.lfm_config['lfm_maxUploadSize'] / 1000),
};*/
$(document).ready(function() {
$('.summernote').summernote({
height: 300,
tabsize: 2,
followingToolbar: true,
imageTitle: {
specificAltField: true,
},
lang: 'de-DE',
toolbar: [
['style', ['style']],
['font', ['bold', 'italic', 'underline', 'clear']],
['color', ['color']],
['para', ['ul', 'ol', 'paragraph']],
['extensions', ['gallery']],
['insert', ['link', 'picture', 'video', 'hr']],
['view', ['fullscreen', 'codeview']],
['help', ['help']]
],
popover: {
image: [
['image', ['resizeFull', 'resizeHalf', 'resizeQuarter', 'resizeNone']],
['float', ['floatLeft', 'floatRight', 'floatNone']],
['remove', ['removeMedia']],
['custom', ['imageTitle']],
],
},
callbacks :{
onInit: function() {
// $(this).data('image_dialog_images_html', '<div class="row"..');
$(this).data('image_dialog_images_url', "/iq/content/assets/modal");
$(this).data('image_dialog_title', "Medien");
$(this).data('image_dialog_close_btn_text', "schließen");
$(this).data('image_dialog_ok_btn_text', "Einfügen");
}
},
/*
callbacks: {
onPaste: function (e) {
@ -214,33 +272,51 @@
}
*/
});
});
$(document).ready(function() {
$('.summernote-small').summernote({
height: 150,
tabsize: 2,
followingToolbar: true,
imageTitle: {
specificAltField: true,
},
toolbar: [
['style', ['style']],
['font', ['bold', 'italic', 'underline', 'clear']],
['color', ['color']],
['para', ['ul', 'ol', 'paragraph']],
['extensions', ['gallery']],
['insert', ['link', 'picture', 'video', 'hr']],
['view', ['fullscreen', 'codeview']],
['help', ['help']]
],
popover: {
image: [
['imagesize', ['imageSize100', 'imageSize50', 'imageSize25']],
['float', ['floatLeft', 'floatRight', 'floatNone']],
['remove', ['removeMedia']],
['custom', ['imageTitle']],
],
},
callbacks :{
onInit: function() {
// $(this).data('image_dialog_images_html', '<div class="row"..');
$(this).data('image_dialog_images_url', "/iq/content/assets/modal");
$(this).data('image_dialog_title', "Medien");
$(this).data('image_dialog_close_btn_text', "Fermer");
$(this).data('image_dialog_ok_btn_text', "Ajouter");
}
},
});
//save in the codeview
$('.note-codable').on('blur', function() {
var codeviewHtml = $(this).val();
var $summernoteTextarea = $(this).closest('.note-editor').siblings('textarea');
$summernoteTextarea.val(codeviewHtml);
});
});
jQuery.each(jQuery('textarea.autoExpand'), function() {
var offset = this.offsetHeight - this.clientHeight;
var resizeTextarea = function(el) {
jQuery(el).css('height', 'auto').css('height', el.scrollHeight + offset);
};
jQuery(this).on('keyup input', function() { resizeTextarea(this); }).removeClass('autoExpand');
resizeTextarea(this);
});
</script>

View file

@ -164,16 +164,26 @@
<div>Inhalte</div>
</a>
<ul class="sidenav-menu">
@if(Auth::user()->isPermission('cms-cn-in'))
<li class="sidenav-item{{ Request::is('cms/content/infos') ? ' active' : '' }}">
<a href="{{ route('cms_content_infos') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-business"></i><div>Infos</div></a>
</li>
@endif
@if(Auth::user()->isPermission('cms-cn-co'))
<li class="sidenav-item{{ Request::is('cms/content/country') ? ' active' : '' }} {{ Request::is('cms/content/country/*') ? ' active' : '' }}">
<a href="{{ route('cms_content_country') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-globe"></i><div>Reiseländer</div></a>
</li>
@endif
@if(Auth::user()->isPermission('cms-cn-al'))
<li class="sidenav-item{{ Request::is('cms/content/all') ? ' active' : '' }}">
<a href="{{ route('cms_content_all') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-paper"></i><div>Allgemein</div></a>
</li>
@endif
@if(Auth::user()->isPermission('cms-cn-au'))
<li class="sidenav-item{{ Request::is('cms/content/author') ? ' active' : '' }}">
<a href="{{ route('cms_content_author') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-finger-print"></i><div>Autoren</div></a>
</li>
@endif
</ul>
</li>
@ -208,6 +218,11 @@
<a href="{{ route('admin_settings_travel_nationality') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-people"></i><div>{{ __('Nationalitäten') }}</div></a>
</li>
@endif
@if(Auth::user()->isPermission('sua-st-ke'))
<li class="sidenav-item{{ Request::is('admin/settings/keyword') ? ' active' : '' }}">
<a href="{{ route('admin_settings_keyword') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-key"></i><div>{{ __('Keywords') }}</div></a>
</li>
@endif
</ul>
</li>
@endif

View file

@ -118,6 +118,7 @@
<th>{{__('BookingID')}}</th>
<th>{{__('Reiseland')}}</th>
<th>{{__('Programm')}}</th>
{{--<th>{{__('Kategorie')}}</th>--}}
<th>{{__('Anreise')}}</th>
<th>{{__('Abreise')}}</th>
<th>{{__('Reiseunterlage')}}</th>

View file

@ -0,0 +1,92 @@
@extends('layouts.layout-2')
@section('content')
<h4 class="font-weight-bold py-3 mb-1">
Keywords
</h4>
<div class="card">
<div class="card-datatable table-responsive">
<table class="datatables-default table table-striped table-bordered">
<thead>
<tr>
<th style="max-width: 60px;">&nbsp;</th>
<th>{{__('Name')}}</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach($keywords as $value)
<tr>
<td>
<button type="button" class="btn icon-btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-default"
data-id="{{ $value->id }}"
data-name="{{ $value->name }}">
<span class="fa fa-edit"></span>
</button>
</td>
<td data-sort="{{ $value->id }}">{{ $value->name }}</td>
<td><a class="text-danger" href="{{ route('admin_settings_keyword_delete', [$value->id]) }}" onclick="return confirm('{{__('Wirklich löschen?')}}');"><i class="fa fa-trash-alt"></i></a></td>
</tr>
@endforeach
</tbody>
</table>
<div class="mt-4 col">
<button type="button" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#modals-default"
data-id="new"
data-name=""
>Neues Keyword anlegen</button>
</div>
</div>
</div>
<!-- Modal template -->
<div class="modal fade" id="modals-default">
<div class="modal-dialog">
<form class="modal-content" action="{{ route('admin_settings_keyword_update') }}" method="post">
@csrf
<input type="hidden" class="form-control" name="id">
<div class="modal-header">
<h5 class="modal-title">Keyword <span class="font-weight-light">anlegen/bearbeiten</span></h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>
</div>
<div class="modal-body">
<div class="form-row">
<div class="form-group col">
<label for="name" class="form-label">Name*</label>
<input type="text" class="form-control" name="name" placeholder="{{__('Description')}}" required>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">{{__('close')}}</button>
<button type="submit" class="btn btn-primary">{{__('save')}}</button>
</div>
</form>
</div>
</div>
<script>
$( document ).ready(function() {
$('#modals-default').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget);
$(this).find(".modal-content input[name='id']").val(button.data('id'));
$(this).find(".modal-body input[name='name']").val(button.data('name'));
});
$('.datatables-default').dataTable({
"bLengthChange": false,
"iDisplayLength": 50,
"order": [[ 1, "asc" ]],
"language": {
"url": "/js/German.json"
}
});
});
</script>
@endsection

View file

@ -24,7 +24,6 @@
{!! Form::checkbox('status', 1, $program->status, ['class'=>'custom-control-input']) !!}
<span class="custom-control-label">{{__('aktiv')}}</span>
</label>
<label class="form-label" for="program_title">{{ __('Title') }}*</label>
{{ Form::text('title', $program->title, array('placeholder'=>__('Title'), 'class'=>'form-control', 'id'=>'program_title', 'required'=>true)) }}
</div>
@ -47,6 +46,15 @@
</select>
</div>
</div>
{{--
<div class="form-row">
<div class="form-group col">
<a href="{{route('travel_program_generate_keywords', [$program->id])}}" class="btn btn-xs btn-secondary float-right">generate Keywords</a>
<label for="keywords" class="form-label">{{__('Keywords')}}</label>
{{ Form::text('keywords', $program->keywords, array('placeholder'=>__('Keyword,Keyword'), 'class'=>'form-control', 'id'=>'keywords')) }}
</div>
</div>
--}}
</div>
</div>

View file

@ -27,6 +27,8 @@
<th style="max-width: 60px;">&nbsp;</th>
<th>{{__('Programm')}}</th>
<th>{{__('Code')}}</th>
{{-- <th>{{__('Keywords')}}</th> --}}
<th>{{__('Vorlage')}}</th>
<th>{{__('Status')}}</th>
</tr>
</thead>
@ -42,6 +44,17 @@
<td>
{{ $value->program_code }}
</td>
{{--
<td>
{{ $value->program_code }}
</td>
--}}
<td data-size="{{ $value->hasTravelProgramDrafts() }}">
@if($value->hasTravelProgramDrafts())
<span class="badge badge-pill badge-success"><i class="fa fa-check"></i></span>
@else
<span class="badge badge-pill badge-danger"><i class="fa fa-times"></i></span>
@endif
<td data-sort="{{ $value->status }}">
@if($value->status)
<span class="badge badge-pill badge-success"><i class="fa fa-check"></i></span>

View file

@ -140,6 +140,7 @@ Route::group(['middleware' => ['admin']], function()
Route::get('/iq/content/tree/detail/{id}/{node_id?}/{area_section_id?}', 'IQ\ContentTreeController@detail')->name('iq_content_tree_detail');
Route::post('/iq/content/tree/detail/{id}/{node_id?}/{area_section_id?}', 'IQ\ContentTreeController@store')->name('iq_content_tree_detail');
Route::get('/iq/content/tree/detail/remove_site/{id}/{node_id}/{travel_guide_id}/{r?}', 'IQ\ContentTreeController@removeSite')->name('iq_content_tree_detail_remove_site');
Route::get('/iq/content/tree/delete/{id}/{node_id?}/{area_section_id?}', 'IQ\ContentTreeController@delete')->name('iq_content_tree_delete');
Route::get('/iq/content/tree/repair/{id}', 'IQ\ContentTreeController@repair')->name('iq_content_tree_repair');
@ -147,6 +148,8 @@ Route::group(['middleware' => ['admin']], function()
Route::group(['middleware' => ['auth.permission:cms-iq-assets']], function() {
//assets
Route::get('/iq/content/assets', 'IQ\ContentAssetController@index')->name('iq_content_assets');
Route::get('/iq/content/assets/modal', 'IQ\ContentAssetController@modal')->name('iq_content_assets_modal');
});
@ -156,6 +159,8 @@ Route::group(['middleware' => ['admin']], function()
Route::get('/travel/program/detail/{id}', 'TravelProgramController@detail')->name('travel_program_detail');
Route::post('/travel/program/detail/{id}', 'TravelProgramController@store')->name('travel_program_detail');
Route::get('/travel/program/generate_keywords/{id}', 'TravelProgramController@generateKeywords')->name('travel_program_generate_keywords');
Route::post('/travel/program/class/update', 'TravelProgramController@classUpdate')->name('travel_program_class_update');
Route::get('/travel/program/class/delete/{id}', 'TravelProgramController@classDelete')->name('travel_program_class_delete');
@ -216,26 +221,33 @@ Route::group(['middleware' => ['admin']], function()
Route::post('/travel_user_booking_fewo/detail/{id}', 'TravelUserBookingFewoController@store')->name('travel_user_booking_fewo_detail');
Route::get('/travel_user_booking_fewo/delete/{id}', 'TravelUserBookingFewoController@delete')->name('travel_user_booking_fewo_delete');
});
Route::group(['middleware' => ['auth.permission:cms-cn']], function() {
Route::group(['middleware' => ['auth.permission:cms-cn-in']], function() {
//CMS Infos
Route::get('/cms/content/infos', 'CMS\CMSContentInfoController@index')->name('cms_content_infos');
Route::post('/cms/content/infos', 'CMS\CMSContentInfoController@store')->name('cms_content_infos');
Route::get('/cms/content/infos/delete/{model}/{id}', 'CMS\CMSContentInfoController@delete')->name('cms_content_infos_delete');
});
Route::group(['middleware' => ['auth.permission:cms-cn-al']], function() {
// CMS Inhalte
Route::get('/cms/content/all', 'CMS\CMSContentController@index')->name('cms_content_all');
Route::post('/cms/content/all/store', 'CMS\CMSContentController@store')->name('cms_content_all_store');
Route::post('/cms/content/all/load/modal', 'CMS\CMSContentController@loadModal')->name('cms_content_all_load_modal');
Route::get('/cms/content/all/delete/{id}', 'CMS\CMSContentController@delete')->name('cms_content_all_delete');
});
Route::group(['middleware' => ['auth.permission:cms-cn-co']], function() {
//CMS Länder
Route::get('/cms/content/country', 'CMS\CMSContentCountryController@index')->name('cms_content_country');
Route::get('/cms/content/country/detail/{id}/{step?}', 'CMS\CMSContentCountryController@detail')->name('cms_content_country_detail');
Route::post('/cms/content/country/store/{id}', 'CMS\CMSContentCountryController@store')->name('cms_content_country_store');
});
Route::group(['middleware' => ['auth.permission:cms-cn-au']], function() {
//CMS Author
Route::get('/cms/content/author', 'CMS\CMSContentAuthorController@index')->name('cms_content_author');
Route::post('/cms/content/author/store', 'CMS\CMSContentAuthorController@store')->name('cms_content_author_store');
Route::post('/cms/content/author/load/modal', 'CMS\CMSContentAuthorController@loadModal')->name('cms_content_author_load_modal');
Route::get('/cms/content/author/delete/{id}', 'CMS\CMSContentAuthorController@delete')->name('cms_content_author_delete');
});
Route::group(['middleware' => ['auth.permission:cms-tg']], function() {
// CMS Reiseführer
Route::get('/cms/travel_guide/content', 'CMS\CMSTravelGuideController@index')->name('cms_travel_guide_content');
@ -301,6 +313,13 @@ Route::group(['middleware' => ['superadmin']], function() {
Route::get('/admin/settings/travel/nationality/delete/{id}', 'Settings\TravelNationalityController@delete')->name('admin_settings_travel_nationality_delete');
});
Route::group(['middleware' => ['auth.permission:sua-st-ke']], function() {
//SUPERADMIN > Einstellungen > Keywords
Route::get('/admin/settings/keyword', 'Settings\KeywordController@index')->name('admin_settings_keyword');
Route::post('/admin/settings/keyword/update', 'Settings\KeywordController@update')->name('admin_settings_keyword_update');
Route::get('/admin/settings/keyword/delete/{id}', 'Settings\KeywordController@delete')->name('admin_settings_keyword_delete');
});
Route::group(['middleware' => ['auth.permission:sua-re-bo']], function() {
//SUPERADMIN > report > Buchungen
Route::get('/admin/report/bookings', 'Admin\ReportController@bookings')->name('admin_report_bookings');

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 MiB

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