membership register

This commit is contained in:
Kevin Adametz 2020-02-15 14:53:32 +01:00
parent 3711fcc8d0
commit 37cb2b06c7
38 changed files with 1261 additions and 463 deletions

127
.idea/workspace.xml generated
View file

@ -2,102 +2,43 @@
<project version="4">
<component name="ChangeListManager">
<list default="true" id="2fbaac5f-25ba-4502-a970-cc14728d7d55" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/Web/RegisterController.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Libraries/ContractPDF.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Mail/MailAccountActive.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Mail/MailReleaseAccount.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Repositories/ContractPDFRepository.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Repositories/FileRepository.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/admin/lead/m_register_data.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/emails/info.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/wizard/register.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/wizard/register_release.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/web/templates/_content_contact.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/web/templates/registrierung.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/web/templates/registrierung_finish.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/mivita.care.iml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/mivita.care.iml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/php.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/php.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/MembershipController.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Middleware/ActiveAccount.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/app/Http/Middleware/ActiveShop.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/lang/de/cal.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/membership/_abo_options.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/membership/_upgrade.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/membership/index.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/wizard/_payment.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/wizard/create_release.blade.php" afterDir="false" />
<change afterPath="$PROJECT_DIR$/resources/views/user/wizard/register_payment.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.phpstorm.meta.php" beforeDir="false" afterPath="$PROJECT_DIR$/.phpstorm.meta.php" afterDir="false" />
<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/PayoneController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Api/PayoneController.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/HomeController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/HomeController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/LeadController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/LeadController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/SalesController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/SalesController.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/UserUpdatePasswordController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/UserUpdatePasswordController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Pay/PayoneController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Pay/PayoneController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/UserShopController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/UserShopController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Web/CheckoutController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Web/CheckoutController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Web/ContactController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Web/ContactController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Web/SiteController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Web/SiteController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/WizardController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/WizardController.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/Http/Middleware/Authenticate.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Middleware/Authenticate.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Mail/MailActivateUser.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Mail/MailActivateUser.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Http/Middleware/Localization.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Middleware/Localization.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Mail/MailCheckout.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Mail/MailCheckout.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Mail/MailResetPassword.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Mail/MailResetPassword.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Mail/MailVerifyAccount.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Mail/MailVerifyAccount.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Mail/MailVerifyContact.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Mail/MailVerifyContact.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/ShoppingPayment.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/ShoppingPayment.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/ShoppingUser.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/ShoppingUser.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/Product.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Product.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/UserAccount.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/UserAccount.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Models/UserLevel.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/UserLevel.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Providers/AppServiceProvider.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Providers/AppServiceProvider.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/Repositories/UserRepository.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Repositories/UserRepository.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/packages.php" beforeDir="false" afterPath="$PROJECT_DIR$/bootstrap/cache/packages.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/filesystems.php" beforeDir="false" afterPath="$PROJECT_DIR$/config/filesystems.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2014_10_12_000000_create_users_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2014_10_12_000000_create_users_table.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2018_10_21_164001_create_products_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2018_10_21_164001_create_products_table.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2019_02_23_161530_create_shopping_users_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_02_23_161530_create_shopping_users_table.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/database/migrations/2019_02_29_170559_create_user_accounts_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_02_29_170559_create_user_accounts_table.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/application.js" beforeDir="false" afterPath="$PROJECT_DIR$/public/js/application.js" afterDir="false" />
<change beforePath="$PROJECT_DIR$/public/js/forms_file-upload.js" beforeDir="false" afterPath="$PROJECT_DIR$/public/js/forms_file-upload.js" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/lang/de.json" beforeDir="false" afterPath="$PROJECT_DIR$/resources/lang/de.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/lang/de/email.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/lang/de/email.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/lang/de/validation.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/lang/de/validation.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/attribute/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/attribute/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/category/images.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/category/images.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/category/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/category/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/country/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/country/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/lead/edit.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/lead/edit.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/lead/m_data_form.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/lead/m_data_form.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/lead/m_data_form_edit.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/lead/m_data_form_edit.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/level/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/level/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/product/images.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/product/images.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/product/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/product/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/shipping/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/shipping/index.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/site/images.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/site/images.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/auth/login.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/auth/login.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/product/form.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/product/form.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/admin/site/edit.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/site/edit.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/emails/checkout.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/emails/checkout.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/home.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/home.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/status/not_found.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/status/not_found.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/status/status_error.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/status/status_error.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/status/status_register.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/status/status_register.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/status/status_verify.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/status/status_verify.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/status/user_blocked.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/status/user_blocked.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/status/verify.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/status/verify.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/user/components/user_shop_edit.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/components/user_shop_edit.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/user/user_form.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/user_form.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/user/wizard/show.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/wizard/create.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/layouts/includes/footer.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/layouts/includes/footer.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/aloevera.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/aloevera.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/anforderungsprofil.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/anforderungsprofil.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/checkout-final.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/checkout-final.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/erreichbarkeit.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/erreichbarkeit.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/existenzgruendung.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/existenzgruendung.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/karrierechancen.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/karrierechancen.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/kontakt.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/kontakt.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/partner.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/partner.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/ueber-uns.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/ueber-uns.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/vereinbarkeit.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/vereinbarkeit.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/vorteile.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/vorteile.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/user/layouts/includes/footer.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/user/layouts/includes/footer.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/user/wizard/create.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/wizard/create.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/checkout.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/checkout.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/routes/web.php" beforeDir="false" afterPath="$PROJECT_DIR$/routes/web.php" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
@ -275,7 +216,7 @@
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/app/Mail" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/resources/views/user/membership" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
<property name="nodejs_package_manager_path" value="npm" />
@ -290,11 +231,11 @@
<recent name="$PROJECT_DIR$/public/download" />
</key>
<key name="CopyFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/app/Mail" />
<recent name="$PROJECT_DIR$/app/Repositories" />
<recent name="$PROJECT_DIR$/app/Libraries" />
<recent name="$PROJECT_DIR$/resources/views/user/membership" />
<recent name="$PROJECT_DIR$/resources/views/user/members" />
<recent name="$PROJECT_DIR$/resources/views/user/wizard" />
<recent name="$PROJECT_DIR$/resources/views/emails" />
<recent name="$PROJECT_DIR$/app/Http/Controllers" />
<recent name="$PROJECT_DIR$/app/Http/Middleware" />
</key>
</component>
<component name="RunManager">
@ -440,6 +381,8 @@
<workItem from="1581502538849" duration="2174000" />
<workItem from="1581517312628" duration="9759000" />
<workItem from="1581604452585" duration="5853000" />
<workItem from="1581686945791" duration="4486000" />
<workItem from="1581691515338" duration="19033000" />
</task>
<servers />
</component>
@ -473,9 +416,10 @@
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="754" y="395" key="#com.intellij.execution.impl.EditConfigurationsDialog/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581158802015" />
<state x="968" y="472" key="#com.intellij.openapi.updateSettings.impl.PluginUpdateInfoDialog" timestamp="1578493681405">
<state x="968" y="472" key="#com.intellij.openapi.updateSettings.impl.PluginUpdateInfoDialog" timestamp="1581691507125">
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="968" y="472" key="#com.intellij.openapi.updateSettings.impl.PluginUpdateInfoDialog/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581691507125" />
<state x="968" y="472" key="#com.intellij.openapi.updateSettings.impl.PluginUpdateInfoDialog/-2560.23.2560.1417/2560.-571.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1578493681405" />
<state x="1019" y="499" key="#com.jetbrains.php.actions.copyPaste.importReferences.PhpImportReferencesDialog" timestamp="1581190466051">
<screen x="0" y="23" width="2560" height="1417" />
@ -486,14 +430,15 @@
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="1064" 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="1578063343693" />
<state x="805" y="444" width="1115" height="793" key="find.popup" timestamp="1581619115984">
<state x="805" y="444" width="1115" height="793" key="find.popup" timestamp="1581770796462">
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="805" y="444" width="1115" height="793" key="find.popup/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581619115984" />
<state x="805" y="444" width="1115" height="793" key="find.popup/-2560.23.2560.1417/2560.-527.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1581770796462" />
<state x="926" y="497" width="683" height="486" key="find.popup/-2560.23.2560.1417/2560.-571.1440.2537/0.23.2560.1417@0.23.2560.1417" timestamp="1578504136004" />
<state x="945" y="377" width="670" height="676" key="search.everywhere.popup" timestamp="1578504893896">
<state x="945" y="377" width="670" height="676" key="search.everywhere.popup" timestamp="1581771399932">
<screen x="0" y="23" width="2560" height="1417" />
</state>
<state x="945" y="377" 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="1581771399932" />
<state x="945" y="377" 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="1578504893896" />
</component>
<component name="XDebuggerManager">

View file

