easy_pay_u_latam 0.1.15 → 0.1.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/README.md +15 -0
- data/app/assets/javascripts/easy_pay_u_latam/application.js +2 -0
- data/app/assets/javascripts/easy_pay_u_latam/subscriptions/angular-card.js +222 -0
- data/app/assets/javascripts/easy_pay_u_latam/subscriptions/application.js +8 -0
- data/app/assets/javascripts/easy_pay_u_latam/subscriptions/card.js +2533 -0
- data/app/assets/javascripts/easy_pay_u_latam/subscriptions/controllers/Main.js +158 -0
- data/app/assets/javascripts/easy_pay_u_latam/subscriptions/controllers/Subscriptions.js +368 -0
- data/app/assets/javascripts/easy_pay_u_latam/subscriptions/country-picker.min.js +1 -0
- data/app/assets/stylesheets/easy_pay_u_latam/styles.css +4 -0
- data/app/assets/stylesheets/easy_pay_u_latam/subscriptions/application.scss +1 -0
- data/app/assets/stylesheets/easy_pay_u_latam/subscriptions/card.css +1 -0
- data/app/controllers/easy_pay_u_latam/api/v1/pay_u_cards_controller.rb +80 -0
- data/app/controllers/easy_pay_u_latam/api/v1/pay_u_clients_controller.rb +18 -0
- data/app/controllers/easy_pay_u_latam/api/v1/pay_u_subscriptions_controller.rb +56 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/_dashboard.html.erb +15 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/cards/_form.html.erb +81 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/cards/_list.html.erb +54 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/plans/_list.html.erb +30 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/subscriptions/_actual.html.erb +54 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/{index.html.erb → subscriptions/_form.html.erb} +0 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/subscriptions/_list.html.erb +49 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/subscriptions/_none.html.erb +0 -0
- data/app/views/easy_pay_u_latam/pay_u_payments/subscriptions/_show.html.erb +0 -0
- data/config/routes.rb +5 -0
- data/lib/easy_pay_u_latam.rb +6 -0
- data/lib/easy_pay_u_latam/r_api.rb +47 -0
- data/lib/easy_pay_u_latam/r_api/card.rb +102 -0
- data/lib/easy_pay_u_latam/r_api/client.rb +28 -0
- data/lib/easy_pay_u_latam/r_api/invoice.rb +53 -0
- data/lib/easy_pay_u_latam/r_api/invoice_service.rb +48 -0
- data/lib/easy_pay_u_latam/r_api/plan.rb +71 -0
- data/lib/easy_pay_u_latam/r_api/request.rb +133 -0
- data/lib/easy_pay_u_latam/r_api/subscription.rb +41 -0
- data/lib/easy_pay_u_latam/r_api/subscription_interceptor.rb +51 -0
- data/lib/easy_pay_u_latam/r_api/subscription_service.rb +208 -0
- data/lib/easy_pay_u_latam/version.rb +1 -1
- metadata +83 -30
@@ -0,0 +1 @@
|
|
1
|
+
"use strict";angular.module("puigcerber.countryPicker",[]).provider("pvpCountries",function a(){var n=[{name:"Afghanistan",alpha2:"AF",alpha3:"AFG",numeric:"004"},{name:"Åland Islands",alpha2:"AX",alpha3:"ALA",numeric:"248"},{name:"Albania",alpha2:"AL",alpha3:"ALB",numeric:"008"},{name:"Algeria",alpha2:"DZ",alpha3:"DZA",numeric:"012"},{name:"American Samoa",alpha2:"AS",alpha3:"ASM",numeric:"016"},{name:"Andorra",alpha2:"AD",alpha3:"AND",numeric:"020"},{name:"Angola",alpha2:"AO",alpha3:"AGO",numeric:"024"},{name:"Anguilla",alpha2:"AI",alpha3:"AIA",numeric:"660"},{name:"Antarctica",alpha2:"AQ",alpha3:"ATA",numeric:"010"},{name:"Antigua and Barbuda",alpha2:"AG",alpha3:"ATG",numeric:"028"},{name:"Argentina",alpha2:"AR",alpha3:"ARG",numeric:"032"},{name:"Armenia",alpha2:"AM",alpha3:"ARM",numeric:"051"},{name:"Aruba",alpha2:"AW",alpha3:"ABW",numeric:"533"},{name:"Australia",alpha2:"AU",alpha3:"AUS",numeric:"036"},{name:"Austria",alpha2:"AT",alpha3:"AUT",numeric:"040"},{name:"Azerbaijan",alpha2:"AZ",alpha3:"AZE",numeric:"031"},{name:"Bahamas (the)",alpha2:"BS",alpha3:"BHS",numeric:"044"},{name:"Bahrain",alpha2:"BH",alpha3:"BHR",numeric:"048"},{name:"Bangladesh",alpha2:"BD",alpha3:"BGD",numeric:"050"},{name:"Barbados",alpha2:"BB",alpha3:"BRB",numeric:"052"},{name:"Belarus",alpha2:"BY",alpha3:"BLR",numeric:"112"},{name:"Belgium",alpha2:"BE",alpha3:"BEL",numeric:"056"},{name:"Belize",alpha2:"BZ",alpha3:"BLZ",numeric:"084"},{name:"Benin",alpha2:"BJ",alpha3:"BEN",numeric:"204"},{name:"Bermuda",alpha2:"BM",alpha3:"BMU",numeric:"060"},{name:"Bhutan",alpha2:"BT",alpha3:"BTN",numeric:"064"},{name:"Bolivia (Plurinational State of)",alpha2:"BO",alpha3:"BOL",numeric:"068"},{name:"Bonaire, Sint Eustatius and Saba",alpha2:"BQ",alpha3:"BES",numeric:"535"},{name:"Bosnia and Herzegovina",alpha2:"BA",alpha3:"BIH",numeric:"070"},{name:"Botswana",alpha2:"BW",alpha3:"BWA",numeric:"072"},{name:"Bouvet Island",alpha2:"BV",alpha3:"BVT",numeric:"074"},{name:"Brazil",alpha2:"BR",alpha3:"BRA",numeric:"076"},{name:"British Indian Ocean Territory (the)",alpha2:"IO",alpha3:"IOT",numeric:"086"},{name:"Brunei Darussalam",alpha2:"BN",alpha3:"BRN",numeric:"096"},{name:"Bulgaria",alpha2:"BG",alpha3:"BGR",numeric:"100"},{name:"Burkina Faso",alpha2:"BF",alpha3:"BFA",numeric:"854"},{name:"Burundi",alpha2:"BI",alpha3:"BDI",numeric:"108"},{name:"Cabo Verde",alpha2:"CV",alpha3:"CPV",numeric:"132"},{name:"Cambodia",alpha2:"KH",alpha3:"KHM",numeric:"116"},{name:"Cameroon",alpha2:"CM",alpha3:"CMR",numeric:"120"},{name:"Canada",alpha2:"CA",alpha3:"CAN",numeric:"124"},{name:"Cayman Islands (the)",alpha2:"KY",alpha3:"CYM",numeric:"136"},{name:"Central African Republic (the)",alpha2:"CF",alpha3:"CAF",numeric:"140"},{name:"Chad",alpha2:"TD",alpha3:"TCD",numeric:"148"},{name:"Chile",alpha2:"CL",alpha3:"CHL",numeric:"152"},{name:"China",alpha2:"CN",alpha3:"CHN",numeric:"156"},{name:"Christmas Island",alpha2:"CX",alpha3:"CXR",numeric:"162"},{name:"Cocos (Keeling) Islands (the)",alpha2:"CC",alpha3:"CCK",numeric:"166"},{name:"Colombia",alpha2:"CO",alpha3:"COL",numeric:"170"},{name:"Comoros (the)",alpha2:"KM",alpha3:"COM",numeric:"174"},{name:"Congo (the)",alpha2:"CG",alpha3:"COG",numeric:"178"},{name:"Congo (the Democratic Republic of the)",alpha2:"CD",alpha3:"COD",numeric:"180"},{name:"Cook Islands (the)",alpha2:"CK",alpha3:"COK",numeric:"184"},{name:"Costa Rica",alpha2:"CR",alpha3:"CRI",numeric:"188"},{name:"Côte d'Ivoire",alpha2:"CI",alpha3:"CIV",numeric:"384"},{name:"Croatia",alpha2:"HR",alpha3:"HRV",numeric:"191"},{name:"Cuba",alpha2:"CU",alpha3:"CUB",numeric:"192"},{name:"Curaçao",alpha2:"CW",alpha3:"CUW",numeric:"531"},{name:"Cyprus",alpha2:"CY",alpha3:"CYP",numeric:"196"},{name:"Czech Republic (the)",alpha2:"CZ",alpha3:"CZE",numeric:"203"},{name:"Denmark",alpha2:"DK",alpha3:"DNK",numeric:"208"},{name:"Djibouti",alpha2:"DJ",alpha3:"DJI",numeric:"262"},{name:"Dominica",alpha2:"DM",alpha3:"DMA",numeric:"212"},{name:"Dominican Republic (the)",alpha2:"DO",alpha3:"DOM",numeric:"214"},{name:"Ecuador",alpha2:"EC",alpha3:"ECU",numeric:"218"},{name:"Egypt",alpha2:"EG",alpha3:"EGY",numeric:"818"},{name:"El Salvador",alpha2:"SV",alpha3:"SLV",numeric:"222"},{name:"Equatorial Guinea",alpha2:"GQ",alpha3:"GNQ",numeric:"226"},{name:"Eritrea",alpha2:"ER",alpha3:"ERI",numeric:"232"},{name:"Estonia",alpha2:"EE",alpha3:"EST",numeric:"233"},{name:"Eswatini",alpha2:"SZ",alpha3:"SWZ",numeric:"748"},{name:"Ethiopia",alpha2:"ET",alpha3:"ETH",numeric:"231"},{name:"Falkland Islands (the) [Malvinas]",alpha2:"FK",alpha3:"FLK",numeric:"238"},{name:"Faroe Islands (the)",alpha2:"FO",alpha3:"FRO",numeric:"234"},{name:"Fiji",alpha2:"FJ",alpha3:"FJI",numeric:"242"},{name:"Finland",alpha2:"FI",alpha3:"FIN",numeric:"246"},{name:"France",alpha2:"FR",alpha3:"FRA",numeric:"250"},{name:"French Guiana",alpha2:"GF",alpha3:"GUF",numeric:"254"},{name:"French Polynesia",alpha2:"PF",alpha3:"PYF",numeric:"258"},{name:"French Southern Territories (the)",alpha2:"TF",alpha3:"ATF",numeric:"260"},{name:"Gabon",alpha2:"GA",alpha3:"GAB",numeric:"266"},{name:"Gambia (the)",alpha2:"GM",alpha3:"GMB",numeric:"270"},{name:"Georgia",alpha2:"GE",alpha3:"GEO",numeric:"268"},{name:"Germany",alpha2:"DE",alpha3:"DEU",numeric:"276"},{name:"Ghana",alpha2:"GH",alpha3:"GHA",numeric:"288"},{name:"Gibraltar",alpha2:"GI",alpha3:"GIB",numeric:"292"},{name:"Greece",alpha2:"GR",alpha3:"GRC",numeric:"300"},{name:"Greenland",alpha2:"GL",alpha3:"GRL",numeric:"304"},{name:"Grenada",alpha2:"GD",alpha3:"GRD",numeric:"308"},{name:"Guadeloupe",alpha2:"GP",alpha3:"GLP",numeric:"312"},{name:"Guam",alpha2:"GU",alpha3:"GUM",numeric:"316"},{name:"Guatemala",alpha2:"GT",alpha3:"GTM",numeric:"320"},{name:"Guernsey",alpha2:"GG",alpha3:"GGY",numeric:"831"},{name:"Guinea",alpha2:"GN",alpha3:"GIN",numeric:"324"},{name:"Guinea-Bissau",alpha2:"GW",alpha3:"GNB",numeric:"624"},{name:"Guyana",alpha2:"GY",alpha3:"GUY",numeric:"328"},{name:"Haiti",alpha2:"HT",alpha3:"HTI",numeric:"332"},{name:"Heard Island and McDonald Islands",alpha2:"HM",alpha3:"HMD",numeric:"334"},{name:"Holy See (the)",alpha2:"VA",alpha3:"VAT",numeric:"336"},{name:"Honduras",alpha2:"HN",alpha3:"HND",numeric:"340"},{name:"Hong Kong",alpha2:"HK",alpha3:"HKG",numeric:"344"},{name:"Hungary",alpha2:"HU",alpha3:"HUN",numeric:"348"},{name:"Iceland",alpha2:"IS",alpha3:"ISL",numeric:"352"},{name:"India",alpha2:"IN",alpha3:"IND",numeric:"356"},{name:"Indonesia",alpha2:"ID",alpha3:"IDN",numeric:"360"},{name:"Iran (Islamic Republic of)",alpha2:"IR",alpha3:"IRN",numeric:"364"},{name:"Iraq",alpha2:"IQ",alpha3:"IRQ",numeric:"368"},{name:"Ireland",alpha2:"IE",alpha3:"IRL",numeric:"372"},{name:"Isle of Man",alpha2:"IM",alpha3:"IMN",numeric:"833"},{name:"Israel",alpha2:"IL",alpha3:"ISR",numeric:"376"},{name:"Italy",alpha2:"IT",alpha3:"ITA",numeric:"380"},{name:"Jamaica",alpha2:"JM",alpha3:"JAM",numeric:"388"},{name:"Japan",alpha2:"JP",alpha3:"JPN",numeric:"392"},{name:"Jersey",alpha2:"JE",alpha3:"JEY",numeric:"832"},{name:"Jordan",alpha2:"JO",alpha3:"JOR",numeric:"400"},{name:"Kazakhstan",alpha2:"KZ",alpha3:"KAZ",numeric:"398"},{name:"Kenya",alpha2:"KE",alpha3:"KEN",numeric:"404"},{name:"Kiribati",alpha2:"KI",alpha3:"KIR",numeric:"296"},{name:"Korea (the Democratic People's Republic of)",alpha2:"KP",alpha3:"PRK",numeric:"408"},{name:"Korea (the Republic of)",alpha2:"KR",alpha3:"KOR",numeric:"410"},{name:"Kuwait",alpha2:"KW",alpha3:"KWT",numeric:"414"},{name:"Kyrgyzstan",alpha2:"KG",alpha3:"KGZ",numeric:"417"},{name:"Lao People's Democratic Republic (the)",alpha2:"LA",alpha3:"LAO",numeric:"418"},{name:"Latvia",alpha2:"LV",alpha3:"LVA",numeric:"428"},{name:"Lebanon",alpha2:"LB",alpha3:"LBN",numeric:"422"},{name:"Lesotho",alpha2:"LS",alpha3:"LSO",numeric:"426"},{name:"Liberia",alpha2:"LR",alpha3:"LBR",numeric:"430"},{name:"Libya",alpha2:"LY",alpha3:"LBY",numeric:"434"},{name:"Liechtenstein",alpha2:"LI",alpha3:"LIE",numeric:"438"},{name:"Lithuania",alpha2:"LT",alpha3:"LTU",numeric:"440"},{name:"Luxembourg",alpha2:"LU",alpha3:"LUX",numeric:"442"},{name:"Macao",alpha2:"MO",alpha3:"MAC",numeric:"446"},{name:"Macedonia (the former Yugoslav Republic of)",alpha2:"MK",alpha3:"MKD",numeric:"807"},{name:"Madagascar",alpha2:"MG",alpha3:"MDG",numeric:"450"},{name:"Malawi",alpha2:"MW",alpha3:"MWI",numeric:"454"},{name:"Malaysia",alpha2:"MY",alpha3:"MYS",numeric:"458"},{name:"Maldives",alpha2:"MV",alpha3:"MDV",numeric:"462"},{name:"Mali",alpha2:"ML",alpha3:"MLI",numeric:"466"},{name:"Malta",alpha2:"MT",alpha3:"MLT",numeric:"470"},{name:"Marshall Islands (the)",alpha2:"MH",alpha3:"MHL",numeric:"584"},{name:"Martinique",alpha2:"MQ",alpha3:"MTQ",numeric:"474"},{name:"Mauritania",alpha2:"MR",alpha3:"MRT",numeric:"478"},{name:"Mauritius",alpha2:"MU",alpha3:"MUS",numeric:"480"},{name:"Mayotte",alpha2:"YT",alpha3:"MYT",numeric:"175"},{name:"Mexico",alpha2:"MX",alpha3:"MEX",numeric:"484"},{name:"Micronesia (Federated States of)",alpha2:"FM",alpha3:"FSM",numeric:"583"},{name:"Moldova (the Republic of)",alpha2:"MD",alpha3:"MDA",numeric:"498"},{name:"Monaco",alpha2:"MC",alpha3:"MCO",numeric:"492"},{name:"Mongolia",alpha2:"MN",alpha3:"MNG",numeric:"496"},{name:"Montenegro",alpha2:"ME",alpha3:"MNE",numeric:"499"},{name:"Montserrat",alpha2:"MS",alpha3:"MSR",numeric:"500"},{name:"Morocco",alpha2:"MA",alpha3:"MAR",numeric:"504"},{name:"Mozambique",alpha2:"MZ",alpha3:"MOZ",numeric:"508"},{name:"Myanmar",alpha2:"MM",alpha3:"MMR",numeric:"104"},{name:"Namibia",alpha2:"NA",alpha3:"NAM",numeric:"516"},{name:"Nauru",alpha2:"NR",alpha3:"NRU",numeric:"520"},{name:"Nepal",alpha2:"NP",alpha3:"NPL",numeric:"524"},{name:"Netherlands (the)",alpha2:"NL",alpha3:"NLD",numeric:"528"},{name:"New Caledonia",alpha2:"NC",alpha3:"NCL",numeric:"540"},{name:"New Zealand",alpha2:"NZ",alpha3:"NZL",numeric:"554"},{name:"Nicaragua",alpha2:"NI",alpha3:"NIC",numeric:"558"},{name:"Niger (the)",alpha2:"NE",alpha3:"NER",numeric:"562"},{name:"Nigeria",alpha2:"NG",alpha3:"NGA",numeric:"566"},{name:"Niue",alpha2:"NU",alpha3:"NIU",numeric:"570"},{name:"Norfolk Island",alpha2:"NF",alpha3:"NFK",numeric:"574"},{name:"Northern Mariana Islands (the)",alpha2:"MP",alpha3:"MNP",numeric:"580"},{name:"Norway",alpha2:"NO",alpha3:"NOR",numeric:"578"},{name:"Oman",alpha2:"OM",alpha3:"OMN",numeric:"512"},{name:"Pakistan",alpha2:"PK",alpha3:"PAK",numeric:"586"},{name:"Palau",alpha2:"PW",alpha3:"PLW",numeric:"585"},{name:"Palestine, State of",alpha2:"PS",alpha3:"PSE",numeric:"275"},{name:"Panama",alpha2:"PA",alpha3:"PAN",numeric:"591"},{name:"Papua New Guinea",alpha2:"PG",alpha3:"PNG",numeric:"598"},{name:"Paraguay",alpha2:"PY",alpha3:"PRY",numeric:"600"},{name:"Peru",alpha2:"PE",alpha3:"PER",numeric:"604"},{name:"Philippines (the)",alpha2:"PH",alpha3:"PHL",numeric:"608"},{name:"Pitcairn",alpha2:"PN",alpha3:"PCN",numeric:"612"},{name:"Poland",alpha2:"PL",alpha3:"POL",numeric:"616"},{name:"Portugal",alpha2:"PT",alpha3:"PRT",numeric:"620"},{name:"Puerto Rico",alpha2:"PR",alpha3:"PRI",numeric:"630"},{name:"Qatar",alpha2:"QA",alpha3:"QAT",numeric:"634"},{name:"Réunion",alpha2:"RE",alpha3:"REU",numeric:"638"},{name:"Romania",alpha2:"RO",alpha3:"ROU",numeric:"642"},{name:"Russian Federation (the)",alpha2:"RU",alpha3:"RUS",numeric:"643"},{name:"Rwanda",alpha2:"RW",alpha3:"RWA",numeric:"646"},{name:"Saint Barthélemy",alpha2:"BL",alpha3:"BLM",numeric:"652"},{name:"Saint Helena, Ascension and Tristan da Cunha",alpha2:"SH",alpha3:"SHN",numeric:"654"},{name:"Saint Kitts and Nevis",alpha2:"KN",alpha3:"KNA",numeric:"659"},{name:"Saint Lucia",alpha2:"LC",alpha3:"LCA",numeric:"662"},{name:"Saint Martin (French part)",alpha2:"MF",alpha3:"MAF",numeric:"663"},{name:"Saint Pierre and Miquelon",alpha2:"PM",alpha3:"SPM",numeric:"666"},{name:"Saint Vincent and the Grenadines",alpha2:"VC",alpha3:"VCT",numeric:"670"},{name:"Samoa",alpha2:"WS",alpha3:"WSM",numeric:"882"},{name:"San Marino",alpha2:"SM",alpha3:"SMR",numeric:"674"},{name:"Sao Tome and Principe",alpha2:"ST",alpha3:"STP",numeric:"678"},{name:"Saudi Arabia",alpha2:"SA",alpha3:"SAU",numeric:"682"},{name:"Senegal",alpha2:"SN",alpha3:"SEN",numeric:"686"},{name:"Serbia",alpha2:"RS",alpha3:"SRB",numeric:"688"},{name:"Seychelles",alpha2:"SC",alpha3:"SYC",numeric:"690"},{name:"Sierra Leone",alpha2:"SL",alpha3:"SLE",numeric:"694"},{name:"Singapore",alpha2:"SG",alpha3:"SGP",numeric:"702"},{name:"Sint Maarten (Dutch part)",alpha2:"SX",alpha3:"SXM",numeric:"534"},{name:"Slovakia",alpha2:"SK",alpha3:"SVK",numeric:"703"},{name:"Slovenia",alpha2:"SI",alpha3:"SVN",numeric:"705"},{name:"Solomon Islands",alpha2:"SB",alpha3:"SLB",numeric:"090"},{name:"Somalia",alpha2:"SO",alpha3:"SOM",numeric:"706"},{name:"South Africa",alpha2:"ZA",alpha3:"ZAF",numeric:"710"},{name:"South Georgia and the South Sandwich Islands",alpha2:"GS",alpha3:"SGS",numeric:"239"},{name:"South Sudan ",alpha2:"SS",alpha3:"SSD",numeric:"728"},{name:"Spain",alpha2:"ES",alpha3:"ESP",numeric:"724"},{name:"Sri Lanka",alpha2:"LK",alpha3:"LKA",numeric:"144"},{name:"Sudan (the)",alpha2:"SD",alpha3:"SDN",numeric:"729"},{name:"Suriname",alpha2:"SR",alpha3:"SUR",numeric:"740"},{name:"Svalbard and Jan Mayen",alpha2:"SJ",alpha3:"SJM",numeric:"744"},{name:"Sweden",alpha2:"SE",alpha3:"SWE",numeric:"752"},{name:"Switzerland",alpha2:"CH",alpha3:"CHE",numeric:"756"},{name:"Syrian Arab Republic",alpha2:"SY",alpha3:"SYR",numeric:"760"},{name:"Taiwan (Province of China)",alpha2:"TW",alpha3:"TWN",numeric:"158"},{name:"Tajikistan",alpha2:"TJ",alpha3:"TJK",numeric:"762"},{name:"Tanzania, United Republic of",alpha2:"TZ",alpha3:"TZA",numeric:"834"},{name:"Thailand",alpha2:"TH",alpha3:"THA",numeric:"764"},{name:"Timor-Leste",alpha2:"TL",alpha3:"TLS",numeric:"626"},{name:"Togo",alpha2:"TG",alpha3:"TGO",numeric:"768"},{name:"Tokelau",alpha2:"TK",alpha3:"TKL",numeric:"772"},{name:"Tonga",alpha2:"TO",alpha3:"TON",numeric:"776"},{name:"Trinidad and Tobago",alpha2:"TT",alpha3:"TTO",numeric:"780"},{name:"Tunisia",alpha2:"TN",alpha3:"TUN",numeric:"788"},{name:"Turkey",alpha2:"TR",alpha3:"TUR",numeric:"792"},{name:"Turkmenistan",alpha2:"TM",alpha3:"TKM",numeric:"795"},{name:"Turks and Caicos Islands (the)",alpha2:"TC",alpha3:"TCA",numeric:"796"},{name:"Tuvalu",alpha2:"TV",alpha3:"TUV",numeric:"798"},{name:"Uganda",alpha2:"UG",alpha3:"UGA",numeric:"800"},{name:"Ukraine",alpha2:"UA",alpha3:"UKR",numeric:"804"},{name:"United Arab Emirates (the)",alpha2:"AE",alpha3:"ARE",numeric:"784"},{name:"United Kingdom of Great Britain and Northern Ireland (the)",alpha2:"GB",alpha3:"GBR",numeric:"826"},{name:"United States Minor Outlying Islands (the)",alpha2:"UM",alpha3:"UMI",numeric:"581"},{name:"United States of America (the)",alpha2:"US",alpha3:"USA",numeric:"840"},{name:"Uruguay",alpha2:"UY",alpha3:"URY",numeric:"858"},{name:"Uzbekistan",alpha2:"UZ",alpha3:"UZB",numeric:"860"},{name:"Vanuatu",alpha2:"VU",alpha3:"VUT",numeric:"548"},{name:"Venezuela (Bolivarian Republic of)",alpha2:"VE",alpha3:"VEN",numeric:"862"},{name:"Vietnam",alpha2:"VN",alpha3:"VNM",numeric:"704"},{name:"Virgin Islands (British)",alpha2:"VG",alpha3:"VGB",numeric:"092"},{name:"Virgin Islands (U.S.)",alpha2:"VI",alpha3:"VIR",numeric:"850"},{name:"Wallis and Futuna",alpha2:"WF",alpha3:"WLF",numeric:"876"},{name:"Western Sahara",alpha2:"EH",alpha3:"ESH",numeric:"732"},{name:"Yemen",alpha2:"YE",alpha3:"YEM",numeric:"887"},{name:"Zambia",alpha2:"ZM",alpha3:"ZMB",numeric:"894"},{name:"Zimbabwe",alpha2:"ZW",alpha3:"ZWE",numeric:"716"}];return{setCountries:function(a){n=a},$get:function(){return{getCountries:function(){return n}}}}}).directive("pvpCountryPicker",["$compile",function(a){var n=1;return{priority:n,terminal:true,controller:["$scope","pvpCountries",function(a,n){a.countries=n.getCountries()}],compile:function(e,l){if(!l.pvpCountryPicker){l.pvpCountryPicker="alpha2"}var h="country."+l.pvpCountryPicker+" as country.name for country in countries";l.$set("ngOptions",h);return function e(l,h){a(h,null,n)(l)}},restrict:"A"}}]);
|
@@ -0,0 +1 @@
|
|
1
|
+
@import "easy_pay_u_latam/subscriptions/card";
|
@@ -0,0 +1 @@
|
|
1
|
+
.jp-card.jp-card-safari.jp-card-identified .jp-card-front:before,.jp-card.jp-card-safari.jp-card-identified .jp-card-back:before{background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 1px, rgba(255,255,255,0) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.03) 4px),repeating-linear-gradient(90deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(210deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),-webkit-linear-gradient(-245deg, rgba(255,255,255,0) 50%,rgba(255,255,255,0.2) 70%,rgba(255,255,255,0) 90%);background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 1px, rgba(255,255,255,0) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.03) 4px),repeating-linear-gradient(90deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(210deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),linear-gradient(-25deg, rgba(255,255,255,0) 50%,rgba(255,255,255,0.2) 70%,rgba(255,255,255,0) 90%)}.jp-card.jp-card-ie-10.jp-card-flipped,.jp-card.jp-card-ie-11.jp-card-flipped{-webkit-transform:0deg;-moz-transform:0deg;-ms-transform:0deg;-o-transform:0deg;transform:0deg}.jp-card.jp-card-ie-10.jp-card-flipped .jp-card-front,.jp-card.jp-card-ie-11.jp-card-flipped .jp-card-front{-webkit-transform:rotateY(0deg);-moz-transform:rotateY(0deg);-ms-transform:rotateY(0deg);-o-transform:rotateY(0deg);transform:rotateY(0deg)}.jp-card.jp-card-ie-10.jp-card-flipped .jp-card-back,.jp-card.jp-card-ie-11.jp-card-flipped .jp-card-back{-webkit-transform:rotateY(0deg);-moz-transform:rotateY(0deg);-ms-transform:rotateY(0deg);-o-transform:rotateY(0deg);transform:rotateY(0deg)}.jp-card.jp-card-ie-10.jp-card-flipped .jp-card-back:after,.jp-card.jp-card-ie-11.jp-card-flipped .jp-card-back:after{left:18%}.jp-card.jp-card-ie-10.jp-card-flipped .jp-card-back .jp-card-cvc,.jp-card.jp-card-ie-11.jp-card-flipped .jp-card-back .jp-card-cvc{-webkit-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg);left:5%}.jp-card.jp-card-ie-10.jp-card-flipped .jp-card-back .jp-card-shiny,.jp-card.jp-card-ie-11.jp-card-flipped .jp-card-back .jp-card-shiny{left:84%}.jp-card.jp-card-ie-10.jp-card-flipped .jp-card-back .jp-card-shiny:after,.jp-card.jp-card-ie-11.jp-card-flipped .jp-card-back .jp-card-shiny:after{left:-480%;-webkit-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg)}.jp-card.jp-card-ie-10.jp-card-amex .jp-card-back,.jp-card.jp-card-ie-11.jp-card-amex .jp-card-back{display:none}.jp-card-logo{height:36px;width:60px;font-style:italic}.jp-card-logo,.jp-card-logo:before,.jp-card-logo:after{box-sizing:border-box}.jp-card-logo.jp-card-amex{text-transform:uppercase;font-size:4px;font-weight:bold;color:white;background-image:repeating-radial-gradient(circle at center, #fff 1px, #999 2px);background-image:repeating-radial-gradient(circle at center, #fff 1px, #999 2px);border:1px solid #EEE}.jp-card-logo.jp-card-amex:before,.jp-card-logo.jp-card-amex:after{width:28px;display:block;position:absolute;left:16px}.jp-card-logo.jp-card-amex:before{height:28px;content:"american";top:3px;text-align:left;padding-left:2px;padding-top:11px;background:#267AC3}.jp-card-logo.jp-card-amex:after{content:"express";bottom:11px;text-align:right;padding-right:2px}.jp-card.jp-card-amex.jp-card-flipped{-webkit-transform:none;-moz-transform:none;-ms-transform:none;-o-transform:none;transform:none}.jp-card.jp-card-amex.jp-card-identified .jp-card-front:before,.jp-card.jp-card-amex.jp-card-identified .jp-card-back:before{background-color:#108168}.jp-card.jp-card-amex.jp-card-identified .jp-card-front .jp-card-logo.jp-card-amex{opacity:1}.jp-card.jp-card-amex.jp-card-identified .jp-card-front .jp-card-cvc{visibility:visible}.jp-card.jp-card-amex.jp-card-identified .jp-card-front:after{opacity:1}.jp-card-logo.jp-card-discover{background:#f60;color:#111;text-transform:uppercase;font-style:normal;font-weight:bold;font-size:10px;text-align:center;overflow:hidden;z-index:1;padding-top:9px;letter-spacing:.03em;border:1px solid #EEE}.jp-card-logo.jp-card-discover:before,.jp-card-logo.jp-card-discover:after{content:" ";display:block;position:absolute}.jp-card-logo.jp-card-discover:before{background:white;width:200px;height:200px;border-radius:200px;bottom:-5%;right:-80%;z-index:-1}.jp-card-logo.jp-card-discover:after{width:8px;height:8px;border-radius:4px;top:10px;left:27px;background-color:#f60;background-image:-webkit-radial-gradient(#f60,#fff);background-image:radial-gradient( #f60,#fff);content:"network";font-size:4px;line-height:24px;text-indent:-7px}.jp-card .jp-card-front .jp-card-logo.jp-card-discover{right:12%;top:18%}.jp-card.jp-card-discover.jp-card-identified .jp-card-front:before,.jp-card.jp-card-discover.jp-card-identified .jp-card-back:before{background-color:#86B8CF}.jp-card.jp-card-discover.jp-card-identified .jp-card-logo.jp-card-discover{opacity:1}.jp-card.jp-card-discover.jp-card-identified .jp-card-front:after{-webkit-transition:400ms;-moz-transition:400ms;transition:400ms;content:" ";display:block;background-color:#f60;background-image:-webkit-linear-gradient(#f60,#ffa366,#f60);background-image:linear-gradient(#f60,#ffa366,#f60);height:50px;width:50px;border-radius:25px;position:absolute;left:100%;top:15%;margin-left:-25px;box-shadow:inset 1px 1px 3px 1px rgba(0,0,0,0.5)}.jp-card-logo.jp-card-visa{text-transform:uppercase;color:white;text-align:center;font-weight:bold;font-size:24px;line-height:18px;margin-top:5px}.jp-card-logo.jp-card-visa:before,.jp-card-logo.jp-card-visa:after{content:" ";display:block;width:100%;height:25%}.jp-card-logo.jp-card-visa:before{position:absolute;left:-4px;width:0;height:0;border-style:solid;border-width:0 12px 6px 0;border-color:transparent #ffffff transparent transparent}.jp-card.jp-card-visa.jp-card-identified .jp-card-front:before,.jp-card.jp-card-visa.jp-card-identified .jp-card-back:before{background-color:#191278}.jp-card.jp-card-visa.jp-card-identified .jp-card-logo.jp-card-visa{opacity:1;box-shadow:none}.jp-card-logo.jp-card-visaelectron{background:white;text-transform:uppercase;color:#1A1876;text-align:center;font-weight:bold;font-size:15px;line-height:18px}.jp-card-logo.jp-card-visaelectron:before,.jp-card-logo.jp-card-visaelectron:after{content:" ";display:block;width:100%;height:25%}.jp-card-logo.jp-card-visaelectron:before{background:#1A1876}.jp-card-logo.jp-card-visaelectron:after{background:#E79800}.jp-card-logo.jp-card-visaelectron .elec{float:right;font-family:arial;font-size:9px;margin-right:1px;margin-top:-5px;text-transform:none}.jp-card.jp-card-visaelectron.jp-card-identified .jp-card-front:before,.jp-card.jp-card-visaelectron.jp-card-identified .jp-card-back:before{background-color:#191278}.jp-card.jp-card-visaelectron.jp-card-identified .jp-card-logo.jp-card-visaelectron{opacity:1}.jp-card-logo.jp-card-mastercard{color:white;font-style:normal;text-transform:lowercase;font-weight:bold;text-align:center;font-size:9px;line-height:84px;z-index:1;text-shadow:1px 1px rgba(0,0,0,0.6)}.jp-card-logo.jp-card-mastercard:before,.jp-card-logo.jp-card-mastercard:after{content:" ";display:block;width:36px;top:0;position:absolute;height:36px;border-radius:18px}.jp-card-logo.jp-card-mastercard:before{left:0;background:#EB001B;z-index:-1;opacity:0.9}.jp-card-logo.jp-card-mastercard:after{right:0;background:#FF5F00;z-index:-2}.jp-card.jp-card-mastercard.jp-card-identified .jp-card-front .jp-card-logo.jp-card-mastercard,.jp-card.jp-card-mastercard.jp-card-identified .jp-card-back .jp-card-logo.jp-card-mastercard{box-shadow:none}.jp-card.jp-card-mastercard.jp-card-identified .jp-card-front:before,.jp-card.jp-card-mastercard.jp-card-identified .jp-card-back:before{background-color:#0061A8}.jp-card.jp-card-mastercard.jp-card-identified .jp-card-logo.jp-card-mastercard{opacity:1}.jp-card-logo.jp-card-maestro{color:white;font-style:normal;text-transform:lowercase;font-weight:bold;text-align:center;font-size:14px;line-height:84px;z-index:1;text-shadow:1px 1px rgba(0,0,0,0.6)}.jp-card-logo.jp-card-maestro:before,.jp-card-logo.jp-card-maestro:after{content:" ";display:block;width:36px;top:0;position:absolute;height:36px;border-radius:18px}.jp-card-logo.jp-card-maestro:before{left:0;background:#EB001B;z-index:-2}.jp-card-logo.jp-card-maestro:after{right:0;background:#00A2E5;z-index:-1;opacity:0.8}.jp-card.jp-card-maestro.jp-card-identified .jp-card-front .jp-card-logo.jp-card-maestro,.jp-card.jp-card-maestro.jp-card-identified .jp-card-back .jp-card-logo.jp-card-maestro{box-shadow:none}.jp-card.jp-card-maestro.jp-card-identified .jp-card-front:before,.jp-card.jp-card-maestro.jp-card-identified .jp-card-back:before{background-color:#0B2C5F}.jp-card.jp-card-maestro.jp-card-identified .jp-card-logo.jp-card-maestro{opacity:1}.jp-card-logo.jp-card-dankort{width:60px;height:36px;padding:3px;border-radius:8px;border:#000 1px solid;background-color:#fff}.jp-card-logo.jp-card-dankort .dk{position:relative;width:100%;height:100%;overflow:hidden}.jp-card-logo.jp-card-dankort .dk:before{background-color:#ED1C24;content:'';position:absolute;width:100%;height:100%;display:block;border-radius:6px}.jp-card-logo.jp-card-dankort .dk:after{content:'';position:absolute;top:50%;margin-top:-7.7px;right:0;width:0;height:0;border-style:solid;border-width:7px 7px 10px 0;border-color:transparent #ED1C24 transparent transparent;z-index:1}.jp-card-logo.jp-card-dankort .d,.jp-card-logo.jp-card-dankort .k{position:absolute;top:50%;width:50%;display:block;height:15.4px;margin-top:-7.7px;background:white}.jp-card-logo.jp-card-dankort .d{left:0;border-radius:0 8px 10px 0}.jp-card-logo.jp-card-dankort .d:before{content:'';position:absolute;top:50%;left:50%;display:block;background:#ED1C24;border-radius:2px 4px 6px 0px;height:5px;width:7px;margin:-3px 0 0 -4px}.jp-card-logo.jp-card-dankort .k{right:0}.jp-card-logo.jp-card-dankort .k:before,.jp-card-logo.jp-card-dankort .k:after{content:'';position:absolute;right:50%;width:0;height:0;border-style:solid;margin-right:-1px}.jp-card-logo.jp-card-dankort .k:before{top:0;border-width:8px 5px 0 0;border-color:#ED1C24 transparent transparent transparent}.jp-card-logo.jp-card-dankort .k:after{bottom:0;border-width:0 5px 8px 0;border-color:transparent transparent #ED1C24 transparent}.jp-card.jp-card-dankort.jp-card-identified .jp-card-front:before,.jp-card.jp-card-dankort.jp-card-identified .jp-card-back:before{background-color:#0055C7}.jp-card.jp-card-dankort.jp-card-identified .jp-card-logo.jp-card-dankort{opacity:1}.jp-card-logo.jp-card-elo{height:50px;width:50px;border-radius:100%;background:black;color:white;text-align:center;text-transform:lowercase;font-size:21px;font-style:normal;letter-spacing:1px;font-weight:bold;padding-top:13px}.jp-card-logo.jp-card-elo .e,.jp-card-logo.jp-card-elo .l,.jp-card-logo.jp-card-elo .o{display:inline-block;position:relative}.jp-card-logo.jp-card-elo .e{-webkit-transform:rotate(-15deg);-moz-transform:rotate(-15deg);-ms-transform:rotate(-15deg);-o-transform:rotate(-15deg);transform:rotate(-15deg)}.jp-card-logo.jp-card-elo .o{position:relative;display:inline-block;width:12px;height:12px;right:0;top:7px;border-radius:100%;background-image:-webkit-linear-gradient( #ff0 50%,red 50%);background-image:linear-gradient( #ff0 50%,red 50%);-webkit-transform:rotate(40deg);-moz-transform:rotate(40deg);-ms-transform:rotate(40deg);-o-transform:rotate(40deg);transform:rotate(40deg);text-indent:-9999px}.jp-card-logo.jp-card-elo .o:before{content:"";position:absolute;width:49%;height:49%;background:black;border-radius:100%;text-indent:-99999px;top:25%;left:25%}.jp-card.jp-card-elo.jp-card-identified .jp-card-front:before,.jp-card.jp-card-elo.jp-card-identified .jp-card-back:before{background-color:#6F6969}.jp-card.jp-card-elo.jp-card-identified .jp-card-logo.jp-card-elo{opacity:1}.jp-card-logo.jp-card-jcb{border-radius:5px 0px 5px 0px;-moz-border-radius:5px 0px 5px 0px;-webkit-border-radius:5px 0px 5px 0px;background-color:white;font-style:normal;color:white;width:50px;padding:2px 0 0 2px}.jp-card-logo.jp-card-jcb>div{width:15px;margin-right:1px;display:inline-block;text-align:center;text-shadow:1px 1px rgba(0,0,0,0.6);border-radius:5px 0px 5px 0px;-moz-border-radius:5px 0px 5px 0px;-webkit-border-radius:5px 0px 5px 0px}.jp-card-logo.jp-card-jcb>div:before,.jp-card-logo.jp-card-jcb>div:after{content:" ";display:block;height:8px}.jp-card-logo.jp-card-jcb>div.j{background-color:#000063;background-image:-webkit-linear-gradient(left, #000063,#008cff);background-image:linear-gradient(to right,#000063,#008cff)}.jp-card-logo.jp-card-jcb>div.c{background-color:#630000;background-image:-webkit-linear-gradient(left, #630000,#ff008d);background-image:linear-gradient(to right,#630000,#ff008d)}.jp-card-logo.jp-card-jcb>div.b{background-color:#006300;background-image:-webkit-linear-gradient(left, #006300,lime);background-image:linear-gradient(to right,#006300,lime)}.jp-card.jp-card-jcb.jp-card-identified .jp-card-front:before,.jp-card.jp-card-jcb.jp-card-identified .jp-card-back:before{background-color:#CB8000}.jp-card.jp-card-jcb.jp-card-identified .jp-card-logo.jp-card-jcb{opacity:1;box-shadow:none}.jp-card-logo.jp-card-dinersclub{font-family:serif;height:40px;width:100px;color:white;font-size:17px;font-style:normal;letter-spacing:1px}.jp-card-logo.jp-card-dinersclub::before,.jp-card-logo.jp-card-dinersclub::after{display:block;position:relative}.jp-card-logo.jp-card-dinersclub::before{content:'Diners Club'}.jp-card-logo.jp-card-dinersclub::after{content:'International';text-transform:uppercase;font-size:0.6em}.jp-card.jp-card-dinersclub .jp-card-front .jp-card-logo{box-shadow:none !important}.jp-card.jp-card-dinersclub.jp-card-identified .jp-card-front:before,.jp-card.jp-card-dinersclub.jp-card-identified .jp-card-back:before{background-color:#999}.jp-card.jp-card-dinersclub.jp-card-identified .jp-card-logo.jp-card-dinersclub{opacity:1}.jp-card-container{-webkit-perspective:1000px;-moz-perspective:1000px;perspective:1000px;width:350px;max-width:100%;height:200px;margin:auto;z-index:1;position:relative}.jp-card{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;line-height:1;position:relative;width:100%;height:100%;min-width:315px;border-radius:10px;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition:all 400ms linear;-moz-transition:all 400ms linear;transition:all 400ms linear}.jp-card>*,.jp-card>*:before,.jp-card>*:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:inherit}.jp-card.jp-card-flipped{-webkit-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg)}.jp-card .jp-card-front,.jp-card .jp-card-back{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition:all 400ms linear;-moz-transition:all 400ms linear;transition:all 400ms linear;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden;border-radius:10px;background:#DDD}.jp-card .jp-card-front:before,.jp-card .jp-card-back:before{content:" ";display:block;position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;border-radius:10px;-webkit-transition:all 400ms ease;-moz-transition:all 400ms ease;transition:all 400ms ease}.jp-card .jp-card-front:after,.jp-card .jp-card-back:after{content:" ";display:block}.jp-card .jp-card-front .jp-card-display,.jp-card .jp-card-back .jp-card-display{color:#fff;font-weight:normal;opacity:0.5;-webkit-transition:opacity 400ms linear;-moz-transition:opacity 400ms linear;transition:opacity 400ms linear}.jp-card .jp-card-front .jp-card-display.jp-card-focused,.jp-card .jp-card-back .jp-card-display.jp-card-focused{opacity:1;font-weight:700}.jp-card .jp-card-front .jp-card-cvc,.jp-card .jp-card-back .jp-card-cvc{font-family:"Bitstream Vera Sans Mono",Consolas,Courier,monospace;font-size:14px}.jp-card .jp-card-front .jp-card-shiny,.jp-card .jp-card-back .jp-card-shiny{width:50px;height:35px;border-radius:5px;background:#CCC;position:relative}.jp-card .jp-card-front .jp-card-shiny:before,.jp-card .jp-card-back .jp-card-shiny:before{content:" ";display:block;width:70%;height:60%;border-top-right-radius:5px;border-bottom-right-radius:5px;background:#d9d9d9;position:absolute;top:20%}.jp-card .jp-card-front .jp-card-logo{position:absolute;opacity:0;right:5%;top:8%;-webkit-transition:400ms;-moz-transition:400ms;transition:400ms}.jp-card .jp-card-front .jp-card-lower{width:80%;position:absolute;left:10%;bottom:30px}@media only screen and (max-width: 480px){.jp-card .jp-card-front .jp-card-lower{width:90%;left:5%}}.jp-card .jp-card-front .jp-card-lower .jp-card-cvc{visibility:hidden;float:right;position:relative;bottom:5px}.jp-card .jp-card-front .jp-card-lower .jp-card-number{font-family:"Bitstream Vera Sans Mono",Consolas,Courier,monospace;font-size:24px;clear:both;margin-bottom:30px}.jp-card .jp-card-front .jp-card-lower .jp-card-expiry{font-family:"Bitstream Vera Sans Mono",Consolas,Courier,monospace;letter-spacing:0em;position:relative;float:right;width:25%}.jp-card .jp-card-front .jp-card-lower .jp-card-expiry:before,.jp-card .jp-card-front .jp-card-lower .jp-card-expiry:after{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold;font-size:7px;white-space:pre;display:block;opacity:.5}.jp-card .jp-card-front .jp-card-lower .jp-card-expiry:before{content:attr(data-before);margin-bottom:2px;font-size:7px;text-transform:uppercase}.jp-card .jp-card-front .jp-card-lower .jp-card-expiry:after{position:absolute;content:attr(data-after);text-align:right;right:100%;margin-right:5px;margin-top:2px;bottom:0}.jp-card .jp-card-front .jp-card-lower .jp-card-name{text-transform:uppercase;font-family:"Bitstream Vera Sans Mono",Consolas,Courier,monospace;font-size:20px;max-height:45px;position:absolute;bottom:0;width:190px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:horizontal;overflow:hidden;text-overflow:ellipsis}.jp-card .jp-card-back{-webkit-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg)}.jp-card .jp-card-back .jp-card-bar{background-color:#444;background-image:-webkit-linear-gradient(#444,#333);background-image:linear-gradient(#444,#333);width:100%;height:20%;position:absolute;top:10%}.jp-card .jp-card-back:after{content:" ";display:block;background-color:#fff;background-image:-webkit-linear-gradient(#fff,#fff);background-image:linear-gradient(#fff,#fff);width:80%;height:16%;position:absolute;top:40%;left:2%}.jp-card .jp-card-back .jp-card-cvc{position:absolute;top:40%;left:85%;-webkit-transition-delay:600ms;-moz-transition-delay:600ms;transition-delay:600ms}.jp-card .jp-card-back .jp-card-shiny{position:absolute;top:66%;left:2%}.jp-card .jp-card-back .jp-card-shiny:after{content:"This card has been issued by Jesse Pollak and is licensed for anyone to use anywhere for free. It comes with no warranty. For support issues, please visit: github.com/jessepollak/card.";position:absolute;left:120%;top:5%;color:white;font-size:7px;width:230px;opacity:.5}.jp-card.jp-card-identified{box-shadow:0 0 20px rgba(0,0,0,0.3)}.jp-card.jp-card-identified .jp-card-front,.jp-card.jp-card-identified .jp-card-back{background-color:#000;background-color:rgba(0,0,0,0.5)}.jp-card.jp-card-identified .jp-card-front:before,.jp-card.jp-card-identified .jp-card-back:before{-webkit-transition:all 400ms ease;-moz-transition:all 400ms ease;transition:all 400ms ease;background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 1px, rgba(255,255,255,0) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.03) 4px),repeating-linear-gradient(90deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(210deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 30% 30%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 70% 70%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 90% 20%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 15% 80%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),-webkit-linear-gradient(-245deg, rgba(255,255,255,0) 50%,rgba(255,255,255,0.2) 70%,rgba(255,255,255,0) 90%);background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 1px, rgba(255,255,255,0) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.03) 4px),repeating-linear-gradient(90deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(210deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 30% 30%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 70% 70%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 90% 20%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-radial-gradient(circle at 15% 80%, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),linear-gradient(-25deg, rgba(255,255,255,0) 50%,rgba(255,255,255,0.2) 70%,rgba(255,255,255,0) 90%);opacity:1}.jp-card.jp-card-identified .jp-card-front .jp-card-logo,.jp-card.jp-card-identified .jp-card-back .jp-card-logo{box-shadow:0 0 0 2px rgba(255,255,255,0.3)}.jp-card.jp-card-identified.no-radial-gradient .jp-card-front:before,.jp-card.jp-card-identified.no-radial-gradient .jp-card-back:before{background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 1px, rgba(255,255,255,0) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.03) 4px),repeating-linear-gradient(90deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(210deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),-webkit-linear-gradient(-245deg, rgba(255,255,255,0) 50%,rgba(255,255,255,0.2) 70%,rgba(255,255,255,0) 90%);background-image:repeating-linear-gradient(45deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 1px, rgba(255,255,255,0) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.03) 4px),repeating-linear-gradient(90deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),repeating-linear-gradient(210deg, rgba(255,255,255,0) 1px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.04) 3px, rgba(255,255,255,0.05) 4px),linear-gradient(-25deg, rgba(255,255,255,0) 50%,rgba(255,255,255,0.2) 70%,rgba(255,255,255,0) 90%)}
|
@@ -0,0 +1,80 @@
|
|
1
|
+
module EasyPayULatam
|
2
|
+
class Api::V1::PayUCardsController < ApiController
|
3
|
+
|
4
|
+
acts_as_token_authentication_handler_for User
|
5
|
+
|
6
|
+
def index
|
7
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
8
|
+
cards = RApi::Card.new client
|
9
|
+
unless cards.response["creditCardList"].blank?
|
10
|
+
if cards.response["creditCardList"].count == 1
|
11
|
+
if current_user.payu_default_card = cards.response["creditCardList"][0]["token"]
|
12
|
+
current_user.update_attribute :payu_default_card, cards.response["creditCardList"][0]["token"]
|
13
|
+
end
|
14
|
+
end
|
15
|
+
render status: 200, json: {cards: cards.response["creditCardList"]}
|
16
|
+
else
|
17
|
+
render status: 200, json: {cards: []}
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def create
|
22
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
23
|
+
cards = RApi::Card.new client
|
24
|
+
cards.params = params[:card].as_json
|
25
|
+
cards.params["number"] = cards.params["number"].gsub(" ","")
|
26
|
+
cards.params["expMonth"] = cards.params["expiry"].split(" / ")[0]
|
27
|
+
cards.params["expYear"] = cards.params["expiry"].split(" / ")[1]
|
28
|
+
cards.params.delete "expiry"
|
29
|
+
cards.params.delete "cvc"
|
30
|
+
response = cards.create!
|
31
|
+
|
32
|
+
unless cards.response.blank?
|
33
|
+
render status: 200, json: {message: "ok"}
|
34
|
+
else
|
35
|
+
msg = cards.error["errorList"].blank? ? cards.error["description"] : cards.error["errorList"].to_sentence
|
36
|
+
render status: 411, json: {message: msg }
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def update
|
41
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
42
|
+
current_user.update_attribute :payu_default_card, params[:id]
|
43
|
+
#validat si tiene subscripciones y actualizar subscricion
|
44
|
+
|
45
|
+
subs = RApi::Subscription.new client
|
46
|
+
unless subs.response.blank?
|
47
|
+
unless subs.response["creditCardList"].empty?
|
48
|
+
res = subs.update({"creditCardToken": params[:id]})
|
49
|
+
|
50
|
+
unless subs.response.blank?
|
51
|
+
render status: 200, json: {message: "ok"}
|
52
|
+
else
|
53
|
+
msg = subs.error["errorList"].blank? ? subs.error["description"] : subs.error["errorList"].to_sentence
|
54
|
+
render status: 411, json: {message: msg }
|
55
|
+
end
|
56
|
+
else
|
57
|
+
render status: 200, json: {message: "ok"}
|
58
|
+
end
|
59
|
+
else
|
60
|
+
render status: 200, json: {message: "ok"}
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
def destroy
|
65
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
66
|
+
cards = RApi::Card.new client
|
67
|
+
unless cards.response.blank?
|
68
|
+
unless cards.response["creditCardList"].empty?
|
69
|
+
res = cards.delete params[:id]
|
70
|
+
|
71
|
+
render status: 200, json: {message: res["description"]}
|
72
|
+
else
|
73
|
+
render status: 411, json: {message: "No tienes tarjetas para borrar"}
|
74
|
+
end
|
75
|
+
else
|
76
|
+
render status: 411, json: {message: "No tienes tarjetas para borrar"}
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module EasyPayULatam
|
2
|
+
class Api::V1::PayUClientsController < ApiController
|
3
|
+
|
4
|
+
acts_as_token_authentication_handler_for User
|
5
|
+
|
6
|
+
def create
|
7
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
8
|
+
is_new = false
|
9
|
+
if client.response.nil?
|
10
|
+
is_new = true
|
11
|
+
client.params = { 'fullName' => current_user.name, 'email' => current_user.email }
|
12
|
+
res = client.create!
|
13
|
+
current_user.update_attribute :pay_u_costumer_id, res["id"]
|
14
|
+
end
|
15
|
+
render status: 200, json: {is_new: is_new}
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
module EasyPayULatam
|
2
|
+
class Api::V1::PayUSubscriptionsController < ApiController
|
3
|
+
|
4
|
+
acts_as_token_authentication_handler_for User
|
5
|
+
|
6
|
+
def index
|
7
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
8
|
+
subs = RApi::Subscription.new client
|
9
|
+
|
10
|
+
unless subs.response["recurringBillList"].blank?
|
11
|
+
render status: 200, json: {subscriptions: subs.response["recurringBillList"].last(30)}
|
12
|
+
else
|
13
|
+
render status: 200, json: {subscriptions: []}
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def create
|
18
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
19
|
+
subs = RApi::Subscription.new client
|
20
|
+
subs.params = params[:subscription].as_json
|
21
|
+
subs.params["customer"]["id"] = current_user.pay_u_costumer_id
|
22
|
+
subs.params["customer"]["creditCards"][0]["token"] = current_user.payu_default_card
|
23
|
+
response = subs.create!
|
24
|
+
binding.pry
|
25
|
+
unless subs.response.blank?
|
26
|
+
render status: 200, json: {message: "ok"}
|
27
|
+
else
|
28
|
+
msg = subs.error["errorList"].blank? ? subs.error["description"] : subs.error["errorList"].to_sentence
|
29
|
+
render status: 411, json: {message: msg }
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def update
|
34
|
+
# client = RApi::Client.new current_user.pay_u_costumer_id
|
35
|
+
# current_user.update_attribute :payu_default_card, params[:id]
|
36
|
+
# #validat si tiene subscripciones y actualizar subscricion
|
37
|
+
render status: 200, json: {message: "ok, done nothing"}
|
38
|
+
end
|
39
|
+
|
40
|
+
def destroy
|
41
|
+
client = RApi::Client.new current_user.pay_u_costumer_id
|
42
|
+
subs = RApi::Subscription.new client
|
43
|
+
unless subs.response.blank?
|
44
|
+
unless subs.response["creditCardList"].empty?
|
45
|
+
res = subs.delete params[:id]
|
46
|
+
|
47
|
+
render status: 200, json: {message: res["description"]}
|
48
|
+
else
|
49
|
+
render status: 411, json: {message: "No tienes subscripciones para cancelar"}
|
50
|
+
end
|
51
|
+
else
|
52
|
+
render status: 411, json: {message: "No tienes subscripciones para cancelar"}
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<%= stylesheet_link_tag "easy_pay_u_latam/subscriptions/application", media: "all" %>
|
2
|
+
<%= javascript_include_tag "easy_pay_u_latam/subscriptions/application" %>
|
3
|
+
<div id="easy_pay_u_latam">
|
4
|
+
<div ng-controller="SubscriptionsController as ssCtrl" ng-init="ssCtrl.init('<%= current_user.email %>', '<%= current_user.authentication_token %>', <%= Plan.actives.select(:id, :name, :value_month, :description, :payu_plan_code, :payu_plan_id).to_json%>)">
|
5
|
+
<%= render "easy_pay_u_latam/pay_u_payments/subscriptions/none" %>
|
6
|
+
<%= render "easy_pay_u_latam/pay_u_payments/plans/list" %>
|
7
|
+
<%= render "easy_pay_u_latam/pay_u_payments/subscriptions/actual" %>
|
8
|
+
<%= render "easy_pay_u_latam/pay_u_payments/cards/list" %>
|
9
|
+
<%= render "easy_pay_u_latam/pay_u_payments/subscriptions/list" %>
|
10
|
+
<%= render "easy_pay_u_latam/pay_u_payments/subscriptions/form" %>
|
11
|
+
</div>
|
12
|
+
</div>
|
13
|
+
<script>
|
14
|
+
EasyPayULatam.init();
|
15
|
+
</script>
|
@@ -0,0 +1,81 @@
|
|
1
|
+
<!-- <div class="row"> -->
|
2
|
+
<div class="col-md-4 col-md-offset-6">
|
3
|
+
<div class="btn-group-vertical" style="margin-bottom: 10px;">
|
4
|
+
<button type="button" class="btn btn-block secundary-btn pull-right" style="font-size: 16px; margin-right: 15px" data-toggle="modal" data-target="#new-credit-card-modal">
|
5
|
+
<span>Nueva tarjeta</span>
|
6
|
+
</button>
|
7
|
+
</div>
|
8
|
+
</div>
|
9
|
+
<!-- </div> -->
|
10
|
+
|
11
|
+
<div class="modal fade" id="new-credit-card-modal" tabindex="-1" role="dialog" aria-labelledby="new-credit-card-modalLabel">
|
12
|
+
<div class="modal-dialog" role="document">
|
13
|
+
<div class="modal-content">
|
14
|
+
<div class="modal-header">
|
15
|
+
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
16
|
+
<h4 class="modal-title" id="new-credit-card-modalLabel">Formulario de tarjeta de crédito</h4>
|
17
|
+
</div>
|
18
|
+
<div class="modal-body">
|
19
|
+
<div id="card-container" style="margin-top: 40px; margin-bottom: 80px;"></div>
|
20
|
+
<form action="#" name="cardForm" data-card data-width="500" data-card-container="#card-container" data-placeholders="ssCtrl.cardPlaceholders" data-options="ssCtrl.cardOptions" data-messages="ssCtrl.cardMessages">
|
21
|
+
|
22
|
+
<div class="row" style="margin-top: 20px; padding-left: 40px; padding-right: 40px;">
|
23
|
+
<div class="col-md-6">
|
24
|
+
<input class="form-control input-lg" placeholder="Nombre" type="text" name="CardName" card-name data-ng-model="ssCtrl.card.name" ng-required="true"/>
|
25
|
+
</div>
|
26
|
+
<div class="col-md-6">
|
27
|
+
<input class="form-control input-lg" placeholder="Documento" type="text" name="Document" data-ng-model="ssCtrl.card.document" ng-required="true"/>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
<div class="row" style="margin-top: 20px; padding-left: 40px; padding-right: 40px;">
|
31
|
+
<div class="col-md-4">
|
32
|
+
<input class="form-control input-lg" placeholder="Número de tarjeta" type="text" name="CardNumber" card-number data-ng-model="ssCtrl.card.number" ng-required="true"/>
|
33
|
+
</div>
|
34
|
+
<div class="col-md-4">
|
35
|
+
<input class="form-control input-lg" placeholder="MM / YYYY" type="text" name="CardExpiry" card-expiry data-ng-model="ssCtrl.card.expiry" ng-required="true"/>
|
36
|
+
</div>
|
37
|
+
<div class="col-md-4">
|
38
|
+
<input class="form-control input-lg" placeholder="CVC" type="text" name="CardCvc" card-cvc data-ng-model="ssCtrl.card.cvc" ng-required="true"/>
|
39
|
+
</div>
|
40
|
+
</div>
|
41
|
+
<div class="row" style="margin-top: 20px; padding-left: 40px; padding-right: 40px;">
|
42
|
+
<div class="col-md-4">
|
43
|
+
<select class="form-control input-lg" name="CardCountry" ng-model="ssCtrl.card.address.country" pvp-country-picker ng-required="true"></select>
|
44
|
+
</div>
|
45
|
+
<div class="col-md-4">
|
46
|
+
<input class="form-control input-lg" placeholder="Estado/Departamento" type="text" name="CardState" data-ng-model="ssCtrl.card.address.state" ng-required="true"/>
|
47
|
+
</div>
|
48
|
+
<div class="col-md-4">
|
49
|
+
<input class="form-control input-lg" placeholder="Ciudad" type="text" name="CardCity" data-ng-model="ssCtrl.card.address.city" ng-required="true"/>
|
50
|
+
</div>
|
51
|
+
</div>
|
52
|
+
<div class="row" style="margin-top: 20px; padding-left: 40px; padding-right: 40px;">
|
53
|
+
<div class="col-md-4">
|
54
|
+
<input class="form-control input-lg" placeholder="Dirección" type="text" name="CardAddress" data-ng-model="ssCtrl.card.address.line1" ng-required="true"/>
|
55
|
+
</div>
|
56
|
+
<div class="col-md-4">
|
57
|
+
<input class="form-control input-lg" placeholder="Teléfono" type="text" name="CardPhone" data-ng-model="ssCtrl.card.address.phone" ng-required="true"/>
|
58
|
+
</div>
|
59
|
+
<div class="col-md-4">
|
60
|
+
<button type="button" class="btn btn-primary btn-lg btn-block" ng-click="ssCtrl.ClearCard()">
|
61
|
+
Limpiar
|
62
|
+
</button>
|
63
|
+
</div>
|
64
|
+
</div>
|
65
|
+
|
66
|
+
</form>
|
67
|
+
</div>
|
68
|
+
<div class="modal-footer">
|
69
|
+
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
|
70
|
+
<button type="button" class="btn btn-primary" ng-click="ssCtrl.CreateCards()" ng-disabled="cardForm.$invalid || ssCtrl.card_loading == true">
|
71
|
+
<span ng-show="ssCtrl.card_loading == false">
|
72
|
+
Guardar
|
73
|
+
</span>
|
74
|
+
<span ng-hide="ssCtrl.card_loading == false">
|
75
|
+
<i class="fas fa-circle-notch fa-spin vertical-middle"></i>
|
76
|
+
</span>
|
77
|
+
</button>
|
78
|
+
</div>
|
79
|
+
</div>
|
80
|
+
</div>
|
81
|
+
</div>
|
@@ -0,0 +1,54 @@
|
|
1
|
+
<div class="my-profile-info-text" ng-init="ssCtrl.user_default_card = '<%= current_user.payu_default_card %>'">
|
2
|
+
<h2 class="h4">
|
3
|
+
<i class="fas fa-credit-card icon-full-blue"></i> Medios de pago
|
4
|
+
</h2>
|
5
|
+
<br/>
|
6
|
+
<div class="row">
|
7
|
+
<div class="col-md-4 col-md-offset-8">
|
8
|
+
<%= render "easy_pay_u_latam/pay_u_payments/cards/form" %>
|
9
|
+
</div>
|
10
|
+
<div class="col-md-12">
|
11
|
+
<div class="alert alert-warning" ng-if="ssCtrl.cards.length == 0">
|
12
|
+
<strong>Información: </strong> No tienes medio de pagos creados, da click en <b>Nueva tarjeta</b> para crearlos.
|
13
|
+
</div>
|
14
|
+
<table class="table" ng-if="ssCtrl.cards.length > 0">
|
15
|
+
<tr>
|
16
|
+
<th>
|
17
|
+
Número de tajeta
|
18
|
+
</th>
|
19
|
+
<th>
|
20
|
+
Nombre
|
21
|
+
</th>
|
22
|
+
<th class="text-center">
|
23
|
+
Tipo
|
24
|
+
</th>
|
25
|
+
<th class="text-center">
|
26
|
+
Acciones
|
27
|
+
</th>
|
28
|
+
</tr>
|
29
|
+
<tr ng-repeat="card in ssCtrl.cards">
|
30
|
+
<td>
|
31
|
+
{{card.number}}
|
32
|
+
<span class="label label-primary" ng-if="card.token == ssCtrl.user_default_card">Primaria</span>
|
33
|
+
</td>
|
34
|
+
<td>
|
35
|
+
{{card.name}}
|
36
|
+
</td>
|
37
|
+
<td class="text-center">
|
38
|
+
{{card.type}}
|
39
|
+
</td>
|
40
|
+
<td class="text-center">
|
41
|
+
<button type="button" class="text-btn pull-right" ng-click="ssCtrl.DeleteCard(card)">
|
42
|
+
<i class="far fa-trash-alt"></i>
|
43
|
+
Eliminar
|
44
|
+
</button>
|
45
|
+
<button type="button" class="text-btn pull-right" ng-click="ssCtrl.MarkAsPrimaryCard(card)" ng-if="card.token != ssCtrl.user_default_card">
|
46
|
+
<i class="far fa-star"></i>
|
47
|
+
Marcar como primaria
|
48
|
+
</button>
|
49
|
+
</td>
|
50
|
+
</tr>
|
51
|
+
</table>
|
52
|
+
</div>
|
53
|
+
</div>
|
54
|
+
</div>
|
@@ -0,0 +1,30 @@
|
|
1
|
+
<div class="my-profile-info-text" ng-show="ssCtrl.selected_plan == null">
|
2
|
+
<h2 class="h4">
|
3
|
+
<i class="fas fa-medal icon-full-blue"></i> Planes
|
4
|
+
</h2>
|
5
|
+
<br/>
|
6
|
+
<div class="row">
|
7
|
+
<div class="col-md-6 col-sm-6 col-xs-12" ng-class="{'border-green': plan.id == ssCtrl.selected_plan.id}" ng-repeat="plan in ssCtrl.plans">
|
8
|
+
<section class="box-price">
|
9
|
+
<div class="header-price">
|
10
|
+
<h3>{{plan.name}}</h3>
|
11
|
+
</div>
|
12
|
+
<div class="content-price">
|
13
|
+
<h2 class="text-center">
|
14
|
+
{{plan.value_month | myCurrency}}
|
15
|
+
</h2><br/>
|
16
|
+
<ul style="margin-top: 28px" ng-bind-html="plan.description">
|
17
|
+
</ul>
|
18
|
+
<button type="button" class="btn-blue text-center" ng-click="ssCtrl.SelectPlan(plan)">
|
19
|
+
<span ng-hide="ssCtrl.actual_plan.id == plan.id">
|
20
|
+
Seleccionar plan
|
21
|
+
</span>
|
22
|
+
<span ng-show="ssCtrl.actual_plan.id == plan.id">
|
23
|
+
Plan Actual
|
24
|
+
</span>
|
25
|
+
</button>
|
26
|
+
</div>
|
27
|
+
</section>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
</div>
|
@@ -0,0 +1,54 @@
|
|
1
|
+
<div class="my-profile-info-text">
|
2
|
+
<h2 class="h4">
|
3
|
+
<i class="fas fa-medal icon-full-blue"></i> Membresía y facturación
|
4
|
+
</h2>
|
5
|
+
<br/>
|
6
|
+
<div class="row">
|
7
|
+
<div class="col-md-8">
|
8
|
+
<p class="h6">
|
9
|
+
Plan actual:
|
10
|
+
<span ng-if="ssCtrl.subscription_loading == false">
|
11
|
+
{{ssCtrl.actual_plan.name}}
|
12
|
+
</span>
|
13
|
+
<span ng-if="ssCtrl.subscription_loading == true">
|
14
|
+
<i class="fas fa-circle-notch fa-spin vertical-middle"></i>
|
15
|
+
</span>
|
16
|
+
</p>
|
17
|
+
<p class="h6">
|
18
|
+
Fecha de inicio:
|
19
|
+
</p>
|
20
|
+
<p class="h6">
|
21
|
+
Fecha de corte:
|
22
|
+
</p>
|
23
|
+
<p class="h6">
|
24
|
+
Medio de pago: **** **** **** 7289
|
25
|
+
</p>
|
26
|
+
<p class="h6" ng-if="ssCtrl.selected_plan != null">
|
27
|
+
<span class="label label-info" style="font-size: 14px;">
|
28
|
+
Nuevo plan seleccionado: {{ssCtrl.selected_plan.name}}
|
29
|
+
</span>
|
30
|
+
<br>
|
31
|
+
<br>
|
32
|
+
<button type="button" class="btn secundary-btn" style="font-size: 16px; margin-right: 15px" ng-click="ssCtrl.SelectPlan(ssCtrl.selected_plan)">
|
33
|
+
<span>Pagar</span>
|
34
|
+
</button>
|
35
|
+
</p>
|
36
|
+
</div>
|
37
|
+
<div class="col-md-4">
|
38
|
+
<div class="btn-group-vertical">
|
39
|
+
<button type="button" class="btn secundary-btn pull-right" style="font-size: 16px; margin-right: 15px" ng-click="ssCtrl.ChangePlan();">
|
40
|
+
<span>Cambiar plan</span>
|
41
|
+
</button>
|
42
|
+
<!-- <button type="button" class="btn secundary-btn pull-right" style="font-size: 16px; margin-right: 15px">
|
43
|
+
<span>Actualizar información de pagos</span>
|
44
|
+
</button>
|
45
|
+
<button type="button" class="btn secundary-btn pull-right" style="font-size: 16px; margin-right: 15px">
|
46
|
+
<span>Detalles de facturación</span>
|
47
|
+
</button> -->
|
48
|
+
<button type="button" class="btn secundary-btn pull-right" style="font-size: 16px; margin-right: 15px" ng-if="ssCtrl.actual_plan != null" ng-click="ssCtrl.DeleteSubscription();">
|
49
|
+
<span>Cancelar membresía</span>
|
50
|
+
</button>
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
</div>
|
54
|
+
</div>
|
data/app/views/easy_pay_u_latam/pay_u_payments/{index.html.erb → subscriptions/_form.html.erb}
RENAMED
File without changes
|
@@ -0,0 +1,49 @@
|
|
1
|
+
<div class="my-profile-info-text">
|
2
|
+
<h2 class="h4">
|
3
|
+
<i class="fas fa-credit-card icon-full-blue"></i> Histórico de facturación
|
4
|
+
</h2>
|
5
|
+
<br/>
|
6
|
+
<div class="row">
|
7
|
+
<div class="col-md-12">
|
8
|
+
<div class="alert alert-warning" ng-if="ssCtrl.subscriptions.length == 0">
|
9
|
+
<strong>Información: </strong> Aún no tienes facturas para mostrar.
|
10
|
+
</div>
|
11
|
+
<table class="table" ng-if="ssCtrl.subscriptions.length > 0">
|
12
|
+
<tr>
|
13
|
+
<th>
|
14
|
+
Orden Id
|
15
|
+
</th>
|
16
|
+
<th class="text-center">
|
17
|
+
Estado
|
18
|
+
</th>
|
19
|
+
<th class="text-right">
|
20
|
+
Precio
|
21
|
+
</th>
|
22
|
+
<th class="text-center">
|
23
|
+
Moneda
|
24
|
+
</th>
|
25
|
+
<th class="text-center">
|
26
|
+
Fecha de cobro
|
27
|
+
</th>
|
28
|
+
</tr>
|
29
|
+
<tr ng-repeat="sub in ssCtrl.subscriptions">
|
30
|
+
<td>
|
31
|
+
{{sub.orderId}} {{sub.subscriptionId}}
|
32
|
+
</td>
|
33
|
+
<td class="text-center">
|
34
|
+
{{sub.state}}
|
35
|
+
</td>
|
36
|
+
<td class="text-right">
|
37
|
+
{{sub.amount | myCurrency}}
|
38
|
+
</td>
|
39
|
+
<td class="text-center">
|
40
|
+
{{sub.currency}}
|
41
|
+
</td>
|
42
|
+
<td class="text-center">
|
43
|
+
{{ssCtrl.IntToDate(sub.dateCharge)}}
|
44
|
+
</td>
|
45
|
+
</tr>
|
46
|
+
</table>
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
</div>
|