From 433c51886eab298c1b3b0ea18f7c33f9b06122e4 Mon Sep 17 00:00:00 2001 From: blkmutt Date: Fri, 21 Mar 2014 08:16:37 -0400 Subject: [PATCH] Updated migration, seeder, and model files. --- ..._03_20_200300_create_payment_libraries.php | 61 +++++++++++++++++++ app/database/seeds/PaymentLibrariesSeeder.php | 44 +++++++++++++ app/models/PaymentLibrary.php | 11 ++++ 3 files changed, 116 insertions(+) create mode 100644 app/database/migrations/2014_03_20_200300_create_payment_libraries.php create mode 100644 app/database/seeds/PaymentLibrariesSeeder.php create mode 100644 app/models/PaymentLibrary.php diff --git a/app/database/migrations/2014_03_20_200300_create_payment_libraries.php b/app/database/migrations/2014_03_20_200300_create_payment_libraries.php new file mode 100644 index 000000000000..d4c7855a706e --- /dev/null +++ b/app/database/migrations/2014_03_20_200300_create_payment_libraries.php @@ -0,0 +1,61 @@ +increments('id'); + $t->timestamps(); + + $t->string('name'); + $t->boolean('visible')->default(true); + }); + + DB::table('payment_libraries')->insert(['name' => 'Omnipay']); + DB::table('payment_libraries')->insert(['name' => 'PHP-Payments']); + + Schema::table('gateways', function($table) + { + $table->unsignedInteger('payment_library_id')->default(1); + }); + + DB::table('gateways')->update(['payment_library_id' => 1]); + + Schema::table('gateways', function($table) + { + $table->foreign('payment_library_id')->references('id')->on('payment_libraries')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + if (Schema::hasColumn('gateways', 'payment_library_id')) + { + Schema::table('gateways', function($table) + { + $table->dropForeign('gateways_payment_library_id_foreign'); + $table->dropColumn('payment_library_id'); + }); + } + + Schema::dropIfExists('payment_libraries'); + } + +} \ No newline at end of file diff --git a/app/database/seeds/PaymentLibrariesSeeder.php b/app/database/seeds/PaymentLibrariesSeeder.php new file mode 100644 index 000000000000..b7c798904f52 --- /dev/null +++ b/app/database/seeds/PaymentLibrariesSeeder.php @@ -0,0 +1,44 @@ +'Authorize.Net AIM', 'provider'=>'AuthorizeNet_AIM', 'payment_library_id' => 2), + array('name'=>'Authorize.Net SIM', 'provider'=>'AuthorizeNet_SIM', 'payment_library_id' => 2), + array('name'=>'CardSave', 'provider'=>'CardSave', 'payment_library_id' => 2), + array('name'=>'Eway Rapid', 'provider'=>'Eway_Rapid', 'payment_library_id' => 2), + array('name'=>'FirstData Connect', 'provider'=>'FirstData_Connect', 'payment_library_id' => 2), + array('name'=>'GoCardless', 'provider'=>'GoCardless', 'payment_library_id' => 2), + array('name'=>'Migs ThreeParty', 'provider'=>'Migs_ThreeParty', 'payment_library_id' => 2), + array('name'=>'Migs TwoParty', 'provider'=>'Migs_TwoParty', 'payment_library_id' => 2), + array('name'=>'Mollie', 'provider'=>'Mollie', 'payment_library_id' => 2), + array('name'=>'MultiSafepay', 'provider'=>'MultiSafepay', 'payment_library_id' => 2), + array('name'=>'Netaxept', 'provider'=>'Netaxept', 'payment_library_id' => 2), + array('name'=>'NetBanx', 'provider'=>'NetBanx', 'payment_library_id' => 2), + array('name'=>'PayFast', 'provider'=>'PayFast', 'payment_library_id' => 2), + array('name'=>'Payflow Pro', 'provider'=>'Payflow_Pro', 'payment_library_id' => 2), + array('name'=>'PaymentExpress PxPay', 'provider'=>'PaymentExpress_PxPay', 'payment_library_id' => 2), + array('name'=>'PaymentExpress PxPost', 'provider'=>'PaymentExpress_PxPost', 'payment_library_id' => 2), + array('name'=>'PayPal Express', 'provider'=>'PayPal_Express', 'payment_library_id' => 2), + array('name'=>'PayPal Pro', 'provider'=>'PayPal_Pro', 'payment_library_id' => 2), + array('name'=>'Pin', 'provider'=>'Pin', 'payment_library_id' => 2), + array('name'=>'SagePay Direct', 'provider'=>'SagePay_Direct', 'payment_library_id' => 2), + array('name'=>'SagePay Server', 'provider'=>'SagePay_Server', 'payment_library_id' => 2), + array('name'=>'SecurePay DirectPost', 'provider'=>'SecurePay_DirectPost', 'payment_library_id' => 2), + array('name'=>'Stripe', 'provider'=>'Stripe', 'payment_library_id' => 2), + array('name'=>'TargetPay Direct eBanking', 'provider'=>'TargetPay_Directebanking', 'payment_library_id' => 2), + array('name'=>'TargetPay Ideal', 'provider'=>'TargetPay_Ideal', 'payment_library_id' => 2), + array('name'=>'TargetPay Mr Cash', 'provider'=>'TargetPay_Mrcash', 'payment_library_id' => 2), + array('name'=>'TwoCheckout', 'provider'=>'TwoCheckout', 'payment_library_id' => 2), + array('name'=>'WorldPay', 'provider'=>'WorldPay', 'payment_library_id' => 2) + ]; + + foreach ($gateways as $gateway) + { + Gateway::create($gateway); + } + } +} \ No newline at end of file diff --git a/app/models/PaymentLibrary.php b/app/models/PaymentLibrary.php new file mode 100644 index 000000000000..a70caa6a9948 --- /dev/null +++ b/app/models/PaymentLibrary.php @@ -0,0 +1,11 @@ +hasMany('Gateway'); + } +} \ No newline at end of file