@ -93,6 +93,15 @@ class PayoneController extends Controller
die();
}
/* TODO -- need this?
if($shopping_payment->txaction == $data['txaction']){
\Log::channel('payone')->error('PaymentStatus: same txaction error: '.json_encode($data));
echo "PaymentStatus: same txaction:";
var_dump($data);
die();
}
*/
//create transaction
PaymentTransaction::create([
'shopping_payment_id' => $shopping_payment->id,
@ -110,13 +119,15 @@ class PayoneController extends Controller
$shopping_payment->txaction = $data['txaction'];
$shopping_payment->save();
if($data['txaction'] == 'failed'){
$send_link = false;
if($data['txaction'] === 'failed'){
}
if($data['txaction'] == 'paid'){
if($data['txaction'] === 'paid'){
$shopping_order->paid = true;
$shopping_order->save();
//if product has actions
if($shopping_order->shopping_order_items && $shopping_order->auth_user_id){
foreach($shopping_order->shopping_order_items as $shopping_order_item){
@ -124,14 +135,18 @@ class PayoneController extends Controller
if($shopping_order_item->product->action){
$user = User::findOrFail($shopping_order->auth_user_id);
$user->payment_order_id = $shopping_order_item->product->id;
$user->save();
$send_link = true;
$date = date("Y-m-d H:i:s", strtotime("+1 years"));
foreach ($shopping_order_item->product->action as $do){
if($shopping_order_item->product->getActionName($do) === 'payment_for_account'){
$user->payment_account = date("Y-m-d H:i:s", strtotime("+1 years"));
$user->wizard = 10;
$user->payment_account = $date;
$user->wizard = 100;
}
if($shopping_order_item->product->getActionName($do) === 'payment_for_shop'){
$user->payment_shop = date("Y-m-d H:i:s", strtotime("+1 years"));
$user->wizard = 10;
$user->payment_shop = $date;
$user->wizard = 100;
}
$user->save();
}
@ -141,7 +156,7 @@ class PayoneController extends Controller
}
}
if($data['txaction'] == 'appointed'){
if($data['txaction'] === 'appointed'){
}
@ -152,9 +167,9 @@ class PayoneController extends Controller
}
$checkout_mail = config('app.checkout_mail');
if($user_shop_email){
Mail::to($billing_email)->bcc([$user_shop_email, $checkout_mail])->send(new MailCheckout($data['txaction'], $shopping_order, $shopping_payment));
Mail::to($billing_email)->bcc([$user_shop_email, $checkout_mail])->send(new MailCheckout($data['txaction'], $shopping_order, $shopping_payment, $send_link));
}else{
Mail::to($billing_email)->bcc($checkout_mail)->send(new MailCheckout($data['txaction'], $shopping_order, $shopping_payment));
Mail::to($billing_email)->bcc($checkout_mail)->send(new MailCheckout($data['txaction'], $shopping_order, $shopping_payment, $send_link));
}
print("TSOK");

View file

@ -32,14 +32,15 @@ class HomeController extends Controller
}
//login
//login / Dashboard
public function show()
{
if(!Auth::check()){
return redirect('login');
return redirect('login');
}
$data = [
'user' => Auth::user(),
'now' => Carbon::now(),
];
return view('home', $data);
}
@ -226,15 +227,16 @@ class HomeController extends Controller
$ShoppingPayment = ShoppingPayment::where('reference', $reference)->first();
if($ShoppingPayment && $ShoppingPayment->status === 'success'){
$user = Auth::user();
if($user && $user->wizard < 4){
$user->wizard = 4;
$user->save();
return redirect(route('wizard', [4]));
//is form wizard create payment
if($user && ($user->wizard == 13 || $user->wizard == 20)){
$user->wizard = 15; //realese Payments
$user->save();
return redirect(route('wizard_create', [15]));
}
}else{
\Session()->flash('alert-error', "Es ist ein Fehler bei der Bestellung aufgetreten");
return redirect(route('wizard'));
return redirect(route('/'));
}
}

View file

@ -0,0 +1,86 @@
<?php
namespace App\Http\Controllers;
use App\Models\Product;
use App\Models\ShoppingInstance;
use App\Models\ShoppingPayment;
use App\User;
use Auth;
use Carbon\Carbon;
use Config;
use Request;
use Input;
use Util;
use Yard;
class MembershipController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
public function index()
{
$user = Auth::user();
$data = [
'user' => $user,
'products' => Product::where('active', true)->where('show_at', '=', 3)->orderBy('pos', 'ASC')->get(),
'upgrade' => Product::where('active', true)->where('show_at', '=', 4)->where('identifier', 'upgrade')->get(),
];
return view('user.membership.index', $data);
}
public function storePayment($step = 0){
if(Input::get('switchers-package-wizard')){
$user = Auth::user();
Yard::instance('shopping')->destroy();
$product = Product::find(Input::get('switchers-package-wizard'));
if(Input::get('abo_options')){
$user->abo_options = true;
$user->save();
}
if($product && $product->active && $product->show_at >= 3){
$image = "";
if($product->images->count()){
$image = $product->images->first()->slug;
}
$qty = Input::get('qty') ? Input::get('qty') : 1;
Yard::instance('shopping')->add($product->id, $product->getLang('name'), $qty, $product->price, ['image' => $image, 'slug' => $product->slug, 'weight' => $product->weight]);
do {
$identifier = Util::getToken();
} while( ShoppingInstance::where('identifier', $identifier)->count() );
ShoppingInstance::create([
'identifier' => $identifier,
'user_shop_id' => 1, //is first faker shop!
'auth_user_id' => Auth::user()->id,
'subdomain' => url('/'),
'country_id' => Yard::instance('shopping')->getShippingCountryId(),
]);
Yard::instance('shopping')->store($identifier);
//add to DB
$path = route('checkout.checkout_card', ['identifier'=>$identifier]);
//$path = str_replace('http', 'https', $path);
return redirect()->secure($path);
}
}
\Session()->flash('alert-error', "Fehler beim Produkt");
return back();
}
}

View file

@ -68,7 +68,6 @@ class PayoneController extends Controller
$this->default = \Config::get('payone.defaults');
}
public function init($shopping_user, $shopping_order){
$this->shopping_user = $shopping_user;
$this->shopping_order = $shopping_order;
@ -81,7 +80,7 @@ class PayoneController extends Controller
//make Payone payment
public function setPrePayment($payment_method, $amount, $currency, $ret = []){
$this->reference = substr(uniqid(true), 0, 16);
$this->reference = substr(uniqid('m', false), 0, 16);
$this->setMethod($payment_method, $ret);
$this->urls = [
@ -342,10 +341,8 @@ class PayoneController extends Controller
];
$request = array_merge($this->default, $this->personalData, $this->deliveryData, $this->method, $this->prepayment, $this->urls);
// dd($request);
return Payone::sendRequest($request);
}

View file

@ -21,15 +21,13 @@ class UserShopController extends Controller
public function __construct(UserRepository $userRepo)
{
$this->middleware('auth');
$this->middleware('active.shop');
$this->userRepo = $userRepo;
}
public function index()
{
$user = Auth::user();
if ($user->shop && !$user->shop->set_defaults) {
if ($user->account) {
$user->shop->title = $user->account->first_name . " " . $user->account->last_name;

View file

@ -10,6 +10,7 @@ use App\Models\ShoppingOrder;
use App\Models\ShoppingOrderItem;
use App\Models\ShoppingPayment;
use App\Models\ShoppingUser;
use App\User;
use Illuminate\Session\SessionManager;
use Illuminate\Support\Collection;
use Validator;
@ -43,12 +44,9 @@ class CheckoutController extends Controller
// $ShippingCountry = ShippingCountry::where('country_id', 1)->first();
// $selected_country = $ShippingCountry->id;
}
if(!$this->getPayments('shopping_user_id') && Util::getAuthUser()){
$user = Util::getAuthUser();
$user->email;
$account = $user->account;
$shopping_user = new ShoppingUser();
$shopping_user->auth_user_id = $user->id;
$shopping_user->billing_salutation = $user->account->salutation;
@ -74,6 +72,7 @@ class CheckoutController extends Controller
$shopping_user->shipping_city = $user->account->shipping_city;
$shopping_user->shipping_country_id = $user->account->shipping_country_id;
$shopping_user->shipping_phone = $user->account->shipping_phone;
$shopping_user->abo_options = $user->abo_options;
$shopping_user->save();
$this->putPayments('shopping_user_id', $shopping_user->id);
@ -200,6 +199,9 @@ class CheckoutController extends Controller
$ret['elv']['iban'] = $data['elv_iban'];
$ret['elv']['bic'] = $data['elv_bic'];
$ret['elv']['bankaccountholder'] = $data['elv_bankaccountholder'];
//check abo and save the mandate
$this->storeUserPaymentsData($shopping_user, $ret);
}
//other
$pay = new PayoneController();
@ -271,6 +273,18 @@ class CheckoutController extends Controller
return view('web.templates.checkout-final', $data);
}
private function storeUserPaymentsData($shopping_user, $ret){
if($shopping_user->auth_user_id){
$user = User::find($shopping_user->auth_user_id);
if($user && $user->account && $user->abo_options){
if(isset($ret['elv']) && is_array($ret['elv'])){
$user->account->payment_data = $ret['elv'];
$user->account->save();
}
}
}
}
private function makeShoppingUser($data){
$data['same_as_billing'] = isset($data['same_as_billing']) ? true : false;
@ -365,6 +379,7 @@ class CheckoutController extends Controller
$this->session->put($this->instance, $content);
}
private function getPayments($key){
$content = $this->getContent();
if ($content->has($key)){
@ -372,6 +387,7 @@ class CheckoutController extends Controller
}
return false;
}
private function getContent()
{
if (is_null($this->session->get($this->instance))) {
@ -380,7 +396,6 @@ class CheckoutController extends Controller
return $this->session->get($this->instance);
}
public function destroy()
{
$this->session->remove($this->instance);

View file

@ -36,7 +36,6 @@ class WizardController extends Controller
public function create()
{
if(!Auth::check()){
return redirect('login');
}
@ -46,11 +45,12 @@ class WizardController extends Controller
$account = UserAccount::create([]);
$user->account_id = $account->id;
$user->save();
return redirect(route('wizard'));
return redirect(route('wizard_create'));
}
$step = !$user->wizard ? 0 : $user->wizard;
if($step == 10){
if($step >= 20){
return redirect('/');
}
$data = [
@ -59,6 +59,10 @@ class WizardController extends Controller
'products' => Product::where('active', true)->where('show_at', '=', 3)->orderBy('pos', 'ASC')->get(),
];
if($step == 15){
return view('user.wizard.create_release', $data);
}
return view('user.wizard.create', $data);
}
@ -73,12 +77,12 @@ class WizardController extends Controller
$account = UserAccount::create([]);
$user->account_id = $account->id;
$user->save();
return redirect(route('wizard'));
return redirect(route('wizard_register'));
}
$step = !$user->wizard ? 0 : $user->wizard;
if($step == 10){
if($step >= 10){
return redirect('/');
}
$data = [
@ -93,6 +97,33 @@ class WizardController extends Controller
return view('user.wizard.register', $data);
}
public function payment()
{
if(!Auth::check()){
return redirect('login');
}
$user = User::findOrFail(Auth::user()->id);
if(!$user->account){
$account = UserAccount::create([]);
$user->account_id = $account->id;
$user->save();
return redirect(route('wizard_payment'));
}
$data = [
'user' => Auth::user(),
'step' => 0,
'products' => Product::where('active', true)->where('show_at', '=', 3)->orderBy('pos', 'ASC')->get(),
];
if($user->wizard == 20){
return view('user.wizard.register_payment', $data);
}
return redirect(route('/'));
}
public function storeRegister($step = false)
{
@ -235,7 +266,7 @@ class WizardController extends Controller
$user->account = new UserAccount();
}
if($step == 0){
if($step == 10){
$rules = array(
'accepted_data_protection' => 'required',
'accepted_active' => 'required',
@ -245,33 +276,33 @@ class WizardController extends Controller
$data = [
'user' => Auth::user(),
'step' => $step,
'products' => Product::where('active', true)->where('show_at', '=', 3)->orderBy('pos', 'ASC')->get(),
];
return view('user.wizard.show', $data)->withErrors($validator);
$user->wizard = 10;
$user->save();
return view('user.wizard.create', $data)->withErrors($validator);
}
$account = $user->account;
$account->data_protection = now();
if($account->data_protection === null){
$account->data_protection = now();
}
if($user->agreement === null){
$user->agreement = now();
}
$account->save();
$user->agreement = now();
if($user->wizard < 1){
$user->wizard = 1;
}
$user->wizard = 11;
$user->save();
return redirect(route('wizard', [1]));
return redirect(route('wizard_create', [11]));
}
if($step == 1){
if($step == 11){
if($user->isPasswort()){
if($user->wizard < 2){
$user->wizard = 2;
}
//has Passwort -> delete Code!
$user->confirmation_code = null;
$user->confirmation_code_to = null;
$user->confirmation_code_remider = 0;
$user->wizard = 12;
$user->save();
return redirect(route('wizard', [2]));
return redirect(route('wizard_create', [12]));
}
$rules = array(
'password' => 'required|string|min:6|confirmed',
@ -281,34 +312,31 @@ class WizardController extends Controller
$data = [
'user' => Auth::user(),
'step' => $step,
'products' => Product::where('active', true)->where('show_at', '=', 3)->orderBy('pos', 'ASC')->get(),
];
return view('user.wizard.show', $data)->withErrors($validator);
}else{
$user->fill([
'password' => Hash::make(Input::get('password'))
])->save();
if($user->wizard < 2){
$user->wizard = 2;
}
//has Passwort -> delete Code!
$user->confirmation_code = null;
$user->confirmation_code_to = null;
$user->confirmation_code_remider = 0;
$user->save();
return redirect(route('wizard', [2]));
return view('user.wizard.create', $data)->withErrors($validator);
}
$user->fill([
'password' => Hash::make(Input::get('password'))
])->save();
$user->wizard = 12;
$user->save();
return redirect(route('wizard_create', [12]));
}
if($step == 2){
if($step == 12){
$rules = array(
'salutation' => 'required',
'first_name'=>'required',
'last_name'=>'required',
'address'=>'required',
'zipcode'=>'required',
'first_name' => 'required',
'last_name' => 'required',
'address' => 'required',
'zipcode' => 'required',
'city' => 'required',
'phone' => 'required_without:mobil',
'mobil' => 'required_without:phone',
'country_id' => 'required|integer|min:1',
'birthday' => 'required',
);
if(!Input::get('same_as_billing')){
@ -324,63 +352,65 @@ class WizardController extends Controller
}
$validator = Validator::make(Input::all(), $rules);
if ($validator->fails()) {
return redirect(route('wizard', [2]))->withErrors($validator)->withInput(Input::all());
}else{
$data = Input::all();
$data['same_as_billing'] = Input::get('same_as_billing') == NULL ? 0 : 1;
$user->account->fill($data)->save();
if($user->wizard < 3){
$user->wizard = 3;
}
$user->active_date = now();
$user->active = 1;
$user->save();
return redirect(route('wizard', [3]));
return redirect(route('wizard_create', [12]))->withErrors($validator)->withInput(Input::all());
}
}
if($step == 3){
$data = Input::all();
$data['same_as_billing'] = Input::get('same_as_billing') == NULL ? 0 : 1;
$user->account->fill($data)->save();
$user->wizard = 13;
$user->active_date = now();
$user->active = 1;
$user->confirmation_code = null;
$user->confirmation_code_to = null;
$user->confirmation_code_remider = 0;
$user->save();
return redirect(route('wizard_create', [13]));
if(Input::get('switchers-package-wizard')){
Yard::instance('shopping')->destroy();
$product = Product::find(Input::get('switchers-package-wizard'));
if($product && $product->active && $product->show_at == 3){
$image = "";
if($product->images->count()){
$image = $product->images->first()->slug;
}
Yard::instance('shopping')->add($product->id, $product->getLang('name'), 1, $product->price, ['image' => $image, 'slug' => $product->slug, 'weight' => $product->weight]);
do {
$identifier = Util::getToken();
} while( ShoppingInstance::where('identifier', $identifier)->count() );
ShoppingInstance::create([
'identifier' => $identifier,
'user_shop_id' => 1, //is first faker shop!
'auth_user_id' => $user->id,
'subdomain' => url('/'),
'country_id' => Yard::instance('shopping')->getShippingCountryId(),
]);
Yard::instance('shopping')->store($identifier);
//add to DB
$path = route('checkout.checkout_card', ['identifier'=>$identifier]);
//$path = str_replace('http', 'https', $path);
return redirect()->secure($path);
}
}
\Session()->flash('alert-error', "Fehler beim Produkt");
return redirect(route('wizard', [3]));
}
}
public function storePayment($step = 0){
if(Input::get('switchers-package-wizard')){
$user = Auth::user();
Yard::instance('shopping')->destroy();
$product = Product::find(Input::get('switchers-package-wizard'));
if(Input::get('abo_options')){
$user->abo_options = true;
$user->save();
}
if($product && $product->active && $product->show_at == 3){
$image = "";
if($product->images->count()){
$image = $product->images->first()->slug;
}
Yard::instance('shopping')->add($product->id, $product->getLang('name'), 1, $product->price, ['image' => $image, 'slug' => $product->slug, 'weight' => $product->weight]);
do {
$identifier = Util::getToken();
} while( ShoppingInstance::where('identifier', $identifier)->count() );
ShoppingInstance::create([
'identifier' => $identifier,
'user_shop_id' => 1, //is first faker shop!
'auth_user_id' => Auth::user()->id,
'subdomain' => url('/'),
'country_id' => Yard::instance('shopping')->getShippingCountryId(),
]);
Yard::instance('shopping')->store($identifier);
//add to DB
$path = route('checkout.checkout_card', ['identifier'=>$identifier]);
//$path = str_replace('http', 'https', $path);
return redirect()->secure($path);
}
}
\Session()->flash('alert-error', "Fehler beim Produkt");
return back();
}
public function delete($id, $relation){

View file

@ -58,6 +58,8 @@ class Kernel extends HttpKernel
'admin' => \App\Http\Middleware\Admin::class,
'superadmin' => \App\Http\Middleware\SuperAdmin::class,
'sysadmin' => \App\Http\Middleware\SysAdmin::class,
'active.account' => \App\Http\Middleware\ActiveAccount::class,
'active.shop' => \App\Http\Middleware\ActiveShop::class,
'subdomain' => \App\Http\Middleware\Subdomain::class,
'checkout' => \App\Http\Middleware\Checkout::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,

View file

@ -0,0 +1,26 @@
<?php
namespace App\Http\Middleware;
use Closure;
use Auth;
class ActiveAccount
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if ( Auth::check() && Auth::user()->isActiveAccount() )
{
return $next($request);
}
return redirect('/home');
}
}

View file

@ -0,0 +1,26 @@
<?php
namespace App\Http\Middleware;
use Closure;
use Auth;
class ActiveShop
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if ( Auth::check() && Auth::user()->isActiveShop() )
{
return $next($request);
}
return redirect('/home');
}
}

View file

@ -56,11 +56,10 @@ class Authenticate
if(in_array('user', $guards) && $this->auth->user()->wizard < 20){
return redirect(route('wizard_create'));
}
//is wizard
/*if(in_array('user', $guards) && $this->auth->user()->wizard < 5){
return redirect(route('wizard'));
//20 is payment
if(in_array('user', $guards) && $this->auth->user()->wizard == 20){
return redirect(route('wizard_payment'));
}
*/
}

View file

@ -2,6 +2,7 @@
namespace App\Http\Middleware;
use Carbon;
use Closure;
use Auth;
@ -20,8 +21,7 @@ class Localization
if ( \Session::has('locale')) {
\App::setLocale(\Session::get('locale'));
// You also can set the Carbon locale
//Carbon::setLocale(\Session::get('locale'));
Carbon::setLocale(\Session::get('locale'));
}
return $next($request);

View file

@ -15,16 +15,18 @@ class MailCheckout extends Mailable
public $txaction;
public $shopping_order;
public $shopping_payment;
protected $send_link;
public $subject;
public $data;
public function __construct($txaction, $shopping_order, $shopping_payment)
public function __construct($txaction, $shopping_order, $shopping_payment, $send_link)
{
$this->txaction = $txaction;
$this->shopping_order = $shopping_order;
$this->shopping_payment = $shopping_payment;
$this->send_link = $send_link;
$this->subject = __('email.checkout_subject')." mivita.care";
if($shopping_order->user_shop){
@ -42,6 +44,11 @@ class MailCheckout extends Mailable
//make Adresse
}
if($this->txaction === 'paid'){
if($this->send_link){
}
return $this->view('emails.checkout')->with([
'salutation' => $salutation,
'copy1line' => __('email.checkout_copy1line'),
@ -50,6 +57,9 @@ class MailCheckout extends Mailable
'copy3line' => __('email.checkout_copy3line'),
'greetings' => __('email.greetings'),
'sender' => __('email.sender'),
'send_link' => $this->send_link,
'url' => Util::getMyMivitaUrl(),
'button' => Util::getMyMivitaUrl(false),
]);
}else{
return $this->view('emails.checkout_status')->with([
@ -61,6 +71,7 @@ class MailCheckout extends Mailable
'copy3line' => __('email.checkout_copy3line'),
'greetings' => __('email.greetings'),
'sender' => __('email.sender'),
'send_link' => false,
]);
}

View file

@ -133,6 +133,7 @@ class Product extends Model
'amount',
'active',
'show_at',
'identifier',
'action'
];
@ -141,6 +142,7 @@ class Product extends Model
1 => 'User + Berater Shop',
2 => 'nur Berater Shop',
3 => 'Registrierung Shop',
4 => 'Mitgliedschaft Berater',
];
public $actions = [

View file

@ -124,6 +124,10 @@ class UserAccount extends Model
'birthday', 'website', 'facebook', 'facebook_fanpage', 'instagram'
];
protected $casts = [
'payment_data' => 'array',
];
use SoftDeletes;
protected $dates = ['deleted_at'];

View file

@ -16,7 +16,7 @@ class Util
}
public static function formatDate(){
if(\App::getLocale() == "en"){
if(\App::getLocale() === "en"){
return 'yyyy-mm-dd';
}
return 'dd.mm.yyyy';
@ -24,19 +24,26 @@ class Util
}
public static function formatDateDB(){
if(\App::getLocale() == "en"){
if(\App::getLocale() === "en"){
return 'Y-m-d';
}
return 'd.m.Y';
}
public static function formatDateTimeDB(){
if(\App::getLocale() == "en"){
if(\App::getLocale() === "en"){
return 'Y-m-d - H:i';
}
return 'd.m.Y - H:i';
}
public static function formatNumber($value){
if(\App::getLocale() === "en"){
return number_format($value, 2, '.', ',');
}
return number_format($value, 2, ',', '.');
}
public static function utf8ize( $mixed ) {
if (is_array($mixed)) {
foreach ($mixed as $key => $value) {
@ -95,6 +102,10 @@ class Util
return false;
}
public static function getMyMivitaUrl($protocol = true){
$pro = $protocol ? config('app.protocol') : "";
return $pro.config('app.pre_url_crm').config('app.domain').config('app.tld_care');
}
public static function getUserShopBackUrl($reference = ""){
if(\Session::has('user_shop')){

View file

@ -129,11 +129,21 @@ class User extends Authenticatable
}
public function payment_order(){
return $this->belongsTo('App\Models\Product', 'payment_order_id');
}
public function files(){
return $this->hasMany('App\Models\File', 'user_id', '');
}
public function shopping_orders(){
return $this->hasMany('App\Models\ShoppingOrder', 'auth_user_id', '');
}
public function shop()
{
return $this->hasOne('App\Models\UserShop', 'user_id', 'id');
@ -141,7 +151,6 @@ class User extends Authenticatable
public function user_update_email()
{
return $this->hasMany('App\Models\UserUpdateEmail', 'user_id', 'id');
@ -228,7 +237,6 @@ class User extends Authenticatable
}
public function daysHumansActiveAccount(){
Carbon::setLocale(\App::getLocale());
return Carbon::now()->diffForHumans(Carbon::parse($this->payment_account));
}
@ -241,11 +249,9 @@ class User extends Authenticatable
}
public function daysHumansActiveShop(){
Carbon::setLocale(\App::getLocale());
return Carbon::now()->diffForHumans(Carbon::parse($this->payment_shop));
}
/**
* @return string
*/

View file

@ -45,16 +45,31 @@ class CreateUsersTable extends Migration
$table->rememberToken();
$table->timestamp('last_login')->nullable();
$table->unsignedInteger('payment_order_id')->nullable();
$table->timestamp('payment_account')->nullable();
$table->timestamp('payment_shop')->nullable();
$table->boolean('abo_options')->default(false);
$table->timestamps();
$table->softDeletes();
$table->foreign('account_id')
->references('id')
->on('user_accounts');
$table->foreign('m_level')
->references('id')
->on('user_levels');
$table->foreign('m_sponsor')
->references('id')
->on('users');
$table->foreign('payment_order_id')
->references('id')
->on('products');
});
}

View file

@ -54,6 +54,7 @@ class CreateProductsTable extends Migration
$table->unsignedInteger('amount')->nullable(); //for shop
$table->tinyInteger('show_at')->unsigned()->nullable()->default(0);
$table->string('identifier', 20)->nullable();
$table->string('action')->nullable();

View file

@ -47,6 +47,9 @@ class CreateShoppingUsersTable extends Migration
$table->unsignedInteger('shipping_country_id');
$table->string('shipping_phone')->nullable();
$table->boolean('abo_options')->default(false);
$table->timestamps();
$table->foreign('billing_country_id')

View file

@ -65,6 +65,8 @@ class CreateUserAccountsTable extends Migration
$table->string('facebook_fanpage')->nullable();
$table->string('instagram')->nullable();
$table->text('payment_data')->nullable();
$table->timestamp('data_protection')->nullable();
$table->timestamps();

View file

@ -11,4 +11,19 @@ a[aria-expanded='true'] > .fa-caret-expand:before {
.dropzone {
border: 2px dashed;
}
.card-body {
padding-bottom: 1rem;
}
.card hr {
border-color: #d6d6de;
}
.custom-control.custom-checkbox .custom-control-input:checked ~ .custom-control-label.secondary::before,
.custom-control.custom-radio .custom-control-input:checked ~ .custom-control-label.secondary::before {
border-color: #d7d700;
background-color: #d7d700;
}

58
resources/lang/de/cal.php Executable file
View file

@ -0,0 +1,58 @@
<?php
return [
'months' => [
'January' =>'Januar',
'February' =>'Februar',
'March' =>'März',
'April' => 'April',
'May' => 'Mai',
'June' =>'Juni',
'July' =>'Juli',
'August' =>'August',
'September' =>'September',
'October' =>'Oktober',
'November' =>'November',
'December' =>'Dezember',
],
'months_short' => [
'Jan' => 'Jan',
'Feb' => 'Feb',
'Mar' => 'Mär',
'Apr' => 'Apr',
'May' => 'Mai',
'Jun' => 'Jun',
'Jul' => 'Jul',
'Aug' => 'Aug',
'Sep' => 'Sep',
'Oct' => 'Okt',
'Nov' => 'Nov',
'Dec' =>'Dez'
],
'weekdays' => [
'Sunday' =>'Sonntag',
'Monday' =>'Montag',
'Tuesday' =>'Dienstag',
'Wednesday' =>'Mittwoch',
'Thursday' =>'Donnerstag',
'Friday' =>'Freitag',
'Saturday' =>'Samstag'
],
'weekdays_short' => [
'Sun' => 'So.',
'Mon' => 'Mo.',
'Tue' => 'Di.',
'Wed' => 'Mi.',
'Thu' => 'Do.',
'Fri' => 'Fr.',
'Sat' => 'Sa.'],
'weekdays_min' => [
'Su' =>'So',
'Mo' =>'Mo',
'Tu' =>'Di',
'We' =>'Mi',
'Th' =>'Do',
'Fr' =>'Fr',
'Sa' =>'Sa'
]
];

View file

@ -17,17 +17,19 @@
{{ Form::text('name', $product->name, array('placeholder'=>__('Name'), 'class'=>'form-control', 'id'=>'name', 'required')) }}
</div>
<div class="form-row">
<div class="form-group col-sm-8">
<div class="form-group col-sm-6">
<label class="form-label" for="title">{{ __('Title') }}</label>
{{ Form::text('title', $product->title, array('placeholder'=>__('Title'), 'class'=>'form-control', 'id'=>'title')) }}
</div>
<div class="form-group col-sm-4">
<div class="form-group col-sm-3">
<label class="form-label" for="title">{{ __('Anzeigen') }}</label>
{{ Form::select('show_at', $product->showATs, $product->show_at, array('data-live-search'=>'false', 'class'=>'selectpicker', 'id'=>'show_at') ) }}
</div>
<div class="form-group col-sm-3">
<label class="form-label" for="identifier">{{ __('Kennung') }}</label>
{{ Form::text('identifier', $product->identifier, array('placeholder'=>__('Kennung'), 'class'=>'form-control', 'id'=>'identifier')) }}
</div>
</div>

View file

@ -23,13 +23,13 @@
{!! Form::open(['url' => route('admin_sites_store', [$site]), 'class' => 'form-horizontal', 'id'=>'']) !!}
<div class="text-left mt-0 mb-2">
<button type="submit" class="btn btn-submit">{{ __('save') }}</button>&nbsp;
<button type="submit" class="btn btn-submit btn-primary">{{ __('save') }}</button>&nbsp;
</div>
@include('admin.site.form')
<div class="text-left mt-0 mb-2">
<button type="submit" class="btn btn-submit">{{ __('save') }}</button>&nbsp;
<button type="submit" class="btn btn-submit btn-primary">{{ __('save') }}</button>&nbsp;
</div>
{!! Form::close() !!}

View file

@ -215,6 +215,43 @@
<hr>
</td>
</tr>
@if($send_link)
<tr>
<td>
<center>
<table role="presentation" cellpadding="0" cellspacing="0" width="100%" border="0">
<tbody>
<tr>
<td style="word-wrap:break-word;background:transparent;font-size:0px;padding:10px 25px;padding-top:15px;padding-bottom:15px;padding-right:40px;padding-left:40px;" align="center" valign="top" background="data:image/gif;base64,">
<table role="presentation" cellpadding="0" cellspacing="0" align="center" border="0">
<tbody>
<tr>
<td style="border:none;border-radius:20px;color:#ffffff;cursor:auto;padding:15px 25px;" align="center" valign="middle" bgcolor="#b5c49b">
<p style="text-decoration:none;background:#b5c49b;color:#ffffff;font-family:Arial, sans-serif;font-size:13px;font-weight:normal;line-height:120%;text-transform:none;margin:0px;text-align: center">
<a href="{{ $url }}" style="color:#ffffff;font-size:14px;font-weight:bold;text-align:center;text-decoration:none;-webkit-text-size-adjust:none;">{{ $button }}</a>
</p>
</td>
</tr>
<tr>
<td style="color:#37302d;text-align: center">
<span style="color: #cabda9; font-weight: normal; font-size: 13px; text-decoration: underline; word-wrap: break-word;white-space: pre-line;">{{ $url }}</span>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</center>
</td>
<tr>
<tr>
<td>
<hr>
</td>
</tr>
@endif
<tr>
<td class="sub_headline">
<b>{{__('email.checkout_mail_pay_info')}}</b>

View file

@ -16,175 +16,296 @@
</div>
@endif
@if($user->payment_account && $user->daysActiveAccount() <= 29)
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
<h4>{{__('Mitgliedschaft Jahresbeitrag') }}</h4>
<h4 class="media align-items-center font-weight-bold py-3 mb-2">
{{-- <img src="assets/img/avatars/1.png" alt="" class="ui-w-50 rounded-circle"> --}}
<div class="media-body ml-3">
Willkommen zurück, {{$user->account->first_name}}!
<div class="text-muted text-tiny mt-1"><small class="font-weight-normal">Heute ist {{__('cal.weekdays.'.$now->format('l'))}}, {{$now->format('j')}}. {{__('cal.months.'.$now->format('F'))}} {{$now->format('Y')}}</small></div>
</div>
</h4>
<hr class="container-m-nx mt-0 mb-4">
@if($user->daysActiveAccount() < 0)
<h5 class="alert badge-danger"><strong>Achtung:</strong> Deine Mitgliedschaft ist vor {{ $user->daysActiveAccount()*-1 }} Tagen ausgelaufen, bitte aktualisiere jetzt Deine Zahlung!</h5>
@elseif($user->daysActiveAccount() < 14)
<h5 class="alert badge-warning"><strong>Achtung:</strong> Deine Mitgliedschaft läuft in {{$user->daysActiveAccount()}} Tagen aus, bitte aktualisiere jetzt Deine Zahlung!</h5>
@else
<h5 class="alert badge-default"><strong>Achtung:</strong> Deine Mitgliedschaft läuft in {{$user->daysActiveAccount()}} Tagen aus, bitte aktualisiere jetzt Deine Zahlung!</h5>
{{--
TODO SEPA
--}}
@endif
<p>Erst wenn Dein Jahresbeitrag bei uns eingeht wird Deine Mitgliedschaft automastisch um ein Jahr verlängert.</p>
<p>Die Verlängerung gibt ab erstes Abschlussdatum ein weiteres volles Jahr, bis zum <strong>{{$user->modifyActiveAccount()}}</strong></p>
<a href="" class="btn btn-primary mb-3">Mitgliedschaft jetzt hier verlängern</a>
</div>
@endif
<div class="row">
@if($user->active == 1)
@if($user->payment_account && $user->daysActiveAccount() <= 29)
<div class="d-flex col-xl-12 align-items-stretch">
<!-- SHOP -->
<div class="card w-100 mb-4">
<h5 class="card-header">
{{__('Mitgliedschaft / Jahresbeitrag') }}
</h5>
<div class="card-body">
@if($user->active == 1)
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
<h4>{{__('Your Shop') }}</h4>
@if($user->daysActiveAccount() <= 0)
@if($user->isActiveAccount())
<h5 class="alert badge-danger"><strong>Achtung:</strong> Deine Mitgliedschaft läuft heute aus, bitte aktualisiere jetzt Deine Zahlung!</h5>
@else
<h5 class="alert badge-danger"><strong>Achtung:</strong> Deine Mitgliedschaft ist vor {{ $user->daysActiveAccount()*-1 }} Tagen ausgelaufen, bitte aktualisiere jetzt Deine Zahlung!</h5>
@endif
@elseif($user->daysActiveAccount() < 14)
<h5 class="alert badge-warning"><strong>Achtung:</strong> Deine Mitgliedschaft läuft in {{$user->daysActiveAccount()}} Tagen aus, bitte aktualisiere jetzt Deine Zahlung!</h5>
@else
<h5 class="alert badge-default"><strong>Achtung:</strong> Deine Mitgliedschaft läuft in {{$user->daysActiveAccount()}} Tagen aus, bitte aktualisiere jetzt Deine Zahlung!</h5>
{{--
TODO SEPA
--}}
@endif
<p>Erst wenn Dein Jahresbeitrag bei uns eingeht wird Deine Mitgliedschaft automastisch um ein Jahr verlängert.</p>
<p>Die Verlängerung gibt ab erstes Abschlussdatum ein weiteres volles Jahr, bis zum <strong>{{$user->modifyActiveAccount()}}</strong></p>
@if($user->payment_shop)
@if($user->shop)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('open since')}}</strong> {{__('at')}} {{ $user->shop->getActiveDateFormat() }}</p>
@if($user->shop->active)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Status')}}</strong> {{ __('active') }}</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Status')}}</strong> {{ __('inactive') }}</p>
</div>
<div class="card-footer py-3">
<a href="" class="btn btn-info mb-3"><i class="ion ion-ios-refresh text-default mr-1"></i> Mitgliedschaft jetzt hier verlängern</a>
</div>
</div>
<!-- / SHOP -->
</div>
@endif
<a href="{{route('user_shop')}}" class="btn btn-secondary">{{__('settings your shop')}}</a>
@else
<a href="{{route('user_shop')}}" class="btn btn-secondary">{{__('open your shop')}}</a>
@endif
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Shop nicht gebucht')}}</strong></p>
@endif
</div>
@endif
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
<h4>{{__('Activities') }}</h4>
{{-- <div class="d-flex col-xl-6 align-items-stretch">
<!-- Stats + Links -->
<div class="card d-flex w-100 mb-4">
<div class="row no-gutters row-bordered h-100">
<div class="d-flex col-sm-6 col-md-4 col-lg-6 align-items-center">
@if($user->isActiveAccount() )
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Berater-Mitgliedschaft aktiv')}}</strong> {{__('bis zum:')}} {{ $user->getPaymentAccountDateFormat() }}</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Berater-Account inaktiv')}} </strong>
@if($user->payment_account)
{{__('abgelaufen am')}}: {{ $user->getPaymentAccountDateFormat() }}
@endif
</p>
@endif
<a href="javascript:void(0)" class="card-body media align-items-center text-body">
<i class="lnr lnr-chart-bars display-4 d-block text-primary"></i>
<span class="media-body d-block ml-3">
<span class="text-big font-weight-bolder">$1,342.11</span><br>
<small class="">Umsatz diesen Monat</small>
</span>
</a>
@if($user->isActiveShop())
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Berater-Online-Shop aktiv')}}</strong> {{__('bis zum')}}: {{ $user->getPaymentShopDateFormat() }}</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Berater-Shop inaktiv')}}</strong>
@if($user->payment_shop)
{{__('abgelaufen am')}}: {{ $user->getPaymentShopDateFormat() }}
@endif
</p>
@endif
<hr>
</div>
<div class="d-flex col-sm-6 col-md-4 col-lg-6 align-items-center">
<a href="javascript:void(0)" class="card-body media align-items-center text-body">
<i class="lnr lnr-hourglass display-4 d-block text-primary"></i>
<span class="media-body d-block ml-3">
<span class="text-big"><span class="font-weight-bolder">152</span> Working Hours</span><br>
<small class="">Umsatz dieses Jahr</small>
</span>
</a>
</div>
<div class="d-flex col-sm-6 col-md-4 col-lg-6 align-items-center">
<a href="javascript:void(0)" class="card-body media align-items-center text-body">
<i class="lnr lnr-checkmark-circle display-4 d-block text-primary"></i>
<span class="media-body d-block ml-3">
<span class="text-big"><span class="font-weight-bolder">54</span> Tasks</span><br>
<small class="">Punkte</small>
</span>
</a>
@if($user->active == 1)
@if($user->files->count())
@foreach($user->files()->whereIdentifier('contract')->get() as $file)
<a class="btn btn-secondary mb-3" href="{{ route('storage_file', [$file->id, 'user']) }}" target="_blank">MIVITA_Beratervertrag.pdf</a>
@endforeach
@endif
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Daten vollständig, freigeschaltet')}}</strong> {{__('at')}}: {{ $user->getActiveDateFormat() }}</p>
</div>
<div class="d-flex col-sm-6 col-md-4 col-lg-6 align-items-center">
<a href="javascript:void(0)" class="card-body media align-items-center text-body">
<i class="lnr lnr-license display-4 d-block text-primary"></i>
<span class="media-body d-block ml-3">
<span class="text-big"><span class="font-weight-bolder">6</span> Projects</span><br>
<small class="">Verkäufe</small>
</span>
</a>
@endif
</div>
</div>
</div>
<!-- / Stats + Links -->
</div> --}}
@if($user->account_id)
<div class="d-flex col-xl-6 align-items-stretch">
<!-- SHOP -->
<div class="card w-100 mb-4">
<h5 class="card-header with-elements">
<div class="card-header-title">{{__('Mitgliedschaft') }}</div>
</h5>
<div class="card-body">
@if($user->active == 1)
@if($user->agreement)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Einverständniserklärung')}}</strong> {{__('at')}}: {{ $user->getAgreementFormat() }}
</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Einverständniserklärung')}}</strong> {{ __('nicht akzeptiert') }}</p>
@endif
@endif
@if($user->account->data_protection)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Privacy policy approved')}}</strong> {{__('at')}}: {{ $user->account->getDataProtectionFormat() }}
</p>
@endif
@endif
@if($user->confirmed == 1)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('E-Mail verified')}}</strong> {{__('at')}}: {{ $user->getConfirmationDateFormat() }}</p>
@endif
</div>
@if($user->isActiveAccount() )
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Berater-Mitgliedschaft aktiv')}}</strong> {{__('bis zum:')}} {{ $user->getPaymentAccountDateFormat() }}</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Berater-Account inaktiv')}} </strong>
@if($user->payment_account)
{{__('abgelaufen am')}}: {{ $user->getPaymentAccountDateFormat() }}
@endif
</p>
@endif
@if($user->active == 1)
@if($user->isActiveShop())
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Berater-Online-Shop aktiv')}}</strong> {{__('bis zum')}}: {{ $user->getPaymentShopDateFormat() }}</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Berater-Shop inaktiv')}}</strong>
@if($user->payment_shop)
{{__('abgelaufen am')}}: {{ $user->getPaymentShopDateFormat() }}
@endif
</p>
@endif
</div>
@if($user->payment_order_id)
<div class="card-footer py-3">
<a href="{{route('user_membership')}}" class="btn btn-secondary"><i class="ion ion-ios-people text-default mr-1"></i> {{__('Mitgliedschaft verwalten')}}</a>
</div>
@endif
</div>
<!-- / SHOP -->
{{-- <div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
<h4>{{ __('Einwilligung & Datenschutz') }}</h4>
</div>
{!! Form::open(['url' => route('user_data_accepted_form'), 'class' => 'form-horizontal' , 'id'=>'data-privacy-form-validations']) !!}
<div class="d-flex col-xl-6 align-items-stretch">
<!-- SHOP -->
<div class="card w-100 mb-4">
<h5 class="card-header with-elements">
<div class="card-header-title">{{__('Your Shop') }}</div>
</h5>
<div class="card-body">
@if($user->active == 1)
@if($user->payment_shop)
@if($user->shop)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('open since')}}</strong> {{__('at')}} {{ $user->shop->getActiveDateFormat() }}</p>
@if($user->shop->active)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Status')}}</strong> {{ __('active') }}</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Status')}}</strong> {{ __('inactive') }}</p>
@endif
@else
<a href="{{route('user_shop')}}" class="btn btn-secondary">{{__('open your shop')}}</a>
@endif
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Shop nicht gebucht')}}</strong></p>
@endif
@endif
</div>
@if($user->isActiveShop())
<div class="card-footer py-3">
<a href="{{route('user_shop')}}" class="btn btn-secondary"><i class="ion ion-ios-basket text-default mr-1"></i> {{__('settings your shop')}}</a>
</div>
@endif
</div>
<!-- / SHOP -->
<div class="form-group">
<label class="custom-control custom-checkbox m-0">
<input type="checkbox" class="custom-control-input" name="accepted_active" id="accepted_active" @if($user->agreement) checked @endif>
<span class="custom-control-label">{!! __('Declaration of consent') !!}</span>
</label>
</div>
<div class="col-xl-5">
<!-- Tasks -->
<div class="card mb-4">
<h5 class="card-header with-elements">
<div class="card-header-title">{{__('Activities') }}</div>
</h5>
<div class="card-body">
@if($user->active == 1)
@if($user->files->count())
@foreach($user->files()->whereIdentifier('contract')->get() as $file)
<a class="btn btn-secondary btn-block mb-3" href="{{ route('storage_file', [$file->id, 'user']) }}" target="_blank"><i class="ion ion-ios-download text-default mr-1"></i> MIVITA_Beratervertrag.pdf</a>
<hr class="mb-3">
@endforeach
@endif
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Daten vollständig, freigeschaltet')}}</strong> {{__('at')}}: {{ $user->getActiveDateFormat() }}</p>
@endif
@if($user->account_id)
@if($user->active == 1)
@if($user->agreement)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Einverständniserklärung')}}</strong> {{__('at')}}: {{ $user->getAgreementFormat() }}
</p>
@else
<p><span class="ion ion-md-close-circle-outline text-danger"></span>
<strong>{{__('Einverständniserklärung')}}</strong> {{ __('nicht akzeptiert') }}</p>
@endif
@endif
@if($user->account->data_protection)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('Privacy policy approved')}}</strong> {{__('at')}}: {{ $user->account->getDataProtectionFormat() }}
</p>
@endif
@endif
@if($user->confirmed == 1)
<p><span class="ion ion-md-checkmark-circle-outline text-primary"></span>
<strong>{{__('E-Mail verified')}}</strong> {{__('at')}}: {{ $user->getConfirmationDateFormat() }}</p>
@endif
</div>
</div>
<!-- / Tasks -->
</div>
<div class="col-xl-7">
<div class="row">
<div class="col-md-6">
<div class="card mb-4">
<h5 class="card-header with-elements">
<div class="card-header-title">{{__('Daten') }}</div>
</h5>
<div class="card-body">
@if($user->active == 1)
<p>{{__('Ändere Deine persönlichen Datan.')}}</p>
<a href="{{ route('user_edit') }}" class="btn btn-secondary"><i class="ion ion-ios-contact text-default mr-1"></i> {{ __('Adjust data') }}</a>
@endif
</div>
</div>
</div>
<div class="col-md-6">
<div class="card mb-4">
<h5 class="card-header with-elements">
<div class="card-header-title">{{ __('Sicherheit') }}</div>
</h5>
<div class="card-body">
@if($user->active == 1)
@if(!$user->isPasswort())
<p>{{__('Assign a password for your account.')}}</p>
<a href="{{route('user_update_password_first')}}" class="btn btn-submit"><i class="ion ion-ios-lock text-default mr-1"></i> {{__('Create Password')}}</a>
@else
<p>{{__('Ändere Dein persönliches Passwort.')}}</p>
<a href="{{route('user_update_password')}}" class="btn btn-secondary"><i class="ion ion-ios-lock text-default mr-1"></i> {{__('Change password')}}</a>
@endif
@endif
</div>
</div>
</div>
<div class="col-md-6">
<div class="card mb-4">
<h5 class="card-header with-elements">
<div class="card-header-title">{{ __('Anmeldung') }}</div>
</h5>
<div class="card-body">
@if($user->active == 1)
<p>{{__('Ändere Deine E-Mail Adresse.')}}</p>
<a href="{{route('user_update_email')}}" class="btn btn-secondary"><i class="ion ion-ios-mail text-default mr-1"></i> {{__('Change E-Mail')}}</a>
@endif
</div>
</div>
</div>
<div class="col-md-6">
<div class="card mb-4">
<h5 class="card-header with-elements">
<div class="card-header-title">{{ __('Logout') }}</div>
</h5>
<div class="card-body">
<p>Abmelden und bis bald.</p></o>
<a href="{{route('logout')}}" class="btn btn-primary"><i class="ion ion-ios-log-out text-default mr-1"></i> {{ __('Logout') }}</a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="text-left mt-3">
<button type="submit" class="btn btn-secondary">{{__('save changes') }}</button>&nbsp;
</div>
{!! Form::close() !!}
</div>
--}}
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
<h4>{{__('Data, Login & Security') }}</h4>
<p>{{__('Sign in with your e-mail:')}} {{ Auth::user()->email }}</p>
<a href="{{ route('user_edit') }}" class="btn btn-secondary">{{ __('Adjust data') }}</a>
<a href="{{route('user_update_email')}}" class="btn btn-secondary">{{__('Change E-Mail')}}</a>
<br><br>
@if(!$user->isPasswort())
<p>{{__('Assign a password for your account.')}}</p>
<a href="{{route('user_update_password_first')}}" class="btn btn-submit">{{__('Create Password')}}</a>
@else
<p>{{__('Change your password here to access your account.')}}</p>
<a href="{{route('user_update_password')}}" class="btn btn-secondary">{{__('Change password')}}</a>
@endif
</div>
@endif
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
<h4>{{ __('Logout') }}</h4>
<a href="{{route('logout')}}" class="btn btn-primary"><i class="ion ion-ios-log-out text-default"></i>
&nbsp; {{ __('Logout') }}</a>
</div>
{{--
<div class="card-body" style="background: #fff; border: 1px solid rgba(24, 28, 33, 0.06);">
<h4>{{__('Delete') }}</h4>
<p>{{__('If you no longer want to use our offer, you can delete your account here.')}}</p>
<a href="{{route('user_delete_account')}}" class="btn btn-default">{{__('Delete Account')}}</a>
</div>
--}}
<hr class="container-m-nx mt-0 mb-4">
@endsection

