smukherjee-openbill 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- data/.actionScriptProperties +26 -0
- data/.flexProperties +2 -0
- data/.gitignore +4 -0
- data/.loadpath +7 -0
- data/.project +24 -0
- data/CONTRIBUTORS +6 -0
- data/INSTALL +11 -0
- data/Rakefile +51 -0
- data/VERSION +1 -0
- data/app/controllers/application.rb +49 -0
- data/app/controllers/carts_controller.rb +226 -0
- data/app/controllers/products_controller.rb +19 -0
- data/app/controllers/sessions_controller.rb +39 -0
- data/app/controllers/settings_controller.rb +15 -0
- data/app/helpers/application_helper.rb +3 -0
- data/app/helpers/carts_helper.rb +5 -0
- data/app/helpers/products_helper.rb +2 -0
- data/app/helpers/sessions_helper.rb +2 -0
- data/app/helpers/settings_helper.rb +2 -0
- data/app/models/account.rb +16 -0
- data/app/models/billingcycle.rb +7 -0
- data/app/models/currency.rb +5 -0
- data/app/models/emailtemplate.rb +5 -0
- data/app/models/invoice.rb +13 -0
- data/app/models/invoicedetail.rb +8 -0
- data/app/models/option.rb +5 -0
- data/app/models/order.rb +7 -0
- data/app/models/orderdetail.rb +11 -0
- data/app/models/paymentgateway.rb +5 -0
- data/app/models/product.rb +10 -0
- data/app/models/registrar.rb +7 -0
- data/app/models/registrarlog.rb +6 -0
- data/app/models/role.rb +7 -0
- data/app/models/server.rb +5 -0
- data/app/models/serverlog.rb +6 -0
- data/app/models/setting.rb +6 -0
- data/app/models/tld.rb +9 -0
- data/app/models/transaction.rb +8 -0
- data/app/models/user.rb +68 -0
- data/app/models/user_mailer.rb +24 -0
- data/app/models/user_observer.rb +11 -0
- data/app/models/userfieldname.rb +8 -0
- data/app/models/userfieldvalue.rb +6 -0
- data/app/views/carts/_cart_details.html.erb +36 -0
- data/app/views/carts/_check_domain_availability.html.erb +7 -0
- data/app/views/carts/_loginbox.html.erb +33 -0
- data/app/views/carts/_new_domain_available.html.erb +14 -0
- data/app/views/carts/_new_domain_not_available.html.erb +10 -0
- data/app/views/carts/_orderinfobox.html.erb +1 -0
- data/app/views/carts/_product_details.html.erb +43 -0
- data/app/views/carts/_products_list.html.erb +22 -0
- data/app/views/carts/_signupbox.html.erb +51 -0
- data/app/views/carts/checkout.html.erb +22 -0
- data/app/views/carts/customer.html.erb +26 -0
- data/app/views/carts/order.html.erb +17 -0
- data/app/views/layouts/default.html.erb +43 -0
- data/app/views/user_mailer/activation.erb +3 -0
- data/app/views/user_mailer/signup_notification.erb +8 -0
- data/config/boot.rb +109 -0
- data/config/database.yml +20 -0
- data/config/environment.rb +76 -0
- data/config/environments/development.rb +17 -0
- data/config/environments/production.rb +24 -0
- data/config/environments/test.rb +22 -0
- data/config/initializers/inflections.rb +10 -0
- data/config/initializers/mime_types.rb +5 -0
- data/config/initializers/new_rails_defaults.rb +17 -0
- data/config/initializers/site_keys.rb +38 -0
- data/config/locales/en.yml +2 -0
- data/config/routes.rb +31 -0
- data/db/migrate/20090429095737_create_settings.rb +28 -0
- data/db/migrate/20090429102507_create_users.rb +25 -0
- data/db/migrate/20090429113405_create_accounts.rb +12 -0
- data/db/migrate/20090430091300_create_roles.rb +14 -0
- data/db/migrate/20090430103415_create_products.rb +24 -0
- data/db/migrate/20090509144706_create_sessions.rb +16 -0
- data/db/migrate/20090518070457_create_billingcycles.rb +15 -0
- data/db/migrate/20090518105551_create_orders.rb +13 -0
- data/db/migrate/20090518105611_create_invoices.rb +17 -0
- data/db/migrate/20090518105912_create_orderdetails.rb +24 -0
- data/db/migrate/20090518105931_create_invoicedetails.rb +14 -0
- data/db/migrate/20090519051441_create_servers.rb +14 -0
- data/db/migrate/20090519051509_create_registrars.rb +13 -0
- data/db/migrate/20090519051536_create_paymentgateways.rb +13 -0
- data/db/migrate/20090519052025_create_tlds.rb +15 -0
- data/db/migrate/20090519070149_create_transactions.rb +17 -0
- data/db/migrate/20090519070225_create_registrarlogs.rb +16 -0
- data/db/migrate/20090519070248_create_serverlogs.rb +16 -0
- data/db/migrate/20090519071741_create_emailtemplates.rb +18 -0
- data/db/migrate/20090519083539_create_currencies.rb +18 -0
- data/db/migrate/20090522102336_create_userfieldnames.rb +16 -0
- data/db/migrate/20090522102401_create_userfieldvalues.rb +14 -0
- data/db/migrate/20090526092119_create_options.rb +14 -0
- data/html-template/AC_OETags.js +292 -0
- data/html-template/history/history.css +6 -0
- data/html-template/history/history.js +662 -0
- data/html-template/history/historyFrame.html +29 -0
- data/html-template/index.template.html +121 -0
- data/html-template/playerProductInstall.swf +0 -0
- data/lib/authenticated_system.rb +189 -0
- data/lib/authenticated_test_helper.rb +11 -0
- data/lib/tasks/empty +0 -0
- data/openbill.gemspec +787 -0
- data/pkg/openbill-0.0.0.gem +0 -0
- data/pkg/openbill-0.1.3.gem +0 -0
- data/pkg/openbill-0.1.4.gem +0 -0
- data/public/404.html +30 -0
- data/public/422.html +30 -0
- data/public/500.html +33 -0
- data/public/AC_OETags.js +292 -0
- data/public/admin.html +121 -0
- data/public/admin.swf +0 -0
- data/public/assets/LoadingUndefinedSkin.swf +0 -0
- data/public/assets/UndefinedPersonalSkinLoad.swf +0 -0
- data/public/assets/blanc.png +0 -0
- data/public/assets/botones/Boton_dis.png +0 -0
- data/public/assets/botones/PopUpButton.png +0 -0
- data/public/assets/botones/PopUpButton1.png +0 -0
- data/public/assets/botones/PopUpButton2.png +0 -0
- data/public/assets/botones/PopUpButton_0.png +0 -0
- data/public/assets/botones/PopUpButton_1.png +0 -0
- data/public/assets/botones/PopUpButton_2.png +0 -0
- data/public/assets/botones/PopUpButton_dis.png +0 -0
- data/public/assets/botones/PopUpMenuButton.png +0 -0
- data/public/assets/botones/PopUpMenuButton1.png +0 -0
- data/public/assets/botones/PopUpMenuButton2.png +0 -0
- data/public/assets/botones/PopUpMenuButton_0.png +0 -0
- data/public/assets/botones/PopUpMenuButton_1.png +0 -0
- data/public/assets/botones/PopUpMenuButton_2.png +0 -0
- data/public/assets/botones/PopUpMenuButton_dis.png +0 -0
- data/public/assets/botones/Scroll_barra.png +0 -0
- data/public/assets/botones/Scroll_barra1.png +0 -0
- data/public/assets/botones/Scroll_barra2.png +0 -0
- data/public/assets/botones/Scroll_down.png +0 -0
- data/public/assets/botones/Scroll_down1.png +0 -0
- data/public/assets/botones/Scroll_fondo.png +0 -0
- data/public/assets/botones/Scroll_icon.png +0 -0
- data/public/assets/botones/Scroll_up.png +0 -0
- data/public/assets/botones/Scroll_up1.png +0 -0
- data/public/assets/botones/TabNavigator.png +0 -0
- data/public/assets/botones/TabNavigator1.png +0 -0
- data/public/assets/botones/TabNavigator2.png +0 -0
- data/public/assets/botones/TabNavigator3.png +0 -0
- data/public/assets/botones/Thumbs.db +0 -0
- data/public/assets/botones/accordion_backround.png +0 -0
- data/public/assets/botones/accordion_barra.png +0 -0
- data/public/assets/botones/accordion_barra1.png +0 -0
- data/public/assets/botones/accordion_barra2.png +0 -0
- data/public/assets/botones/accordion_barra3.png +0 -0
- data/public/assets/botones/adelante.png +0 -0
- data/public/assets/botones/adelante1.png +0 -0
- data/public/assets/botones/adelante2.png +0 -0
- data/public/assets/botones/adelante_dis.png +0 -0
- data/public/assets/botones/atras.png +0 -0
- data/public/assets/botones/atras1.png +0 -0
- data/public/assets/botones/atras2.png +0 -0
- data/public/assets/botones/atras_dis.png +0 -0
- data/public/assets/botones/barra.png +0 -0
- data/public/assets/botones/barra_dis.png +0 -0
- data/public/assets/botones/barra_v.png +0 -0
- data/public/assets/botones/boton.jpg +0 -0
- data/public/assets/botones/boton.png +0 -0
- data/public/assets/botones/boton1.png +0 -0
- data/public/assets/botones/boton2.png +0 -0
- data/public/assets/botones/boton_classic.png +0 -0
- data/public/assets/botones/boton_classic1.png +0 -0
- data/public/assets/botones/boton_classic2.png +0 -0
- data/public/assets/botones/bullet.png +0 -0
- data/public/assets/botones/bullet1.png +0 -0
- data/public/assets/botones/bullet_V_dis.png +0 -0
- data/public/assets/botones/bullet_dis.png +0 -0
- data/public/assets/botones/bullet_v.png +0 -0
- data/public/assets/botones/bullet_v1.png +0 -0
- data/public/assets/botones/chekOff.png +0 -0
- data/public/assets/botones/chekOff1.png +0 -0
- data/public/assets/botones/chekOff2.png +0 -0
- data/public/assets/botones/chekOn.png +0 -0
- data/public/assets/botones/chekOn1.png +0 -0
- data/public/assets/botones/chekOn2.png +0 -0
- data/public/assets/botones/chek_dis.png +0 -0
- data/public/assets/botones/close.png +0 -0
- data/public/assets/botones/close1.png +0 -0
- data/public/assets/botones/close2.png +0 -0
- data/public/assets/botones/close_folder.png +0 -0
- data/public/assets/botones/colorPicker.png +0 -0
- data/public/assets/botones/colorPicker1.png +0 -0
- data/public/assets/botones/colorPicker2.png +0 -0
- data/public/assets/botones/colorPicker_blanco.png +0 -0
- data/public/assets/botones/colorPicker_blanco1.png +0 -0
- data/public/assets/botones/colorPicker_blanco2.png +0 -0
- data/public/assets/botones/colorPicker_dis.png +0 -0
- data/public/assets/botones/combo.png +0 -0
- data/public/assets/botones/combo1.png +0 -0
- data/public/assets/botones/combo2.png +0 -0
- data/public/assets/botones/combo_dis.png +0 -0
- data/public/assets/botones/dataIcon.png +0 -0
- data/public/assets/botones/dataIcon1.png +0 -0
- data/public/assets/botones/dataIcon2.png +0 -0
- data/public/assets/botones/dataIcon_dis.png +0 -0
- data/public/assets/botones/dataText.png +0 -0
- data/public/assets/botones/folder_close.png +0 -0
- data/public/assets/botones/folder_open.png +0 -0
- data/public/assets/botones/hoja.png +0 -0
- data/public/assets/botones/icon_down.png +0 -0
- data/public/assets/botones/icon_up.png +0 -0
- data/public/assets/botones/last_toggle.png +0 -0
- data/public/assets/botones/last_toggle1.png +0 -0
- data/public/assets/botones/last_toggle2.png +0 -0
- data/public/assets/botones/last_toggle3.png +0 -0
- data/public/assets/botones/numericStepper_Down.png +0 -0
- data/public/assets/botones/numericStepper_Down1.png +0 -0
- data/public/assets/botones/numericStepper_Down2.png +0 -0
- data/public/assets/botones/numericStepper_Down_dis.png +0 -0
- data/public/assets/botones/numericStepper_Text.png +0 -0
- data/public/assets/botones/numericStepper_Up.png +0 -0
- data/public/assets/botones/numericStepper_Up1.png +0 -0
- data/public/assets/botones/numericStepper_Up2.png +0 -0
- data/public/assets/botones/numericStepper_Up_dis.png +0 -0
- data/public/assets/botones/open_folder.png +0 -0
- data/public/assets/botones/prev_toggle.png +0 -0
- data/public/assets/botones/prev_toggle1.png +0 -0
- data/public/assets/botones/prev_toggle2.png +0 -0
- data/public/assets/botones/prev_toggle3.png +0 -0
- data/public/assets/botones/progress.png +0 -0
- data/public/assets/botones/progress_barra.png +0 -0
- data/public/assets/botones/progress_charning.png +0 -0
- data/public/assets/botones/progress_dis.png +0 -0
- data/public/assets/botones/radio.png +0 -0
- data/public/assets/botones/radio1.png +0 -0
- data/public/assets/botones/radio2.png +0 -0
- data/public/assets/botones/radio3.png +0 -0
- data/public/assets/botones/radio4.png +0 -0
- data/public/assets/botones/radio_dis.png +0 -0
- data/public/assets/botones/seleccionData.png +0 -0
- data/public/assets/botones/seleccionDataSelected.png +0 -0
- data/public/assets/botones/seleccionDataUp.png +0 -0
- data/public/assets/botones/textArea.png +0 -0
- data/public/assets/botones/textInput.png +0 -0
- data/public/assets/botones/textInput_error.png +0 -0
- data/public/assets/botones/textInput_no.png +0 -0
- data/public/assets/botones/toggle_medio.png +0 -0
- data/public/assets/botones/toggle_medio1.png +0 -0
- data/public/assets/botones/toggle_medio2.png +0 -0
- data/public/assets/botones/toggle_medio3.png +0 -0
- data/public/assets/botones/toolTip.png +0 -0
- data/public/assets/general/Fondo4.jpg +0 -0
- data/public/assets/general/Fondo5.jpg +0 -0
- data/public/assets/general/MenuItem.png +0 -0
- data/public/assets/general/MenuItem1.png +0 -0
- data/public/assets/general/Thumbs.db +0 -0
- data/public/assets/general/alert_fondo.png +0 -0
- data/public/assets/general/alert_fondo1.png +0 -0
- data/public/assets/general/alert_titulo.png +0 -0
- data/public/assets/general/alert_titulo1.png +0 -0
- data/public/assets/general/blanc.png +0 -0
- data/public/assets/general/fondo.jpg +0 -0
- data/public/assets/general/fondo1.jpg +0 -0
- data/public/assets/general/fondo2.jpg +0 -0
- data/public/assets/general/fondo3.jpg +0 -0
- data/public/assets/general/fondo_list.png +0 -0
- data/public/assets/general/menu.png +0 -0
- data/public/assets/general/panel.png +0 -0
- data/public/assets/general/separator.png +0 -0
- data/public/assets/general/titleWindow.png +0 -0
- data/public/assets/general/titleWindow1.png +0 -0
- data/public/assets/icons/Thumbs.db +0 -0
- data/public/assets/icons/ai.jpg +0 -0
- data/public/assets/icons/air.jpg +0 -0
- data/public/assets/icons/fl.jpg +0 -0
- data/public/assets/icons/fw.jpg +0 -0
- data/public/assets/icons/fx.jpg +0 -0
- data/public/assets/icons/ps.jpg +0 -0
- data/public/assets/scroll/Thumbs.db +0 -0
- data/public/assets/scroll/barra.png +0 -0
- data/public/assets/scroll/barra1.png +0 -0
- data/public/assets/scroll/barra2.png +0 -0
- data/public/assets/scroll/barra_1.png +0 -0
- data/public/assets/scroll/barra_2.png +0 -0
- data/public/assets/scroll/down.png +0 -0
- data/public/assets/scroll/down1.png +0 -0
- data/public/assets/scroll/down_1.png +0 -0
- data/public/assets/scroll/down_2.png +0 -0
- data/public/assets/scroll/fondo.png +0 -0
- data/public/assets/scroll/fondo_1.png +0 -0
- data/public/assets/scroll/fondo_2.png +0 -0
- data/public/assets/scroll/up.png +0 -0
- data/public/assets/scroll/up1.png +0 -0
- data/public/assets/scroll/up_1.png +0 -0
- data/public/assets/scroll/up_2.png +0 -0
- data/public/assets/xml/listData.xml +21 -0
- data/public/dispatch.cgi +10 -0
- data/public/dispatch.fcgi +24 -0
- data/public/dispatch.rb +10 -0
- data/public/favicon.ico +0 -0
- data/public/framework_3.0.0.477.swf +0 -0
- data/public/framework_3.0.0.477.swz +0 -0
- data/public/history/history.css +6 -0
- data/public/history/history.js +662 -0
- data/public/history/historyFrame.html +29 -0
- data/public/images/avatar.png +0 -0
- data/public/images/logo.png +0 -0
- data/public/images/rails.png +0 -0
- data/public/images/spinner.gif +0 -0
- data/public/index.html +1 -0
- data/public/javascripts/application.js +2 -0
- data/public/javascripts/controls.js +963 -0
- data/public/javascripts/dragdrop.js +973 -0
- data/public/javascripts/effects.js +1128 -0
- data/public/javascripts/jquery-1.3.min.js +19 -0
- data/public/javascripts/jquery.localscroll.js +104 -0
- data/public/javascripts/jquery.scrollTo.js +150 -0
- data/public/javascripts/prototype.js +4320 -0
- data/public/playerProductInstall.swf +0 -0
- data/public/robots.txt +5 -0
- data/public/stylesheets/base.css +336 -0
- data/public/stylesheets/darkroom.css +1374 -0
- data/public/stylesheets/darkroom.swf +0 -0
- data/public/stylesheets/default.css +1034 -0
- data/public/stylesheets/myriad.swf +0 -0
- data/public/stylesheets/scaffold.css +54 -0
- data/public/stylesheets/themes/bec/style.css +301 -0
- data/public/stylesheets/themes/bec-green/style.css +290 -0
- data/public/stylesheets/themes/blue/style.css +280 -0
- data/public/stylesheets/themes/default/style.css +267 -0
- data/public/stylesheets/themes/djime-cerulean/style.css +298 -0
- data/public/stylesheets/themes/kathleene/style.css +272 -0
- data/public/stylesheets/themes/openbill/style.css +272 -0
- data/public/stylesheets/themes/orange/style.css +263 -0
- data/public/stylesheets/themes/reidb-greenish/style.css +301 -0
- data/rdoc/empty +0 -0
- data/rdoc/logo.max +0 -0
- data/rdoc/logo.png +0 -0
- data/script/about +4 -0
- data/script/console +3 -0
- data/script/dbconsole +3 -0
- data/script/destroy +3 -0
- data/script/generate +3 -0
- data/script/performance/benchmarker +3 -0
- data/script/performance/profiler +3 -0
- data/script/performance/request +3 -0
- data/script/plugin +3 -0
- data/script/process/inspector +3 -0
- data/script/process/reaper +3 -0
- data/script/process/spawner +3 -0
- data/script/runner +3 -0
- data/script/server +3 -0
- data/src/admin.mxml +62 -0
- data/src/assets/LoadingUndefinedSkin.swf +0 -0
- data/src/assets/UndefinedPersonalSkinLoad.swf +0 -0
- data/src/assets/blanc.png +0 -0
- data/src/assets/botones/Boton_dis.png +0 -0
- data/src/assets/botones/PopUpButton.png +0 -0
- data/src/assets/botones/PopUpButton1.png +0 -0
- data/src/assets/botones/PopUpButton2.png +0 -0
- data/src/assets/botones/PopUpButton_0.png +0 -0
- data/src/assets/botones/PopUpButton_1.png +0 -0
- data/src/assets/botones/PopUpButton_2.png +0 -0
- data/src/assets/botones/PopUpButton_dis.png +0 -0
- data/src/assets/botones/PopUpMenuButton.png +0 -0
- data/src/assets/botones/PopUpMenuButton1.png +0 -0
- data/src/assets/botones/PopUpMenuButton2.png +0 -0
- data/src/assets/botones/PopUpMenuButton_0.png +0 -0
- data/src/assets/botones/PopUpMenuButton_1.png +0 -0
- data/src/assets/botones/PopUpMenuButton_2.png +0 -0
- data/src/assets/botones/PopUpMenuButton_dis.png +0 -0
- data/src/assets/botones/Scroll_barra.png +0 -0
- data/src/assets/botones/Scroll_barra1.png +0 -0
- data/src/assets/botones/Scroll_barra2.png +0 -0
- data/src/assets/botones/Scroll_down.png +0 -0
- data/src/assets/botones/Scroll_down1.png +0 -0
- data/src/assets/botones/Scroll_fondo.png +0 -0
- data/src/assets/botones/Scroll_icon.png +0 -0
- data/src/assets/botones/Scroll_up.png +0 -0
- data/src/assets/botones/Scroll_up1.png +0 -0
- data/src/assets/botones/TabNavigator.png +0 -0
- data/src/assets/botones/TabNavigator1.png +0 -0
- data/src/assets/botones/TabNavigator2.png +0 -0
- data/src/assets/botones/TabNavigator3.png +0 -0
- data/src/assets/botones/Thumbs.db +0 -0
- data/src/assets/botones/accordion_backround.png +0 -0
- data/src/assets/botones/accordion_barra.png +0 -0
- data/src/assets/botones/accordion_barra1.png +0 -0
- data/src/assets/botones/accordion_barra2.png +0 -0
- data/src/assets/botones/accordion_barra3.png +0 -0
- data/src/assets/botones/adelante.png +0 -0
- data/src/assets/botones/adelante1.png +0 -0
- data/src/assets/botones/adelante2.png +0 -0
- data/src/assets/botones/adelante_dis.png +0 -0
- data/src/assets/botones/atras.png +0 -0
- data/src/assets/botones/atras1.png +0 -0
- data/src/assets/botones/atras2.png +0 -0
- data/src/assets/botones/atras_dis.png +0 -0
- data/src/assets/botones/barra.png +0 -0
- data/src/assets/botones/barra_dis.png +0 -0
- data/src/assets/botones/barra_v.png +0 -0
- data/src/assets/botones/boton.jpg +0 -0
- data/src/assets/botones/boton.png +0 -0
- data/src/assets/botones/boton1.png +0 -0
- data/src/assets/botones/boton2.png +0 -0
- data/src/assets/botones/boton_classic.png +0 -0
- data/src/assets/botones/boton_classic1.png +0 -0
- data/src/assets/botones/boton_classic2.png +0 -0
- data/src/assets/botones/bullet.png +0 -0
- data/src/assets/botones/bullet1.png +0 -0
- data/src/assets/botones/bullet_V_dis.png +0 -0
- data/src/assets/botones/bullet_dis.png +0 -0
- data/src/assets/botones/bullet_v.png +0 -0
- data/src/assets/botones/bullet_v1.png +0 -0
- data/src/assets/botones/chekOff.png +0 -0
- data/src/assets/botones/chekOff1.png +0 -0
- data/src/assets/botones/chekOff2.png +0 -0
- data/src/assets/botones/chekOn.png +0 -0
- data/src/assets/botones/chekOn1.png +0 -0
- data/src/assets/botones/chekOn2.png +0 -0
- data/src/assets/botones/chek_dis.png +0 -0
- data/src/assets/botones/close.png +0 -0
- data/src/assets/botones/close1.png +0 -0
- data/src/assets/botones/close2.png +0 -0
- data/src/assets/botones/close_folder.png +0 -0
- data/src/assets/botones/colorPicker.png +0 -0
- data/src/assets/botones/colorPicker1.png +0 -0
- data/src/assets/botones/colorPicker2.png +0 -0
- data/src/assets/botones/colorPicker_blanco.png +0 -0
- data/src/assets/botones/colorPicker_blanco1.png +0 -0
- data/src/assets/botones/colorPicker_blanco2.png +0 -0
- data/src/assets/botones/colorPicker_dis.png +0 -0
- data/src/assets/botones/combo.png +0 -0
- data/src/assets/botones/combo1.png +0 -0
- data/src/assets/botones/combo2.png +0 -0
- data/src/assets/botones/combo_dis.png +0 -0
- data/src/assets/botones/dataIcon.png +0 -0
- data/src/assets/botones/dataIcon1.png +0 -0
- data/src/assets/botones/dataIcon2.png +0 -0
- data/src/assets/botones/dataIcon_dis.png +0 -0
- data/src/assets/botones/dataText.png +0 -0
- data/src/assets/botones/folder_close.png +0 -0
- data/src/assets/botones/folder_open.png +0 -0
- data/src/assets/botones/hoja.png +0 -0
- data/src/assets/botones/icon_down.png +0 -0
- data/src/assets/botones/icon_up.png +0 -0
- data/src/assets/botones/last_toggle.png +0 -0
- data/src/assets/botones/last_toggle1.png +0 -0
- data/src/assets/botones/last_toggle2.png +0 -0
- data/src/assets/botones/last_toggle3.png +0 -0
- data/src/assets/botones/numericStepper_Down.png +0 -0
- data/src/assets/botones/numericStepper_Down1.png +0 -0
- data/src/assets/botones/numericStepper_Down2.png +0 -0
- data/src/assets/botones/numericStepper_Down_dis.png +0 -0
- data/src/assets/botones/numericStepper_Text.png +0 -0
- data/src/assets/botones/numericStepper_Up.png +0 -0
- data/src/assets/botones/numericStepper_Up1.png +0 -0
- data/src/assets/botones/numericStepper_Up2.png +0 -0
- data/src/assets/botones/numericStepper_Up_dis.png +0 -0
- data/src/assets/botones/open_folder.png +0 -0
- data/src/assets/botones/prev_toggle.png +0 -0
- data/src/assets/botones/prev_toggle1.png +0 -0
- data/src/assets/botones/prev_toggle2.png +0 -0
- data/src/assets/botones/prev_toggle3.png +0 -0
- data/src/assets/botones/progress.png +0 -0
- data/src/assets/botones/progress_barra.png +0 -0
- data/src/assets/botones/progress_charning.png +0 -0
- data/src/assets/botones/progress_dis.png +0 -0
- data/src/assets/botones/radio.png +0 -0
- data/src/assets/botones/radio1.png +0 -0
- data/src/assets/botones/radio2.png +0 -0
- data/src/assets/botones/radio3.png +0 -0
- data/src/assets/botones/radio4.png +0 -0
- data/src/assets/botones/radio_dis.png +0 -0
- data/src/assets/botones/seleccionData.png +0 -0
- data/src/assets/botones/seleccionDataSelected.png +0 -0
- data/src/assets/botones/seleccionDataUp.png +0 -0
- data/src/assets/botones/textArea.png +0 -0
- data/src/assets/botones/textInput.png +0 -0
- data/src/assets/botones/textInput_error.png +0 -0
- data/src/assets/botones/textInput_no.png +0 -0
- data/src/assets/botones/toggle_medio.png +0 -0
- data/src/assets/botones/toggle_medio1.png +0 -0
- data/src/assets/botones/toggle_medio2.png +0 -0
- data/src/assets/botones/toggle_medio3.png +0 -0
- data/src/assets/botones/toolTip.png +0 -0
- data/src/assets/general/Fondo4.jpg +0 -0
- data/src/assets/general/Fondo5.jpg +0 -0
- data/src/assets/general/MenuItem.png +0 -0
- data/src/assets/general/MenuItem1.png +0 -0
- data/src/assets/general/Thumbs.db +0 -0
- data/src/assets/general/alert_fondo.png +0 -0
- data/src/assets/general/alert_fondo1.png +0 -0
- data/src/assets/general/alert_titulo.png +0 -0
- data/src/assets/general/alert_titulo1.png +0 -0
- data/src/assets/general/blanc.png +0 -0
- data/src/assets/general/fondo.jpg +0 -0
- data/src/assets/general/fondo1.jpg +0 -0
- data/src/assets/general/fondo2.jpg +0 -0
- data/src/assets/general/fondo3.jpg +0 -0
- data/src/assets/general/fondo_list.png +0 -0
- data/src/assets/general/menu.png +0 -0
- data/src/assets/general/panel.png +0 -0
- data/src/assets/general/separator.png +0 -0
- data/src/assets/general/titleWindow.png +0 -0
- data/src/assets/general/titleWindow1.png +0 -0
- data/src/assets/icons/Thumbs.db +0 -0
- data/src/assets/icons/ai.jpg +0 -0
- data/src/assets/icons/air.jpg +0 -0
- data/src/assets/icons/fl.jpg +0 -0
- data/src/assets/icons/fw.jpg +0 -0
- data/src/assets/icons/fx.jpg +0 -0
- data/src/assets/icons/ps.jpg +0 -0
- data/src/assets/programmatic/BigThumbClass.as +14 -0
- data/src/assets/programmatic/CustomPreloader.as +79 -0
- data/src/assets/programmatic/MyDateField.as +22 -0
- data/src/assets/scroll/Thumbs.db +0 -0
- data/src/assets/scroll/barra.png +0 -0
- data/src/assets/scroll/barra1.png +0 -0
- data/src/assets/scroll/barra2.png +0 -0
- data/src/assets/scroll/barra_1.png +0 -0
- data/src/assets/scroll/barra_2.png +0 -0
- data/src/assets/scroll/down.png +0 -0
- data/src/assets/scroll/down1.png +0 -0
- data/src/assets/scroll/down_1.png +0 -0
- data/src/assets/scroll/down_2.png +0 -0
- data/src/assets/scroll/fondo.png +0 -0
- data/src/assets/scroll/fondo_1.png +0 -0
- data/src/assets/scroll/fondo_2.png +0 -0
- data/src/assets/scroll/up.png +0 -0
- data/src/assets/scroll/up1.png +0 -0
- data/src/assets/scroll/up_1.png +0 -0
- data/src/assets/scroll/up_2.png +0 -0
- data/src/assets/xml/listData.xml +21 -0
- data/src/images/logo.png +0 -0
- data/src/libs/Cairngorm.swc +0 -0
- data/src/libs/flexlib.swc +0 -0
- data/src/org/rsos/openbill/business/RailsDelegate.as +109 -0
- data/src/org/rsos/openbill/business/Services.mxml +15 -0
- data/src/org/rsos/openbill/command/FpCommand.as +44 -0
- data/src/org/rsos/openbill/command/LoginCommand.as +52 -0
- data/src/org/rsos/openbill/command/LogoutCommand.as +43 -0
- data/src/org/rsos/openbill/command/ProductCommand.as +49 -0
- data/src/org/rsos/openbill/command/SettingCommand.as +39 -0
- data/src/org/rsos/openbill/control/OpenbillController.as +25 -0
- data/src/org/rsos/openbill/event/FpEvent.as +29 -0
- data/src/org/rsos/openbill/event/LoginEvent.as +29 -0
- data/src/org/rsos/openbill/event/LogoutEvent.as +26 -0
- data/src/org/rsos/openbill/event/ProductEvent.as +29 -0
- data/src/org/rsos/openbill/event/SettingEvent.as +29 -0
- data/src/org/rsos/openbill/model/OpenbillModelLocator.as +188 -0
- data/src/org/rsos/openbill/util/ValueObjectUtil.as +19 -0
- data/src/org/rsos/openbill/view/Content.mxml +4 -0
- data/src/org/rsos/openbill/view/Footer.mxml +25 -0
- data/src/org/rsos/openbill/view/Header.mxml +31 -0
- data/src/org/rsos/openbill/view/Product.mxml +82 -0
- data/src/org/rsos/openbill/view/Setting.mxml +111 -0
- data/src/org/rsos/openbill/view/SignIn.mxml +67 -0
- data/src/org/rsos/openbill/vo/AccountVO.as +13 -0
- data/src/org/rsos/openbill/vo/CurrencyVO.as +18 -0
- data/src/org/rsos/openbill/vo/ProductVO.as +17 -0
- data/src/org/rsos/openbill/vo/RoleVO.as +14 -0
- data/src/org/rsos/openbill/vo/SettingVO.as +29 -0
- data/src/org/rsos/openbill/vo/UserVO.as +18 -0
- data/src/stylesheets/darkroom.css +1374 -0
- data/src/stylesheets/darkroom.swf +0 -0
- data/src/stylesheets/default.css +1034 -0
- data/src/stylesheets/myriad.swf +0 -0
- data/test/fixtures/accounts.yml +3 -0
- data/test/fixtures/billingcycles.yml +41 -0
- data/test/fixtures/currencies.yml +11 -0
- data/test/fixtures/emailtemplates.yml +8 -0
- data/test/fixtures/invoicedetails.yml +0 -0
- data/test/fixtures/invoices.yml +0 -0
- data/test/fixtures/options.yml +0 -0
- data/test/fixtures/orderdetails.yml +0 -0
- data/test/fixtures/orders.yml +0 -0
- data/test/fixtures/paymentgateways.yml +0 -0
- data/test/fixtures/products.yml +40 -0
- data/test/fixtures/registrarlogs.yml +0 -0
- data/test/fixtures/registrars.yml +4 -0
- data/test/fixtures/roles.yml +19 -0
- data/test/fixtures/serverlogs.yml +0 -0
- data/test/fixtures/servers.yml +0 -0
- data/test/fixtures/settings.yml +7 -0
- data/test/fixtures/tlds.yml +17 -0
- data/test/fixtures/transactions.yml +0 -0
- data/test/fixtures/userfieldnames.yml +9 -0
- data/test/fixtures/userfieldvalues.yml +11 -0
- data/test/fixtures/users.yml +28 -0
- data/test/integration/empty +0 -0
- data/vendor/generators/cairngorm/USAGE +7 -0
- data/vendor/generators/cairngorm/cairngorm_generator.rb +23 -0
- data/vendor/generators/cairngorm/templates/Controller_template.as +20 -0
- data/vendor/generators/cairngorm/templates/ModelLocator_template.as +29 -0
- data/vendor/generators/cairngorm/templates/Services_template.mxml +8 -0
- data/vendor/generators/cairngorm/templates/ValueObjectUtil_template.as +19 -0
- data/vendor/generators/cairngorm/templates/main_template.mxml +27 -0
- data/vendor/generators/command/USAGE +10 -0
- data/vendor/generators/command/command_generator.rb +8 -0
- data/vendor/generators/command/templates/command_template.as +39 -0
- data/vendor/generators/command/templates/event_template.as +26 -0
- data/vendor/generators/delegate/USAGE +8 -0
- data/vendor/generators/delegate/delegate_generator.rb +7 -0
- data/vendor/generators/delegate/templates/delegate_template.as +26 -0
- data/vendor/generators/event/USAGE +8 -0
- data/vendor/generators/event/event_generator.rb +7 -0
- data/vendor/generators/event/templates/event_template.as +26 -0
- data/vendor/generators/vo/USAGE +9 -0
- data/vendor/generators/vo/templates/vo_template.as +18 -0
- data/vendor/generators/vo/vo_generator.rb +7 -0
- data/vendor/generators/worbservice/USAGE +8 -0
- data/vendor/generators/worbservice/templates/service.rb +11 -0
- data/vendor/generators/worbservice/worbservice_generator.rb +7 -0
- data/vendor/plugins/enum-column/init.rb +9 -0
- data/vendor/plugins/enum-column/lib/enum/active_record_helper.rb +107 -0
- data/vendor/plugins/enum-column/lib/enum/enum_adapter.rb +76 -0
- data/vendor/plugins/enum-column/lib/enum/mysql_adapter.rb +33 -0
- data/vendor/plugins/enum-column/lib/enum/postgresql_adapter.rb +64 -0
- data/vendor/plugins/enum-column/lib/enum/quoting.rb +17 -0
- data/vendor/plugins/enum-column/lib/enum/schema_definitions.rb +12 -0
- data/vendor/plugins/enum-column/lib/enum/schema_statements.rb +32 -0
- data/vendor/plugins/enum-column/lib/enum/sqlite3_adapter.rb +52 -0
- data/vendor/plugins/enum-column/lib/enum/validations.rb +40 -0
- data/vendor/plugins/enum-column/readme.html +125 -0
- data/vendor/plugins/enum-column/test/db/schema.rb +28 -0
- data/vendor/plugins/enum-column/test/enum_mysql_test.rb +220 -0
- data/vendor/plugins/enum-column/test/fixtures/db_definitions/mysql.drop.sql +32 -0
- data/vendor/plugins/enum-column/test/fixtures/db_definitions/mysql.sql +244 -0
- data/vendor/plugins/enum-column/test/fixtures/enumeration.rb +20 -0
- data/vendor/plugins/enum-column/test/test_helper.rb +18 -0
- data/vendor/plugins/restful-authentication/.gitignore +21 -0
- data/vendor/plugins/restful-authentication/CHANGELOG +68 -0
- data/vendor/plugins/restful-authentication/LICENSE +20 -0
- data/vendor/plugins/restful-authentication/README.textile +224 -0
- data/vendor/plugins/restful-authentication/Rakefile +32 -0
- data/vendor/plugins/restful-authentication/TODO +15 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/USAGE +1 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/authenticated_generator.rb +478 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/lib/insert_routes.rb +54 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/_model_partial.html.erb +8 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/activation.erb +3 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/authenticated_system.rb +189 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/authenticated_test_helper.rb +22 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/controller.rb +43 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/accounts.feature +109 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/sessions.feature +134 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/step_definitions/ra_env.rb +9 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/step_definitions/ra_navigation_steps.rb +48 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/step_definitions/ra_resource_steps.rb +178 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/step_definitions/ra_response_steps.rb +169 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/step_definitions/rest_auth_features_helper.rb +81 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/features/step_definitions/user_steps.rb +131 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/helper.rb +2 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/login.html.erb +16 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/mailer.rb +25 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/migration.rb +26 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/model.rb +83 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/model_controller.rb +85 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/model_helper.rb +93 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/model_helper_spec.rb +158 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/observer.rb +11 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/signup.html.erb +19 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/signup_notification.erb +8 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/site_keys.rb +38 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/spec/controllers/access_control_spec.rb +90 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/spec/controllers/authenticated_system_spec.rb +102 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/spec/controllers/sessions_controller_spec.rb +139 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/spec/controllers/users_controller_spec.rb +198 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/spec/fixtures/users.yml +60 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/spec/helpers/users_helper_spec.rb +141 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/spec/models/user_spec.rb +290 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/test/functional_test.rb +82 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/test/mailer_test.rb +31 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/test/model_functional_test.rb +93 -0
- data/vendor/plugins/restful-authentication/generators/authenticated/templates/test/unit_test.rb +164 -0
- data/vendor/plugins/restful-authentication/init.rb +1 -0
- data/vendor/plugins/restful-authentication/lib/authentication/by_cookie_token.rb +82 -0
- data/vendor/plugins/restful-authentication/lib/authentication/by_password.rb +64 -0
- data/vendor/plugins/restful-authentication/lib/authentication.rb +40 -0
- data/vendor/plugins/restful-authentication/lib/authorization/aasm_roles.rb +63 -0
- data/vendor/plugins/restful-authentication/lib/authorization/stateful_roles.rb +62 -0
- data/vendor/plugins/restful-authentication/lib/authorization.rb +14 -0
- data/vendor/plugins/restful-authentication/lib/trustification/email_validation.rb +20 -0
- data/vendor/plugins/restful-authentication/lib/trustification.rb +14 -0
- data/vendor/plugins/restful-authentication/notes/AccessControl.txt +2 -0
- data/vendor/plugins/restful-authentication/notes/Authentication.txt +5 -0
- data/vendor/plugins/restful-authentication/notes/Authorization.txt +154 -0
- data/vendor/plugins/restful-authentication/notes/RailsPlugins.txt +78 -0
- data/vendor/plugins/restful-authentication/notes/SecurityFramework.graffle +0 -0
- data/vendor/plugins/restful-authentication/notes/SecurityFramework.png +0 -0
- data/vendor/plugins/restful-authentication/notes/SecurityPatterns.txt +163 -0
- data/vendor/plugins/restful-authentication/notes/Tradeoffs.txt +126 -0
- data/vendor/plugins/restful-authentication/notes/Trustification.txt +49 -0
- data/vendor/plugins/restful-authentication/rails/init.rb +3 -0
- data/vendor/plugins/restful-authentication/restful-authentication.gemspec +33 -0
- data/vendor/plugins/restful-authentication/tasks/auth.rake +33 -0
- data/vendor/plugins/ruby-enom/README.markdown +37 -0
- data/vendor/plugins/ruby-enom/ruby-enom.rb +198 -0
- metadata +729 -8
@@ -0,0 +1,76 @@
|
|
1
|
+
# Be sure to restart your server when you modify this file
|
2
|
+
|
3
|
+
# Uncomment below to force Rails into production mode when
|
4
|
+
# you don't control web/app server and can't set it the proper way
|
5
|
+
# ENV['RAILS_ENV'] ||= 'production'
|
6
|
+
|
7
|
+
# Specifies gem version of Rails to use when vendor/rails is not present
|
8
|
+
RAILS_GEM_VERSION = '2.2.2' unless defined? RAILS_GEM_VERSION
|
9
|
+
|
10
|
+
# Bootstrap the Rails environment, frameworks, and default configuration
|
11
|
+
require File.join(File.dirname(__FILE__), 'boot')
|
12
|
+
|
13
|
+
Rails::Initializer.run do |config|
|
14
|
+
# Settings in config/environments/* take precedence over those specified here.
|
15
|
+
# Application configuration should go into files in config/initializers
|
16
|
+
# -- all .rb files in that directory are automatically loaded.
|
17
|
+
# See Rails::Configuration for more options.
|
18
|
+
|
19
|
+
# Skip frameworks you're not going to use. To use Rails without a database
|
20
|
+
# you must remove the Active Record framework.
|
21
|
+
# config.frameworks -= [ :active_record, :active_resource, :action_mailer ]
|
22
|
+
|
23
|
+
# Specify gems that this application depends on.
|
24
|
+
# They can then be installed with "rake gems:install" on new installations.
|
25
|
+
# You have to specify the :lib option for libraries, where the Gem name (sqlite3-ruby) differs from the file itself (sqlite3)
|
26
|
+
# config.gem "bj"
|
27
|
+
# config.gem "hpricot", :version => '0.6', :source => "http://code.whytheluckystiff.net"
|
28
|
+
# config.gem "sqlite3-ruby", :lib => "sqlite3"
|
29
|
+
# config.gem "aws-s3", :lib => "aws/s3"
|
30
|
+
|
31
|
+
# Only load the plugins named here, in the order given. By default, all plugins
|
32
|
+
# in vendor/plugins are loaded in alphabetical order.
|
33
|
+
# :all can be used as a placeholder for all plugins not explicitly named
|
34
|
+
# config.plugins = [ :exception_notification, :ssl_requirement, :all ]
|
35
|
+
|
36
|
+
# Add additional load paths for your own custom dirs
|
37
|
+
# config.load_paths += %W( #{RAILS_ROOT}/extras )
|
38
|
+
|
39
|
+
# Force all environments to use the same logger level
|
40
|
+
# (by default production uses :info, the others :debug)
|
41
|
+
# config.log_level = :debug
|
42
|
+
|
43
|
+
# Make Time.zone default to the specified zone, and make Active Record store time values
|
44
|
+
# in the database in UTC, and return them converted to the specified local zone.
|
45
|
+
# Run "rake -D time" for a list of tasks for finding time zone names. Comment line to use default local time.
|
46
|
+
config.time_zone = 'UTC'
|
47
|
+
|
48
|
+
# The internationalization framework can be changed to have another default locale (standard is :en) or more load paths.
|
49
|
+
# All files from config/locales/*.rb,yml are added automatically.
|
50
|
+
# config.i18n.load_path << Dir[File.join(RAILS_ROOT, 'my', 'locales', '*.{rb,yml}')]
|
51
|
+
# config.i18n.default_locale = :en
|
52
|
+
|
53
|
+
# Your secret key for verifying cookie session data integrity.
|
54
|
+
# If you change this key, all old sessions will become invalid!
|
55
|
+
# Make sure the secret is at least 30 characters and all random,
|
56
|
+
# no regular words or you'll be exposed to dictionary attacks.
|
57
|
+
config.action_controller.session = {
|
58
|
+
:session_key => '_openbill_session',
|
59
|
+
:secret => 'be13b58fd357541203052cfa88a87da83211c5f6e951d5b06f0e5618bc589cbe7accb39460900587c4377335e97f00c1bf3f22301d4bf127d034a1552219fb26'
|
60
|
+
}
|
61
|
+
|
62
|
+
# Use the database for sessions instead of the cookie-based default,
|
63
|
+
# which shouldn't be used to store highly confidential information
|
64
|
+
# (create the session table with "rake db:sessions:create")
|
65
|
+
config.action_controller.session_store = :active_record_store
|
66
|
+
|
67
|
+
# Use SQL instead of Active Record's schema dumper when creating the test database.
|
68
|
+
# This is necessary if your schema can't be completely dumped by the schema dumper,
|
69
|
+
# like if you have constraints or database-specific column types
|
70
|
+
# config.active_record.schema_format = :sql
|
71
|
+
|
72
|
+
# Activate observers that should always be running
|
73
|
+
# Please note that observers generated using script/generate observer need to have an _observer suffix
|
74
|
+
# config.active_record.observers = :cacher, :garbage_collector, :forum_observer
|
75
|
+
config.active_record.observers = :user_observer
|
76
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# Settings specified here will take precedence over those in config/environment.rb
|
2
|
+
|
3
|
+
# In the development environment your application's code is reloaded on
|
4
|
+
# every request. This slows down response time but is perfect for development
|
5
|
+
# since you don't have to restart the webserver when you make code changes.
|
6
|
+
config.cache_classes = false
|
7
|
+
|
8
|
+
# Log error messages when you accidentally call methods on nil.
|
9
|
+
config.whiny_nils = true
|
10
|
+
|
11
|
+
# Show full error reports and disable caching
|
12
|
+
config.action_controller.consider_all_requests_local = true
|
13
|
+
config.action_view.debug_rjs = true
|
14
|
+
config.action_controller.perform_caching = false
|
15
|
+
|
16
|
+
# Don't care if the mailer can't send
|
17
|
+
config.action_mailer.raise_delivery_errors = false
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# Settings specified here will take precedence over those in config/environment.rb
|
2
|
+
|
3
|
+
# The production environment is meant for finished, "live" apps.
|
4
|
+
# Code is not reloaded between requests
|
5
|
+
config.cache_classes = true
|
6
|
+
|
7
|
+
# Enable threaded mode
|
8
|
+
# config.threadsafe!
|
9
|
+
|
10
|
+
# Use a different logger for distributed setups
|
11
|
+
# config.logger = SyslogLogger.new
|
12
|
+
|
13
|
+
# Full error reports are disabled and caching is turned on
|
14
|
+
config.action_controller.consider_all_requests_local = false
|
15
|
+
config.action_controller.perform_caching = true
|
16
|
+
|
17
|
+
# Use a different cache store in production
|
18
|
+
# config.cache_store = :mem_cache_store
|
19
|
+
|
20
|
+
# Enable serving of images, stylesheets, and javascripts from an asset server
|
21
|
+
# config.action_controller.asset_host = "http://assets.example.com"
|
22
|
+
|
23
|
+
# Disable delivery errors, bad email addresses will be ignored
|
24
|
+
# config.action_mailer.raise_delivery_errors = false
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# Settings specified here will take precedence over those in config/environment.rb
|
2
|
+
|
3
|
+
# The test environment is used exclusively to run your application's
|
4
|
+
# test suite. You never need to work with it otherwise. Remember that
|
5
|
+
# your test database is "scratch space" for the test suite and is wiped
|
6
|
+
# and recreated between test runs. Don't rely on the data there!
|
7
|
+
config.cache_classes = true
|
8
|
+
|
9
|
+
# Log error messages when you accidentally call methods on nil.
|
10
|
+
config.whiny_nils = true
|
11
|
+
|
12
|
+
# Show full error reports and disable caching
|
13
|
+
config.action_controller.consider_all_requests_local = true
|
14
|
+
config.action_controller.perform_caching = false
|
15
|
+
|
16
|
+
# Disable request forgery protection in test environment
|
17
|
+
config.action_controller.allow_forgery_protection = false
|
18
|
+
|
19
|
+
# Tell Action Mailer not to deliver emails to the real world.
|
20
|
+
# The :test delivery method accumulates sent emails in the
|
21
|
+
# ActionMailer::Base.deliveries array.
|
22
|
+
config.action_mailer.delivery_method = :test
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
2
|
+
|
3
|
+
# Add new inflection rules using the following format
|
4
|
+
# (all these examples are active by default):
|
5
|
+
# ActiveSupport::Inflector.inflections do |inflect|
|
6
|
+
# inflect.plural /^(ox)$/i, '\1en'
|
7
|
+
# inflect.singular /^(ox)en/i, '\1'
|
8
|
+
# inflect.irregular 'person', 'people'
|
9
|
+
# inflect.uncountable %w( fish sheep )
|
10
|
+
# end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# These settings change the behavior of Rails 2 apps and will be defaults
|
2
|
+
# for Rails 3. You can remove this initializer when Rails 3 is released.
|
3
|
+
|
4
|
+
if defined?(ActiveRecord)
|
5
|
+
# Include Active Record class name as root for JSON serialized output.
|
6
|
+
ActiveRecord::Base.include_root_in_json = true
|
7
|
+
|
8
|
+
# Store the full class name (including module namespace) in STI type column.
|
9
|
+
ActiveRecord::Base.store_full_sti_class = true
|
10
|
+
end
|
11
|
+
|
12
|
+
# Use ISO 8601 format for JSON serialized times and dates.
|
13
|
+
ActiveSupport.use_standard_json_time_format = true
|
14
|
+
|
15
|
+
# Don't escape HTML entities in JSON, leave that for the #json_escape helper.
|
16
|
+
# if you're including raw json in an HTML page.
|
17
|
+
ActiveSupport.escape_html_entities_in_json = false
|
@@ -0,0 +1,38 @@
|
|
1
|
+
|
2
|
+
# A Site key gives additional protection against a dictionary attack if your
|
3
|
+
# DB is ever compromised. With no site key, we store
|
4
|
+
# DB_password = hash(user_password, DB_user_salt)
|
5
|
+
# If your database were to be compromised you'd be vulnerable to a dictionary
|
6
|
+
# attack on all your stupid users' passwords. With a site key, we store
|
7
|
+
# DB_password = hash(user_password, DB_user_salt, Code_site_key)
|
8
|
+
# That means an attacker needs access to both your site's code *and* its
|
9
|
+
# database to mount an "offline dictionary attack.":http://www.dwheeler.com/secure-programs/Secure-Programs-HOWTO/web-authentication.html
|
10
|
+
#
|
11
|
+
# It's probably of minor importance, but recommended by best practices: 'defense
|
12
|
+
# in depth'. Needless to say, if you upload this to github or the youtubes or
|
13
|
+
# otherwise place it in public view you'll kinda defeat the point. Your users'
|
14
|
+
# passwords are still secure, and the world won't end, but defense_in_depth -= 1.
|
15
|
+
#
|
16
|
+
# Please note: if you change this, all the passwords will be invalidated, so DO
|
17
|
+
# keep it someplace secure. Use the random value given or type in the lyrics to
|
18
|
+
# your favorite Jay-Z song or something; any moderately long, unpredictable text.
|
19
|
+
REST_AUTH_SITE_KEY = 'af770f2969359ac99f4ccf91b67bed6250d4caa6'
|
20
|
+
|
21
|
+
# Repeated applications of the hash make brute force (even with a compromised
|
22
|
+
# database and site key) harder, and scale with Moore's law.
|
23
|
+
#
|
24
|
+
# bq. "To squeeze the most security out of a limited-entropy password or
|
25
|
+
# passphrase, we can use two techniques [salting and stretching]... that are
|
26
|
+
# so simple and obvious that they should be used in every password system.
|
27
|
+
# There is really no excuse not to use them." http://tinyurl.com/37lb73
|
28
|
+
# Practical Security (Ferguson & Scheier) p350
|
29
|
+
#
|
30
|
+
# A modest 10 foldings (the default here) adds 3ms. This makes brute forcing 10
|
31
|
+
# times harder, while reducing an app that otherwise serves 100 reqs/s to 78 signin
|
32
|
+
# reqs/s, an app that does 10reqs/s to 9.7 reqs/s
|
33
|
+
#
|
34
|
+
# More:
|
35
|
+
# * http://www.owasp.org/index.php/Hashing_Java
|
36
|
+
# * "An Illustrated Guide to Cryptographic Hashes":http://www.unixwiz.net/techtips/iguide-crypto-hashes.html
|
37
|
+
|
38
|
+
REST_AUTH_DIGEST_STRETCHES = 10
|
data/config/routes.rb
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
ActionController::Routing::Routes.draw do |map|
|
2
|
+
|
3
|
+
map.logout '/logout',
|
4
|
+
:controller => 'sessions',
|
5
|
+
:action => 'destroy'
|
6
|
+
map.login '/login',
|
7
|
+
:controller => 'sessions',
|
8
|
+
:action => 'create'
|
9
|
+
map.cart '/cart/:account_id',
|
10
|
+
:controller => 'carts',
|
11
|
+
:action => 'order'
|
12
|
+
map.order '/order',
|
13
|
+
:controller => 'carts',
|
14
|
+
:action => 'order'
|
15
|
+
map.customer '/customer',
|
16
|
+
:controller => 'carts',
|
17
|
+
:action => 'customer'
|
18
|
+
map.checkout '/checkout',
|
19
|
+
:controller => 'carts',
|
20
|
+
:action => 'checkout'
|
21
|
+
map.empty_cart '/empty_cart',
|
22
|
+
:controller => 'carts',
|
23
|
+
:action => 'empty_cart'
|
24
|
+
|
25
|
+
map.resources :products
|
26
|
+
map.resources :settings
|
27
|
+
|
28
|
+
map.connect ':controller/:action/:id'
|
29
|
+
map.connect ':controller/:action/:id.:format'
|
30
|
+
|
31
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class CreateSettings < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :settings do |t|
|
4
|
+
t.integer :account_id, :null=>false
|
5
|
+
t.string :setting_name, :limit => 255
|
6
|
+
t.string :setting_email, :limit => 255
|
7
|
+
t.text :setting_address
|
8
|
+
t.string :setting_copyright, :limit => 255
|
9
|
+
t.string :setting_terms, :limit => 255
|
10
|
+
t.string :setting_privacy, :limit => 255
|
11
|
+
t.string :setting_install, :limit => 255
|
12
|
+
t.string :setting_dateformat, :limit => 255
|
13
|
+
t.string :setting_carttitle, :limit => 255
|
14
|
+
t.integer :currency_id
|
15
|
+
t.string :setting_smtp_host
|
16
|
+
t.integer :setting_smtp_port
|
17
|
+
t.string :setting_smtp_auth
|
18
|
+
t.string :setting_smtp_user
|
19
|
+
t.string :setting_smtp_pass
|
20
|
+
t.timestamps
|
21
|
+
end
|
22
|
+
add_index :settings, :account_id, :unique => true
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.down
|
26
|
+
drop_table :settings
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
class CreateUsers < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table "users", :force => true do |t|
|
4
|
+
t.column :login, :string, :limit => 255, :null=>false
|
5
|
+
t.column :name, :string, :limit => 255, :null=>false
|
6
|
+
t.column :email, :string, :limit => 255, :null=>false
|
7
|
+
t.column :crypted_password, :string, :limit => 255
|
8
|
+
t.column :salt, :string, :limit => 255
|
9
|
+
t.column :created_at, :datetime
|
10
|
+
t.column :updated_at, :datetime
|
11
|
+
t.column :remember_token, :string, :limit => 255
|
12
|
+
t.column :remember_token_expires_at, :datetime
|
13
|
+
t.column :activation_code, :string, :limit => 255
|
14
|
+
t.column :activated_at, :datetime
|
15
|
+
t.column :account_id, :integer, :default => 1, :null=>false
|
16
|
+
t.column :role_id, :integer, :default => 4, :null=>false
|
17
|
+
end
|
18
|
+
add_index :users, [:login,:account_id], :unique => true
|
19
|
+
add_index :users, [:email,:account_id], :unique => true
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.down
|
23
|
+
drop_table "users"
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class CreateRoles < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :roles do |t|
|
4
|
+
t.integer :account_id, :null=>false
|
5
|
+
t.string :role_name, :limit => 255, :null => false
|
6
|
+
t.timestamps
|
7
|
+
end
|
8
|
+
add_index :roles, [:role_name, :account_id], :unique => true
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.down
|
12
|
+
drop_table :roles
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
class CreateProducts < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :products do |t|
|
4
|
+
t.integer :account_id, :null => false
|
5
|
+
t.string :product_name, :limit => 255, :null => false
|
6
|
+
t.text :product_description
|
7
|
+
t.string :product_image_url, :limit =>255
|
8
|
+
t.integer :product_price, :null=>false
|
9
|
+
t.boolean :require_domain
|
10
|
+
t.boolean :enable_new_domain
|
11
|
+
t.boolean :enable_transfer_domain
|
12
|
+
t.boolean :enable_sub_domain
|
13
|
+
t.boolean :enable_own_domain
|
14
|
+
t.integer :server_id
|
15
|
+
t.string :server_package
|
16
|
+
t.timestamps
|
17
|
+
end
|
18
|
+
add_index :products, [:product_name,:account_id], :unique => true
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.down
|
22
|
+
drop_table :products
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class CreateSessions < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :sessions do |t|
|
4
|
+
t.string :session_id, :null => false
|
5
|
+
t.text :data
|
6
|
+
t.timestamps
|
7
|
+
end
|
8
|
+
|
9
|
+
add_index :sessions, :session_id
|
10
|
+
add_index :sessions, :updated_at
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.down
|
14
|
+
drop_table :sessions
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class CreateBillingcycles < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :billingcycles do |t|
|
4
|
+
t.integer :product_id, :null=>false
|
5
|
+
t.integer :billingcycle_days, :null=>false
|
6
|
+
t.integer :billingcycle_price,:null=>false
|
7
|
+
t.timestamps
|
8
|
+
end
|
9
|
+
add_index :billingcycles, [:product_id,:billingcycle_days], :unique => true
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.down
|
13
|
+
drop_table :billingcycles
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreateOrders < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :orders do |t|
|
4
|
+
t.integer :user_id, :null=>false
|
5
|
+
t.enum :order_status, :limit=>[:ORPHAN, :PENDING, :ACTIVE, :SUSPENDED, :COMPLETED], :default=>:ORPHAN
|
6
|
+
t.timestamps
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.down
|
11
|
+
drop_table :orders
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class CreateInvoices < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :invoices do |t|
|
4
|
+
t.integer :user_id, :null=>false
|
5
|
+
t.integer :order_id, :null=>false
|
6
|
+
t.integer :invoice_price, :null=>false
|
7
|
+
t.integer :invoice_tax_price, :null=>false
|
8
|
+
t.integer :invoice_total_price, :null=>false
|
9
|
+
t.enum :invoice_status, :limit=>[:PENDING, :PAID, :OVERDUE, :CANCEL]
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.down
|
15
|
+
drop_table :invoices
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
class CreateOrderdetails < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :orderdetails do |t|
|
4
|
+
t.integer :order_id, :null=>false
|
5
|
+
t.integer :product_id, :null=>false
|
6
|
+
t.integer :billingcycle_id, :null=>false
|
7
|
+
t.integer :tld_id
|
8
|
+
t.string :domain_name
|
9
|
+
t.string :domain_username
|
10
|
+
t.string :domain_password
|
11
|
+
t.string :hosting_username
|
12
|
+
t.string :hosting_password
|
13
|
+
t.enum :domain_type, :limit=>[:NEW, :TRANSFER, :SUB, :OWN], :default=>:NEW
|
14
|
+
t.enum :hosting_status, :limit=>[:PENDING, :ACTIVE, :SUSPENDED, :COMPLETED], :default=>:PENDING
|
15
|
+
t.enum :domain_status, :limit=>[:PENDING, :REGISTERED, :TRANSFERED, :EXPIRED, :COMPLETED], :default=>:PENDING
|
16
|
+
t.timestamps
|
17
|
+
end
|
18
|
+
add_index :orderdetails, :domain_name, :unique => true
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.down
|
22
|
+
drop_table :orderdetails
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class CreateInvoicedetails < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :invoicedetails do |t|
|
4
|
+
t.integer :invoice_id, :null=>false
|
5
|
+
t.integer :orderdetail_id, :null=>false
|
6
|
+
t.integer :invoicedetail_price, :null=>false
|
7
|
+
t.timestamps
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.down
|
12
|
+
drop_table :invoicedetails
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class CreateServers < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :servers do |t|
|
4
|
+
t.integer :account_id, :null=>false
|
5
|
+
t.string :server_name, :limit=>255, :null=>false
|
6
|
+
t.timestamps
|
7
|
+
end
|
8
|
+
add_index :servers, [:server_name, :account_id], :unique => true
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.down
|
12
|
+
drop_table :servers
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreateRegistrars < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :registrars do |t|
|
4
|
+
t.integer :account_id, :null=>false
|
5
|
+
t.string :registrar_name, :limit=>255, :null=>false
|
6
|
+
t.timestamps
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.down
|
11
|
+
drop_table :registrars
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreatePaymentgateways < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :paymentgateways do |t|
|
4
|
+
t.integer :account_id, :null=>false
|
5
|
+
t.string :paymentgateway_name, :limit=>255, :null=>false
|
6
|
+
t.timestamps
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.down
|
11
|
+
drop_table :paymentgateways
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class CreateTlds < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :tlds do |t|
|
4
|
+
t.integer :registrar_id, :null=>false
|
5
|
+
t.string :tld_name, :null=>false
|
6
|
+
t.integer :tld_price, :null=>false
|
7
|
+
t.timestamps
|
8
|
+
end
|
9
|
+
add_index :tlds, :tld_name, :unique => true
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.down
|
13
|
+
drop_table :tlds
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class CreateTransactions < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :transactions do |t|
|
4
|
+
t.integer :invoice_id, :null=>false
|
5
|
+
t.integer :paymentgateway_id, :null=>false
|
6
|
+
t.integer :transaction_price
|
7
|
+
t.text :data_sent
|
8
|
+
t.text :data_recieved
|
9
|
+
t.string :status, :limit=>255
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.down
|
15
|
+
drop_table :transactions
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class CreateRegistrarlogs < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :registrarlogs do |t|
|
4
|
+
t.integer :orderdetail_id, :null=>false
|
5
|
+
t.integer :registrar_id, :null=>false
|
6
|
+
t.text :data_sent
|
7
|
+
t.text :data_recieved
|
8
|
+
t.string :status, :limit=>255
|
9
|
+
t.timestamps
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.down
|
14
|
+
drop_table :registrarlogs
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class CreateServerlogs < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :serverlogs do |t|
|
4
|
+
t.integer :orderdetail_id, :null=>false
|
5
|
+
t.integer :server_id, :null=>false
|
6
|
+
t.text :data_sent
|
7
|
+
t.text :data_recieved
|
8
|
+
t.string :status, :limit=>255
|
9
|
+
t.timestamps
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.down
|
14
|
+
drop_table :serverlogs
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
class CreateEmailtemplates < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :emailtemplates do |t|
|
4
|
+
t.integer :account_id, :null=>false
|
5
|
+
t.enum :emailtemplate_type, :limit=>[:PRODUCT, :ORDER, :INVOICE, :CUSTOMER]
|
6
|
+
t.enum :emailtemplate_senton, :limit=>[:CREATED, :PROCESSED, :COMPLETED, :CANCELED]
|
7
|
+
t.string :emailtemplate_name, :limit=>255
|
8
|
+
t.string :emailtemplate_subject,:limit=>255
|
9
|
+
t.text :emailtemplate_body
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
add_index :emailtemplates, [:account_id, :emailtemplate_type,:emailtemplate_senton], :unique => true, :name=>"index_accont_emailtemplate_type_senton"
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.down
|
16
|
+
drop_table :emailtemplates
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
class CreateCurrencies < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :currencies do |t|
|
4
|
+
t.integer :account_id, :null=>false
|
5
|
+
t.string :currency_name, :limit=>255, :null=>false
|
6
|
+
t.string :currency_symbol, :limit=>255, :null=>false
|
7
|
+
t.string :currency_separator, :limit=>255, :null=>false, :default=>"."
|
8
|
+
t.string :currency_delimiter, :limit=>255, :null=>false, :default=>","
|
9
|
+
t.float :currency_rate
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
add_index :currencies, :currency_name, :unique => true
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.down
|
16
|
+
drop_table :currencies
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class CreateUserfieldnames < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :userfieldnames do |t|
|
4
|
+
t.integer :account_id, :null => false
|
5
|
+
t.string :field_name, :limit => 255, :null => false
|
6
|
+
t.enum :field_type, :limit => [:textfield, :textarea, :select, :checkbox], :default=>:textfield
|
7
|
+
t.boolean :field_is_mandatory, :default=>false
|
8
|
+
t.timestamps
|
9
|
+
end
|
10
|
+
add_index :userfieldnames, [:field_name,:account_id], :unique => true
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.down
|
14
|
+
drop_table :userfieldnames
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class CreateUserfieldvalues < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :userfieldvalues do |t|
|
4
|
+
t.integer :userfieldname_id, :null => false
|
5
|
+
t.integer :user_id, :null => false
|
6
|
+
t.string :fieldvalue, :limit => 255
|
7
|
+
t.timestamps
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.down
|
12
|
+
drop_table :userfieldvalues
|
13
|
+
end
|
14
|
+
end
|