View file

@ -17,16 +17,18 @@
<a href="{{ route('user_edit') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-create"></i><div>{{ __('Your Data') }}</div></a>
</li>
@if(Auth::user()->isActiveShop())
<li class="sidenav-item{{ Request::is('user/shop') ? ' active' : '' }}">
<a href="{{ route('user_shop') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-basket"></i><div>{{ __('Your Shop') }}</div></a>
</li>
@endif
<li class="sidenav-item{{ Request::is('user/shop') ? ' active' : '' }}">
<a href="{{ route('user_shop') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-basket"></i><div>{{ __('Your Shop') }}</div></a>
</li>
@if(Auth::user()->isActiveShop())
<li class="sidenav-item{{ Request::is('user/shop') ? ' active' : '' }}">
<a href="{{ route('user_shop') }}" class="sidenav-link"><i class="sidenav-icon ion ion-ios-basket"></i><div>{{ __('Your Shop') }}</div></a>
</li>
@endif
@if(Auth::user()->isActiveAccount())
@endif
@endif

View file

@ -0,0 +1,8 @@
<hr>
<label class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input" name="abo_options" @if($user && $user->abo_options) checked="checked" @endif>
<span class="custom-control-label secondary"><strong>Abo-Option:</strong> Klicke dieses Box an, wenn Du Deine jährlichen Mitgliedschaft-Beiträge automatisch abbuchen lassen willst. Wähle dann bei der Zahlung SEPA-Lastschrift aus, wir speichern Dein SEPA-Lastschrift Mandart und buchen 14 Tage vor ablauf deine Jahresgebühr automatisch ab.</span>
<p class="text-muted">Du kannst Deine Abo-Option jederzeit im Login-Bereich rückgängig machen. Ohne Abo-Option musst du vor Ablauf der Frist selbstänig im Login-Bereich die Zahlung ausführen.</p>
</label>
<hr>

View file

@ -0,0 +1,47 @@
@php($months = Carbon::now()->diffInMonths(Carbon::parse($user->payment_account)) +1)
{!! Form::open(['url' => route('user_membership_store_payment'), 'class' => 'form-horizontal']) !!}
<input type="hidden" name="qty" value="{{$months}}">
<div class="table-responsive">
<table class="table table- m-0">
<tbody class="switchers-stacked">
@foreach($upgrade as $product)
<tr>
<td class="text-center align-middle px-0">
<label class="switcher switcher-secondary">
<input type="radio" class="switcher-input" value="{{$product->id}}" name="switchers-package-wizard" checked="checked">
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label"></span>
</label>
</td>
<td class="p-4">
<div class="media align-items-center">
@if(count($product->images))
<img src="{{ route('product_image', [$product->images->first()->slug]) }}" class="d-block ui-w-60 ui-bordered mr-4" alt="">
@endif
<div class="media-body">
<h5 class="d-block text-dark">{{$product->name}}</h5>
{!! $product->getLang('copy') !!}
</div>
</div>
</td>
<td class="text-right font-weight-semibold align-middle p-4">{{$product->getFormattedPrice()}} EUR / Monat</td>
</tr>
<tr>
<td colspan="2" class="text-right">Restlaufzeit: {{$months}} @if($months==1) Monat @else Monate @endif</td>
<td class="text-right font-weight-semibold"> {!! Util::formatNumber($months * $product->price) !!} EUR</td>
</tr>
@endforeach
</tbody>
</table>
</div>
<div class="text-left mt-3">
@include('user.membership._abo_options')
<button type="submit" class="btn btn-secondary">{{ __('wählen und weiter zur Kasse') }}</button>&nbsp;
<br><br>
<em class="small text-center"> <i class="fa fa-lock"></i> Du wirst auf unseren checkout Server weitergeletet, die Verbindung ist SSL verschlüsselt.</em>
</div>
{!! Form::close() !!}

View file

@ -0,0 +1,209 @@
@extends('layouts.layout-2')
@section('content')
@if ($errors->any())
<div class="row">
<div class="col-sm-12">
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
</div>
@endif
<h4 class="font-weight-bold py-2 mb-2">
{{ __('Deine Mitgliedschaft') }}
</h4>
<div class="row">
<div class="col order-2 order-md-1">
@if($user->isActiveAccount() && !$user->isActiveShop())
<div class="card w-100 mb-4">
<h5 class="card-header">{{__('MIVITA BUSINESS Paket')}} {{__('Upgrade')}}</h5>
<div class="card-body">
<h5 class="d-block text-dark">Erweitere jetzt Deine Mitglidschaft auf MIVITA BUSINESS Paket!</h5>
<p>Berechnet werden die restlichen Monate bis zur Berater-Mitgliedschaft Verlängerung. Danach wird jährlich der MIVITA BUSINESS Paketpreis berechnet.</p>
@include('user.membership._upgrade')
</div>
</div>
@endif
@if($user->abo_options && $user->payment_account)
<div class="card w-100 mb-4">
<h5 class="card-header">{{__('Abo-Option')}} {{__('deaktivieren')}}</h5>
<div class="card-body">
<p>Abo-Option dekativeren und SEPA Mandat zurückziehen.<br>
Die nächste Buchung ist am: <strong>{!! Carbon::parse($user->payment_account)->modify('- 29 days')->format('d.m.Y') !!}</strong></p>
<button type="submit" class="btn btn-secondary">{{ __('Abo-Option') }} {{__('deaktivieren')}}</button>&nbsp;
</div>
</div>
@endif
{{--
TODO
//Warnungen und Zahlungen verlängerung.
//upgrade speichern über api
//Verlängern
//cron sepa
//cron Mails erinnerungen
//downgrade
--}}
<!-- Description -->
<div class="card mb-4">
<div class="card-body">
{!! Form::open(['url' => route('wizard_store_payment', [20]), 'class' => 'form-horizontal']) !!}
<div class="table-responsive">
<table class="table table- m-0">
<tbody class="switchers-stacked">
@foreach($products as $product)
<tr>
<td class="text-center align-middle px-0">
<label class="switcher switcher-secondary">
<input type="radio" class="switcher-input" value="{{$product->id}}" name="switchers-package-wizard" @if($product->id == $user->payment_order_id) checked @endif >
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label"></span>
</label>
</td>
<td class="p-4">
<div class="media align-items-center">
@if(count($product->images))
<img src="{{ route('product_image', [$product->images->first()->slug]) }}" class="d-block ui-w-60 ui-bordered mr-4" alt="">
@endif
<div class="media-body">
<h5 class="d-block text-dark">{{$product->name}}</h5>
{!! $product->getLang('copy') !!}
</div>
</div>
</td>
<td class="text-right font-weight-semibold align-middle p-4">{{$product->getFormattedPrice()}} EUR / p.a.</td>
</tr>
@endforeach
</tbody>
</table>
</div>
<div class="text-left mt-3">
<hr>
<label class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input" name="abo_options">
<span class="custom-control-label secondary"><strong>Abo-Option:</strong> Klicke dieses Box an, wenn Du Deine jährlichen Mitgliedschaft-Beiträge automatisch abbuchen lassen willst. Wähle dann bei der Zahlung SEPA-Lastschrift aus, wir speichern Dein SEPA-Lastschrift Mandart und buchen 14 Tage vor ablauf deine Jahresgebühr automatisch ab.</span>
<p class="text-muted">Du kannst Deine Abo-Option jederzeit im Login-Bereich rückgängig machen. Ohne Abo-Option musst du vor Ablauf der Frist selbstänig im Login-Bereich die Zahlung ausführen.</p>
</label>
<hr>
<button type="submit" class="btn btn-secondary">{{ __('wählen und weiter zur Kasse') }}</button>&nbsp;
<br><br>
<em class="small text-center"> <i class="fa fa-lock"></i> Du wirst auf unseren checkout Server weitergeletet, die Verbindung ist SSL verschlüsselt.</em>
</div>
{!! Form::close() !!}
</div>
</div>
<!-- / Description -->
</div>
<div class="col-md-5 col-xl-4 order-1 order-md-2">
<!-- Project details -->
<div class="card mb-4">
<h6 class="card-header">{{ __('Mitgliedschaft Details') }}</h6>
<ul class="list-group list-group-flush">
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{__('gebuchtes Paket')}}</div>
<div class="text-right">
@if($user->payment_order_id)
{{ $user->payment_order->name }}
@endif
</div>
</li>
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{ __('Berater-Mitgliedschaft') }}</div>
<div class="text-right">
@if($user->isActiveAccount() )
<span class="badge badge-pill badge-success"><i class="fa fa-check"></i> {{ __('aktiv') }}</span>
@else
<span class="badge badge-pill badge-danger"><i class="fa fa-times"></i> {{ __('inaktiv') }}</span>
@endif
</div>
</li>
@if($user->isActiveAccount() )
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{__('bis zum')}}</div>
<div class="text-right">
{{ $user->getPaymentAccountDateFormat() }}
</div>
</li>
@else
@if($user->payment_account)
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{__('abgelaufen am')}}}</div>
<div class="text-right">
{{ $user->getPaymentAccountDateFormat() }}
</div>
</li>
@endif
@endif
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{ __('Berater-Online-Shop') }}</div>
<div class="text-right">
@if($user->isActiveShop() )
<span class="badge badge-pill badge-success"><i class="fa fa-check"></i> {{ __('aktiv') }}</span>
@else
<span class="badge badge-pill badge-danger"><i class="fa fa-times"></i> {{ __('inaktiv') }}</span>
@endif
</div>
</li>
@if($user->isActiveShop() )
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{__('bis zum')}}</div>
<div class="text-right">
{{ $user->getPaymentShopDateFormat() }}
</div>
</li>
@else
@if($user->payment_shop)
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{__('abgelaufen am')}}</div>
<div class="text-right">
{{ $user->getPaymentShopDateFormat() }}
</div>
</li>
@endif
@endif
<li class="list-group-item d-flex justify-content-between align-items-center">
<div class="text-muted">{{__('Abo-Option')}}</div>
<div class="text-right">
@if($user->abo_options)
<span class="badge badge-pill badge-success"><i class="fa fa-check"></i> {{ __('aktiv') }}</span>
@else
<span class="badge badge-pill badge-danger"><i class="fa fa-times"></i> {{ __('inaktiv') }}</span>
@endif
</div>
</li>
</ul>
</div>
<!-- / Project details -->
</div>
</div>
@endsection

View file

@ -0,0 +1,61 @@
@if($user->shopping_orders->count())
@php
$last_shopping_order = $user->shopping_orders->last();
$last_shopping_payments = $last_shopping_order->shopping_payments->last();
@endphp
<div class="alert alert-secondary">
Es wurde eine Zahlung ausgeführt. Referenz: {{$last_shopping_payments->reference }}.
<br>Bitte warte die Zahlungs-Bestätiung per E-Mail.
</div>
@endif
{!! Form::open(['url' => route('wizard_store_payment', [20]), 'class' => 'form-horizontal']) !!}
<div class="table-responsive">
<table class="table table- m-0">
<tbody class="switchers-stacked">
@php($counter = 1)
@foreach($products as $product)
<tr>
<td class="text-center align-middle px-0">
<label class="switcher switcher-secondary">
<input type="radio" class="switcher-input" value="{{$product->id}}" name="switchers-package-wizard" @if($counter == 2) checked @endif >
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label"></span>
</label>
</td>
<td class="p-4">
<div class="media align-items-center">
@if(count($product->images))
<img src="{{ route('product_image', [$product->images->first()->slug]) }}" class="d-block ui-w-60 ui-bordered mr-4" alt="">
@endif
<div class="media-body">
<h5 class="d-block text-dark">{{$product->name}}</h5>
{!! $product->getLang('copy') !!}
</div>
</div>
</td>
<td class="text-right font-weight-semibold align-middle p-4">{{$product->getFormattedPrice()}} EUR / p.a.</td>
</tr>
@php($counter++)
@endforeach
</tbody>
</table>
</div>
<div class="text-left mt-3">
<hr>
<label class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input" name="abo_options">
<span class="custom-control-label secondary"><strong>Abo-Option:</strong> Klicke dieses Box an, wenn Du Deine jährlichen Mitgliedschaft-Beiträge automatisch abbuchen lassen willst. Wähle dann bei der Zahlung SEPA-Lastschrift aus, wir speichern Dein SEPA-Lastschrift Mandart und buchen 14 Tage vor ablauf deine Jahresgebühr automatisch ab.</span>
<p class="text-muted">Du kannst Deine Abo-Option jederzeit im Login-Bereich rückgängig machen. Ohne Abo-Option musst du vor Ablauf der Frist selbstänig im Login-Bereich die Zahlung ausführen.</p>
</label>
<hr>
<button type="submit" class="btn btn-secondary">{{ __('wählen und weiter zur Kasse') }}</button>&nbsp;
<br><br>
<em class="small text-center"> <i class="fa fa-lock"></i> Du wirst auf unseren checkout Server weitergeletet, die Verbindung ist SSL verschlüsselt.</em>
</div>
{!! Form::close() !!}

View file

@ -56,16 +56,6 @@
<span class="sw-number">4</span>
Paket
<div class="text-muted small">auswählen</div>
</a>
</li>
<li>
<a href="#smartwizard-3-step-5" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">5</span>
Registrierung
<div class="text-muted small">abgeschlossen</div>
</a>
</li>
</ul>
@ -73,7 +63,7 @@
<div class="mb-3">
<div id="smartwizard-3-step-1" class="card animated fadeIn">
<div class="card-body">
{!! Form::open(['url' => route('wizard_store_create', [0]), 'class' => 'form-horizontal', 'id'=>'lead-form-validation-confirm']) !!}
{!! Form::open(['url' => route('wizard_store_create', [10]), 'class' => 'form-horizontal', 'id'=>'lead-form-validation-confirm']) !!}
@include('user.data_confirm')
<div class="text-left mt-3">
<button type="submit" class="btn btn-secondary">{{ __('zustimmen und weiter') }}</button>&nbsp;
@ -84,14 +74,14 @@
<div id="smartwizard-3-step-2" class="card animated fadeIn">
<div class="card-body">
@if(!$user->isPasswort())
{!! Form::open(['url' => route('wizard_store_create', [1])]) !!}
{!! Form::open(['url' => route('wizard_store_create', [11])]) !!}
@include('user.update_password_first_form')
<div class="text-left mt-3">
<button type="submit" class="btn btn-secondary">{{ __('erstellen und weiter') }}</button>&nbsp;
</div>
{!! Form::close() !!}
@else
{!! Form::open(['url' => route('wizard_store_create', [1])]) !!}
{!! Form::open(['url' => route('wizard_store_create', [11])]) !!}
<p>Passwort wurde bereits erstellt.</p>
<button type="submit" class="btn btn-secondary">{{ __('weiter') }}</button>&nbsp;
{!! Form::close() !!}
@ -100,7 +90,7 @@
</div>
<div id="smartwizard-3-step-3" class="card animated fadeIn">
<div class="card-body">
{!! Form::open(['url' => route('wizard_store_create', [2]), 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
{!! Form::open(['url' => route('wizard_store_create', [12]), 'class' => 'form-horizontal', 'id'=>'lead-form-validation']) !!}
@include('user.user_form')
<div class="text-left mt-3">
<button type="submit" class="btn btn-secondary">{{ __('speichern und weiter') }}</button>&nbsp;
@ -110,57 +100,7 @@
</div>
<div id="smartwizard-3-step-4" class="card animated fadeIn">
<div class="card-body">
{!! Form::open(['url' => route('wizard_store_create', [3]), 'class' => 'form-horizontal']) !!}
<div class="table-responsive">
<table class="table table- m-0">
<tbody>
<div class="switchers-stacked">
@php($counter = 1)
@foreach($products as $product)
<tr>
<td class="text-center align-middle px-0">
<label class="switcher switcher-secondary">
<input type="radio" class="switcher-input" value="{{$product->id}}" name="switchers-package-wizard" @if($counter == 2) checked @endif >
<span class="switcher-indicator">
<span class="switcher-yes"></span>
<span class="switcher-no"></span>
</span>
<span class="switcher-label"></span>
</label>
</td>
<td class="p-4">
<div class="media align-items-center">
@if(count($product->images))
<img src="{{ route('product_image', [$product->images->first()->slug]) }}" class="d-block ui-w-60 ui-bordered mr-4" alt="">
@endif
<div class="media-body">
<h5 class="d-block text-dark">{{$product->name}}</h5>
{!! $product->getLang('copy') !!}
</div>
</div>
</td>
<td class="text-right font-weight-semibold align-middle p-4">{{$product->getFormattedPrice()}} EUR / p.a.</td>
</tr>
@php($counter++)
@endforeach
</div>
</tbody>
</table>
</div>
<div class="text-left mt-3">
<button type="submit" class="btn btn-secondary">{{ __('wählen und weiter zur Kasse') }}</button>&nbsp;
<br><br>
<em class="small text-center"> <i class="fa fa-lock"></i> Sie werden auf unseren checkout Server weitergeletet, die Verbindung ist mit SSL verschlüsselt.</em>
</div>
{!! Form::close() !!}
</div>
</div>
<div id="smartwizard-3-step-5" class="card animated fadeIn">
<div class="card-body">
<h4>Vielen Dank,</h4>
<p>Deine Registrierung ist abgeschlossen!</p>
<p>Sobald die Zahlung bei uns eingegangen ist, erhälst du automatisch eine E-Mail und dein Account wird freigeschaltet.</p>
@include('user.wizard._payment')
</div>
</div>
</div>
@ -176,7 +116,7 @@
backButtonSupport: true,
useURLhash: false,
showStepURLhash: false,
selected: '{{$step}}',
selected: '{{$step-10}}',
toolbarSettings: {
showNextButton: false,
showPreviousButton: false,

View file

@ -0,0 +1,38 @@
@extends('layouts.layout-2')
@section('content')
@if ($errors->any())
<div class="row">
<div class="col-sm-12">
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
</div>
@endif
<h4 class="font-weight-bold py-2 mb-2">
{{ __('Registrierung abgeschlossen') }}
</h4>
<div id="smartwizard-3" class="smartwizard-register">
<div class="mb-3">
<div id="smartwizard-3-step-6" class="card animated fadeIn">
<div class="card-body">
<h4>Vielen Dank,</h4>
<p>Deine Registrierung und Buchung der Mitgliedschaft ist abgeschlossen!</p>
<p>Sobald die Zahlung bei uns eingegangen ist, erhälst Du automatisch eine E-Mail und Deine Mitgliedschaft wird automatisch freigeschaltet.</p>
</div>
</div>
</div>
</div>
@endsection
@section('scripts')
@endsection

View file

@ -0,0 +1,63 @@
@extends('layouts.layout-2')
@section('content')
@if ($errors->any())
<div class="row">
<div class="col-sm-12">
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
</div>
@endif
<h4 class="font-weight-bold py-2 mb-2">
{{ __('Registrierung abschließen') }}
</h4>
<div id="smartwizard-3" class="smartwizard-register">
<ul class="card px-4 pt-3 mb-3">
<li>
<a href="#smartwizard-3-step-1" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">1</span>
Paket
<div class="text-muted small">auswählen</div>
</a>
</li>
</ul>
<div class="mb-3">
<div id="smartwizard-3-step-1" class="card animated fadeIn">
<div class="card-body">
@include('user.wizard._payment')
</div>
</div>
</div>
</div>
<link rel="stylesheet" href="{{ mix('/vendor/libs/smartwizard/smartwizard.css') }}">
<script src="{{ mix('/vendor/libs/smartwizard/smartwizard.js') }}"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.smartwizard-register').smartWizard({
autoAdjustHeight: true,
backButtonSupport: true,
useURLhash: false,
showStepURLhash: false,
selected: '{{$step}}',
toolbarSettings: {
showNextButton: false,
showPreviousButton: false,
}
});
});
</script>
@endsection

View file

@ -546,6 +546,9 @@
<label class="mt-0 fs-14 fw-400">BIC*</label>
{!! Form::text('elv_bic', '', ['class' => 'form-control', 'id'=>'elv_bic', 'placeholder'=>'Beisp.: PBNKDEFF']) !!}
</div>
@if($shopping_user->abo_options)
<p>Abo-Option wurde ausgewählt. Dein SEPA-Mandart wird gespeichert und die jährliche Zahlung automatisch ausgeführt.</p>
@endif
</div>
</div>
</div>

View file

@ -154,6 +154,9 @@ Route::domain(config('app.pre_url_crm').config('app.domain').config('app.tld_car
Route::post('/wizard/store/create/{step?}', 'WizardController@storeCreate')->name('wizard_store_create');
Route::post('/wizard/store/register/{step?}', 'WizardController@storeRegister')->name('wizard_store_register');
Route::get('/wizard/payment', 'WizardController@payment')->name('wizard_payment');
Route::post('/wizard/store/payment/{step?}', 'WizardController@storePayment')->name('wizard_store_payment');
Route::get('/wizard/delete/file/{id}/{relation}', 'WizardController@delete')->name('wizard_delete_file');
Route::get('/storage/file/{id}/{disk}', function($id = null, $disk = null)
@ -221,6 +224,8 @@ Route::domain(config('app.pre_url_crm').config('app.domain').config('app.tld_car
Route::post('/user/shop_on_site/upload/image', 'UserShopController@uploadOnSiteImage')->name('user_shop_on_site_upload_image');
Route::get('/user/shop_on_site/{image_id}/{user_shop_id}', 'UserShopController@deleteOnSiteImage')->name('user_shop_on_site_delete_image');
Route::get('/user/membership', 'MembershipController@index')->name('user_membership');
Route::post('/user/membership/store/payment', 'MembershipController@storePayment')->name('user_membership_store_payment');
});
Route::group(['middleware' => ['admin']], function()
@ -333,8 +338,6 @@ Route::domain(config('app.pre_url_crm').config('app.domain').config('app.tld_car
Route::get('/admin/levels', 'UserLevelController@index')->name('admin_levels');
Route::post('/admin/level/store', 'UserLevelController@store')->name('admin_level_store');
});
@ -346,11 +349,6 @@ Route::domain(config('app.pre_url_crm').config('app.domain').config('app.tld_car
Route::get('/sysadmin/tools/shopping_orders', 'SyS\AdminToolsController@shoppingOrders')->name('sysadmin_tools_shopping_orders');
Route::post('/sysadmin/tools/shopping_orders', 'SyS\AdminToolsController@shoppingOrdersStore')->name('sysadmin_tools_shopping_orders');
});
});
/* ROUTING the checkout.mivita ... */