engineyard-theme 1.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +7 -0
- data/Gemfile.lock +77 -0
- data/History.md +3 -0
- data/LICENSE.txt +20 -0
- data/README.md +46 -0
- data/Rakefile +33 -0
- data/VERSION +1 -0
- data/app/helpers/engineyard_theme_helper.rb +15 -0
- data/app/helpers/static_helper.rb +18 -0
- data/app/views/engineyard-theme/_footer.html.erb +57 -0
- data/app/views/engineyard-theme/_header.html.erb +70 -0
- data/app/views/shared/_appcloud_signup_button.html.erb +1 -0
- data/app/views/shared/_contact_sales_button.html.erb +1 -0
- data/app/views/shared/_countdown.html.erb +6 -0
- data/app/views/shared/_featured.html.erb +78 -0
- data/app/views/shared/_global_nav.html.erb +85 -0
- data/app/views/shared/_livechat_button.html.erb +1 -0
- data/app/views/shared/_optimizer.html.erb +21 -0
- data/app/views/shared/_recorded_webinars_sidebar.erb +10 -0
- data/app/views/shared/_tracking.html.erb +36 -0
- data/app/views/shared/_video.html.erb +7 -0
- data/app/views/shared/forms/_regions.html.erb +262 -0
- data/engineyard-theme.gemspec +406 -0
- data/example/public/engineyard-theme/images/award-bossie2010.png +0 -0
- data/example/public/engineyard-theme/images/award-crn-2010.png +0 -0
- data/example/public/engineyard-theme/images/award-ondemand100-2010.png +0 -0
- data/example/public/engineyard-theme/images/award-sdtimes100-2010.png +0 -0
- data/example/public/engineyard-theme/images/aws-logo.jpg +0 -0
- data/example/public/engineyard-theme/images/bg-dragbar.png +0 -0
- data/example/public/engineyard-theme/images/bg-header.png +0 -0
- data/example/public/engineyard-theme/images/bg_clouds.png +0 -0
- data/example/public/engineyard-theme/images/bg_feature_menu.png +0 -0
- data/example/public/engineyard-theme/images/bg_header.png +0 -0
- data/example/public/engineyard-theme/images/bg_hero_highlight.png +0 -0
- data/example/public/engineyard-theme/images/bg_hero_nav.png +0 -0
- data/example/public/engineyard-theme/images/bg_hero_panel.png +0 -0
- data/example/public/engineyard-theme/images/bg_stroke.png +0 -0
- data/example/public/engineyard-theme/images/blog-cloud.png +0 -0
- data/example/public/engineyard-theme/images/border.png +0 -0
- data/example/public/engineyard-theme/images/btn_contact_sales.png +0 -0
- data/example/public/engineyard-theme/images/btn_live_chat.png +0 -0
- data/example/public/engineyard-theme/images/btn_sign_up.png +0 -0
- data/example/public/engineyard-theme/images/btn_signup_now.png +0 -0
- data/example/public/engineyard-theme/images/btn_submit_a_ticket.png +0 -0
- data/example/public/engineyard-theme/images/collage_cloud_products.png +0 -0
- data/example/public/engineyard-theme/images/collage_dev_resources.png +0 -0
- data/example/public/engineyard-theme/images/collage_rails_in_the_cloud.png +0 -0
- data/example/public/engineyard-theme/images/controls.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-armadealo.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-bleacherreport.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-boost.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-cafepress.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-catalogchoice.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-chictopia.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-divvy.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-elabs.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-fangamb.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-getsatisfaction.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-griffin.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-healthleap.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-howcast.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-kgb.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-motista.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-newrelic.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-oneforty.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-openindie.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-pivotallabs.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-plantmyphone.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-playmesh.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-redbubble.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-repairpal.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-seekingalpha.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-spongecell.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-teambox.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-tikaro.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-topzy.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-transfs.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-z2live.png +0 -0
- data/example/public/engineyard-theme/images/customers/logo-zendesk.png +0 -0
- data/example/public/engineyard-theme/images/estimator-header.png +0 -0
- data/example/public/engineyard-theme/images/estimator-widget.png +0 -0
- data/example/public/engineyard-theme/images/hero-cli-lg.png +0 -0
- data/example/public/engineyard-theme/images/hero_appcloud.png +0 -0
- data/example/public/engineyard-theme/images/hero_appcloud_home.png +0 -0
- data/example/public/engineyard-theme/images/hero_appcloud_sm.png +0 -0
- data/example/public/engineyard-theme/images/hero_bundler_home.png +0 -0
- data/example/public/engineyard-theme/images/hero_cli.png +0 -0
- data/example/public/engineyard-theme/images/hero_company.png +0 -0
- data/example/public/engineyard-theme/images/hero_developer_resources.png +0 -0
- data/example/public/engineyard-theme/images/hero_fog.png +0 -0
- data/example/public/engineyard-theme/images/hero_getsatisfaction.png +0 -0
- data/example/public/engineyard-theme/images/hero_jruby.png +0 -0
- data/example/public/engineyard-theme/images/hero_jrubyconf2010.png +0 -0
- data/example/public/engineyard-theme/images/hero_mountain_rb.png +0 -0
- data/example/public/engineyard-theme/images/hero_professional_services.png +0 -0
- data/example/public/engineyard-theme/images/hero_rails_mobile_workshop.png +0 -0
- data/example/public/engineyard-theme/images/hero_rails_technical_paper.png +0 -0
- data/example/public/engineyard-theme/images/hero_railsdispatch.png +0 -0
- data/example/public/engineyard-theme/images/hero_rubinius.png +0 -0
- data/example/public/engineyard-theme/images/hero_rubyconf2010.png +0 -0
- data/example/public/engineyard-theme/images/hero_support_center.png +0 -0
- data/example/public/engineyard-theme/images/hero_tickets.png +0 -0
- data/example/public/engineyard-theme/images/hero_xcloud.png +0 -0
- data/example/public/engineyard-theme/images/hero_xcloud_home.png +0 -0
- data/example/public/engineyard-theme/images/hero_xcloud_homepage.png +0 -0
- data/example/public/engineyard-theme/images/home_tour.png +0 -0
- data/example/public/engineyard-theme/images/icn-asc.png +0 -0
- data/example/public/engineyard-theme/images/icn-dsc.png +0 -0
- data/example/public/engineyard-theme/images/icn_auditable.png +0 -0
- data/example/public/engineyard-theme/images/icn_auto_deploy.png +0 -0
- data/example/public/engineyard-theme/images/icn_bundler.png +0 -0
- data/example/public/engineyard-theme/images/icn_cafe_press.png +0 -0
- data/example/public/engineyard-theme/images/icn_capacity.png +0 -0
- data/example/public/engineyard-theme/images/icn_cli.png +0 -0
- data/example/public/engineyard-theme/images/icn_cloning.png +0 -0
- data/example/public/engineyard-theme/images/icn_config.png +0 -0
- data/example/public/engineyard-theme/images/icn_database.png +0 -0
- data/example/public/engineyard-theme/images/icn_debug_ruby.jpg +0 -0
- data/example/public/engineyard-theme/images/icn_event.png +0 -0
- data/example/public/engineyard-theme/images/icn_facebook.png +0 -0
- data/example/public/engineyard-theme/images/icn_facebook_color.png +0 -0
- data/example/public/engineyard-theme/images/icn_feature_summary_live_demo.png +0 -0
- data/example/public/engineyard-theme/images/icn_feature_summary_newsletter.png +0 -0
- data/example/public/engineyard-theme/images/icn_feature_summary_pdf.png +0 -0
- data/example/public/engineyard-theme/images/icn_feature_summary_rails3_webinar.png +0 -0
- data/example/public/engineyard-theme/images/icn_feature_textmate.png +0 -0
- data/example/public/engineyard-theme/images/icn_fog.png +0 -0
- data/example/public/engineyard-theme/images/icn_get_satisfaction.png +0 -0
- data/example/public/engineyard-theme/images/icn_griffin.png +0 -0
- data/example/public/engineyard-theme/images/icn_howcast.png +0 -0
- data/example/public/engineyard-theme/images/icn_itunes.png +0 -0
- data/example/public/engineyard-theme/images/icn_itunes_color.png +0 -0
- data/example/public/engineyard-theme/images/icn_jruby.png +0 -0
- data/example/public/engineyard-theme/images/icn_kgb.png +0 -0
- data/example/public/engineyard-theme/images/icn_limitless_scalability.png +0 -0
- data/example/public/engineyard-theme/images/icn_linkedin.png +0 -0
- data/example/public/engineyard-theme/images/icn_linkedin_color.png +0 -0
- data/example/public/engineyard-theme/images/icn_modular.png +0 -0
- data/example/public/engineyard-theme/images/icn_monitoring.png +0 -0
- data/example/public/engineyard-theme/images/icn_new_relic.png +0 -0
- data/example/public/engineyard-theme/images/icn_ornament.png +0 -0
- data/example/public/engineyard-theme/images/icn_pivotal_labs.png +0 -0
- data/example/public/engineyard-theme/images/icn_press_release.png +0 -0
- data/example/public/engineyard-theme/images/icn_provisioning.png +0 -0
- data/example/public/engineyard-theme/images/icn_rails.png +0 -0
- data/example/public/engineyard-theme/images/icn_rails_sm.png +0 -0
- data/example/public/engineyard-theme/images/icn_rss.png +0 -0
- data/example/public/engineyard-theme/images/icn_rss_color.png +0 -0
- data/example/public/engineyard-theme/images/icn_rubinius.png +0 -0
- data/example/public/engineyard-theme/images/icn_rubysoc.png +0 -0
- data/example/public/engineyard-theme/images/icn_runtime.png +0 -0
- data/example/public/engineyard-theme/images/icn_templates.png +0 -0
- data/example/public/engineyard-theme/images/icn_twitter.png +0 -0
- data/example/public/engineyard-theme/images/icn_twitter_color.png +0 -0
- data/example/public/engineyard-theme/images/icn_url_monitoring.png +0 -0
- data/example/public/engineyard-theme/images/icn_utility.png +0 -0
- data/example/public/engineyard-theme/images/icn_zendesk.png +0 -0
- data/example/public/engineyard-theme/images/icon-bookmark_s1.png +0 -0
- data/example/public/engineyard-theme/images/icon-check.png +0 -0
- data/example/public/engineyard-theme/images/icon-closed.png +0 -0
- data/example/public/engineyard-theme/images/icon-email.png +0 -0
- data/example/public/engineyard-theme/images/icon-net.png +0 -0
- data/example/public/engineyard-theme/images/icon-open.png +0 -0
- data/example/public/engineyard-theme/images/icon-twitter.png +0 -0
- data/example/public/engineyard-theme/images/icon-web.png +0 -0
- data/example/public/engineyard-theme/images/icon_search.png +0 -0
- data/example/public/engineyard-theme/images/img-backgrounds.png +0 -0
- data/example/public/engineyard-theme/images/img-cli.png +0 -0
- data/example/public/engineyard-theme/images/img-cloud-architecture.png +0 -0
- data/example/public/engineyard-theme/images/img-customer-bleacher.jpg +0 -0
- data/example/public/engineyard-theme/images/img-customer-pivotal.jpg +0 -0
- data/example/public/engineyard-theme/images/img-customer-spongecell.jpg +0 -0
- data/example/public/engineyard-theme/images/img-icons.png +0 -0
- data/example/public/engineyard-theme/images/img-migration-timeline.png +0 -0
- data/example/public/engineyard-theme/images/img-mov-migration.png +0 -0
- data/example/public/engineyard-theme/images/img-sample-badge-reverse.png +0 -0
- data/example/public/engineyard-theme/images/img-sample-badge.png +0 -0
- data/example/public/engineyard-theme/images/img-sample-letterform-reverse.png +0 -0
- data/example/public/engineyard-theme/images/img-sample-letterform.png +0 -0
- data/example/public/engineyard-theme/images/img-sample-logo.png +0 -0
- data/example/public/engineyard-theme/images/img-webui.png +0 -0
- data/example/public/engineyard-theme/images/img_appcloud.png +0 -0
- data/example/public/engineyard-theme/images/img_platform.png +0 -0
- data/example/public/engineyard-theme/images/img_worldmap.png +0 -0
- data/example/public/engineyard-theme/images/img_xcloud.png +0 -0
- data/example/public/engineyard-theme/images/john-screen.png +0 -0
- data/example/public/engineyard-theme/images/layout/bg-black-trans.png +0 -0
- data/example/public/engineyard-theme/images/layout/bg-f7noise.gif +0 -0
- data/example/public/engineyard-theme/images/layout/bg-header-shadow.png +0 -0
- data/example/public/engineyard-theme/images/layout/bg-header.gif +0 -0
- data/example/public/engineyard-theme/images/layout/bg-vertical-rule.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/add.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/delete.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/detach.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/down.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/edit.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/email.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/gem-add.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/right.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/social/facebook.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/social/rss.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/social/twitter.png +0 -0
- data/example/public/engineyard-theme/images/layout/icons/unix-add.png +0 -0
- data/example/public/engineyard-theme/images/layout/logo_appcloud.png +0 -0
- data/example/public/engineyard-theme/images/layout/quickstart-rules.png +0 -0
- data/example/public/engineyard-theme/images/loading.gif +0 -0
- data/example/public/engineyard-theme/images/loading_background.png +0 -0
- data/example/public/engineyard-theme/images/logo-aptana.png +0 -0
- data/example/public/engineyard-theme/images/logo-atomic.png +0 -0
- data/example/public/engineyard-theme/images/logo-aws.png +0 -0
- data/example/public/engineyard-theme/images/logo-engineyard.png +0 -0
- data/example/public/engineyard-theme/images/logo-jruby.png +0 -0
- data/example/public/engineyard-theme/images/logo-kinetic.png +0 -0
- data/example/public/engineyard-theme/images/logo-newrelic.png +0 -0
- data/example/public/engineyard-theme/images/logo-rubinius.png +0 -0
- data/example/public/engineyard-theme/images/logo-sendgrid.png +0 -0
- data/example/public/engineyard-theme/images/logo-sun.png +0 -0
- data/example/public/engineyard-theme/images/logo-terremark.png +0 -0
- data/example/public/engineyard-theme/images/logo.png +0 -0
- data/example/public/engineyard-theme/images/logo_engine_only.png +0 -0
- data/example/public/engineyard-theme/images/logo_engineyard.png +0 -0
- data/example/public/engineyard-theme/images/logo_rails.png +0 -0
- data/example/public/engineyard-theme/images/overlay.png +0 -0
- data/example/public/engineyard-theme/images/profile_acyron.png +0 -0
- data/example/public/engineyard-theme/images/profile_atjernlund.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_chriss.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_davids.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_default.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_dennisb.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_djaworski.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_dylane.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_ezequielc.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_ezygmuntowicz.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_jamiem.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_jarnold.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_jash.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_jdillon.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_jlundsford.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_johnh.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_justinp.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_jvantuyl.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_kevinr.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_leej.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_lwalley.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_mattd.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_mattp.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_maxm.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_mcampbell.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_mlasky.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_mmullany.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_mojot.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_mutwink.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_pfenton.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_psonsini.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_raphaelk.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_rlevy.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_ronellyt.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_rthomas.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_sgardner.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_sgross.png +0 -0
- data/example/public/engineyard-theme/images/profile_shair.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_spareenja.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_sudaraw.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_timg.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_tmornini.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_tsaleh.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_tweibley.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_tylerb.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_urosz.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_waynes.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_willj.jpg +0 -0
- data/example/public/engineyard-theme/images/profile_zachr.jpg +0 -0
- data/example/public/engineyard-theme/images/rails.png +0 -0
- data/example/public/engineyard-theme/images/scalability-analysis.gif +0 -0
- data/example/public/engineyard-theme/images/slide1.jpg +0 -0
- data/example/public/engineyard-theme/images/swipe_blue.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_flat_10_000000_40x100.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
- data/example/public/engineyard-theme/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
- data/example/public/engineyard-theme/images/ui-icons_222222_256x240.png +0 -0
- data/example/public/engineyard-theme/images/ui-icons_228ef1_256x240.png +0 -0
- data/example/public/engineyard-theme/images/ui-icons_ef8c08_256x240.png +0 -0
- data/example/public/engineyard-theme/images/ui-icons_ffd27a_256x240.png +0 -0
- data/example/public/engineyard-theme/images/ui-icons_ffffff_256x240.png +0 -0
- data/example/public/engineyard-theme/images/video-intro-to-appcloud.png +0 -0
- data/example/public/engineyard-theme/images/x_avatar_leah.jpg +0 -0
- data/example/public/engineyard-theme/images/x_photo_community.jpg +0 -0
- data/example/public/engineyard-theme/images/x_tyler_bird.jpeg +0 -0
- data/example/public/engineyard-theme/images/x_video_mike_grafton.jpg +0 -0
- data/example/public/engineyard-theme/javascripts/admin.js +239 -0
- data/example/public/engineyard-theme/javascripts/application.js +725 -0
- data/example/public/engineyard-theme/javascripts/application.min.js +559 -0
- data/example/public/engineyard-theme/javascripts/default.js +702 -0
- data/example/public/engineyard-theme/javascripts/html5shiv.js +5 -0
- data/example/public/engineyard-theme/javascripts/jquery.js +6240 -0
- data/example/public/engineyard-theme/javascripts/jquery.tools.min.js +20 -0
- data/example/public/engineyard-theme/javascripts/jquery.ui.js +778 -0
- data/example/public/engineyard-theme/javascripts/pricing.js +420 -0
- data/example/public/engineyard-theme/javascripts/pricing.min.js +32 -0
- data/example/public/engineyard-theme/javascripts/promos.js +131 -0
- data/example/public/engineyard-theme/javascripts/rails.js +132 -0
- data/example/public/engineyard-theme/javascripts/rails.min.js +8058 -0
- data/example/public/engineyard-theme/stylesheets/admin.css +487 -0
- data/example/public/engineyard-theme/stylesheets/application.css +2423 -0
- data/example/public/engineyard-theme/stylesheets/estimator.css +178 -0
- data/example/public/engineyard-theme/stylesheets/ie.css +22 -0
- data/example/public/engineyard-theme/stylesheets/ie7.css +57 -0
- data/example/public/engineyard-theme/stylesheets/migration.css +50 -0
- data/example/public/engineyard-theme/stylesheets/print.css +2 -0
- data/example/public/engineyard-theme/stylesheets/sass/_960gs.sass +228 -0
- data/example/public/engineyard-theme/stylesheets/sass/_buttons.sass +226 -0
- data/example/public/engineyard-theme/stylesheets/sass/_color.sass +41 -0
- data/example/public/engineyard-theme/stylesheets/sass/_forms.sass +367 -0
- data/example/public/engineyard-theme/stylesheets/sass/_globalvariables.sass +78 -0
- data/example/public/engineyard-theme/stylesheets/sass/_header.sass +96 -0
- data/example/public/engineyard-theme/stylesheets/sass/_icons.sass +72 -0
- data/example/public/engineyard-theme/stylesheets/sass/_jquery.tooltip.sass +24 -0
- data/example/public/engineyard-theme/stylesheets/sass/_jquery_ui.sass +1450 -0
- data/example/public/engineyard-theme/stylesheets/sass/_layout.sass +2222 -0
- data/example/public/engineyard-theme/stylesheets/sass/_logic.sass +16 -0
- data/example/public/engineyard-theme/stylesheets/sass/_messaging.sass +68 -0
- data/example/public/engineyard-theme/stylesheets/sass/_plugins.sass +267 -0
- data/example/public/engineyard-theme/stylesheets/sass/_sendgrid.sass +76 -0
- data/example/public/engineyard-theme/stylesheets/sass/_styleguide.sass +126 -0
- data/example/public/engineyard-theme/stylesheets/sass/_tables.sass +646 -0
- data/example/public/engineyard-theme/stylesheets/sass/_thickbox.sass +188 -0
- data/example/public/engineyard-theme/stylesheets/sass/_type.sass +295 -0
- data/example/public/engineyard-theme/stylesheets/sass/admin.sass +468 -0
- data/example/public/engineyard-theme/stylesheets/sass/application.sass +1714 -0
- data/example/public/engineyard-theme/stylesheets/sass/estimator.sass +188 -0
- data/example/public/engineyard-theme/stylesheets/sass/ie.sass +20 -0
- data/example/public/engineyard-theme/stylesheets/sass/ie7.sass +58 -0
- data/example/public/engineyard-theme/stylesheets/sass/migration.sass +50 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_banners.sass +92 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_base.sass +621 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_blog.sass +156 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_buttons.sass +62 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_clear.sass +15 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_colorbox.sass +117 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_connect.sass +42 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_estimator.sass +209 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_footer.sass +19 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_header.sass +182 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_opensource.sass +148 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_overrides.sass +4 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_popularity.sass +39 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_resets.sass +36 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_signup.sass +62 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_subnav.sass +44 -0
- data/example/public/engineyard-theme/stylesheets/sass/partials/_two_column.sass +139 -0
- data/example/public/engineyard-theme/stylesheets/sass/print.sass +3 -0
- data/example/public/engineyard-theme/stylesheets/sass/screen.sass +473 -0
- data/example/public/engineyard-theme/stylesheets/screen.css +2447 -0
- data/lib/engineyard-theme.rb +12 -0
- data/lib/generators/engineyard_theme_generator.rb +15 -0
- metadata +474 -0
@@ -0,0 +1,420 @@
|
|
1
|
+
// Pricing Calculator // scott leonard // 06.2009 // zero@botfarm.com
|
2
|
+
var pricing = {
|
3
|
+
|
4
|
+
plan: {
|
5
|
+
unitPrice: [0.110, 0.200, 0.420, 0.780, 0.780, 1.320, 2.550], // [Small, High CPU Med, Large, XL, Hgh CPU XL]
|
6
|
+
computeHoursMultiple: 720,
|
7
|
+
ebsStorageIo: 0.10,
|
8
|
+
ebsStorage: 0.10,
|
9
|
+
s3Space: 0.15,
|
10
|
+
s3XferIn: 0.10,
|
11
|
+
s3XferOut: 0.17,
|
12
|
+
s3Puts: 0.01,
|
13
|
+
s3Gets: 0.01,
|
14
|
+
bandwidthIn: 0.10,
|
15
|
+
bandwidthOut: 0.15
|
16
|
+
},
|
17
|
+
|
18
|
+
// support pricing
|
19
|
+
standardSupportTier: [275, 375, 575, 975, 2150],
|
20
|
+
additionalStandardSupport: 425,
|
21
|
+
premiumSupportTier: [475, 625, 975, 1675, 3575],
|
22
|
+
additionalPremiumSupport: 725,
|
23
|
+
|
24
|
+
// slider limits
|
25
|
+
maxPageviews: 1000000,
|
26
|
+
maxPagesize: 2000,
|
27
|
+
|
28
|
+
|
29
|
+
init: function() {
|
30
|
+
|
31
|
+
pricing.planMin = 0;
|
32
|
+
pricing.totalServers = 0;
|
33
|
+
pricing.maxServers = 20;
|
34
|
+
|
35
|
+
$('#servers .minus').click(function() {
|
36
|
+
var input = $(this).parent().children('input');
|
37
|
+
var newValue = parseInt(input.val()) - 1;
|
38
|
+
input.val(newValue);
|
39
|
+
pricing.update();
|
40
|
+
});
|
41
|
+
|
42
|
+
$('#servers .plus').click(function() {
|
43
|
+
var input = $(this).parent().children('input');
|
44
|
+
var newValue = parseInt(input.val()) + 1;
|
45
|
+
input.val(newValue);
|
46
|
+
pricing.update();
|
47
|
+
});
|
48
|
+
|
49
|
+
$('#servers input').change(function() {
|
50
|
+
pricing.update()
|
51
|
+
});
|
52
|
+
|
53
|
+
$("input[name='support_group']").change(function() {
|
54
|
+
pricing.update()
|
55
|
+
});
|
56
|
+
|
57
|
+
$('#pageviews_widget').slider({
|
58
|
+
value: 1000,
|
59
|
+
min: 0,
|
60
|
+
max: pricing.maxPageviews,
|
61
|
+
step: 10000,
|
62
|
+
slide: function(event, ui) {
|
63
|
+
$('#pageviews').val(pricing.formatValue(ui.value));
|
64
|
+
},
|
65
|
+
change: pricing.update,
|
66
|
+
animate: true
|
67
|
+
});
|
68
|
+
|
69
|
+
$('#pagesize_widget').slider({
|
70
|
+
value: 300,
|
71
|
+
min: 0,
|
72
|
+
max: pricing.maxPagesize,
|
73
|
+
step: 100,
|
74
|
+
slide: function(event, ui) {
|
75
|
+
$('#pagesize').val(pricing.formatValue(ui.value) + 'Kbs');
|
76
|
+
},
|
77
|
+
change: pricing.update,
|
78
|
+
animate: true
|
79
|
+
});
|
80
|
+
|
81
|
+
$('#total_backups_widget').slider({
|
82
|
+
value: 1,
|
83
|
+
min: 1,
|
84
|
+
max: 30,
|
85
|
+
step: 1,
|
86
|
+
slide: function(event, ui) {
|
87
|
+
$('#total_backups').val(ui.value);
|
88
|
+
},
|
89
|
+
change: pricing.update,
|
90
|
+
animate: true
|
91
|
+
});
|
92
|
+
|
93
|
+
$('#backup_frequency_widget').slider({
|
94
|
+
value: 0,
|
95
|
+
min: 0,
|
96
|
+
max: 5,
|
97
|
+
step: 1,
|
98
|
+
slide: function(event, ui) {
|
99
|
+
if (ui.value == 5) { $('#backup_frequency').val('every hour')}
|
100
|
+
else if (ui.value == 4) { $('#backup_frequency').val('every 2 hours')}
|
101
|
+
else if (ui.value == 3) { $('#backup_frequency').val('every 6 hours')}
|
102
|
+
else if (ui.value == 2) { $('#backup_frequency').val('twice a day')}
|
103
|
+
else if (ui.value == 1) { $('#backup_frequency').val('once a day')}
|
104
|
+
else if (ui.value == 0) { $('#backup_frequency').val('never')}
|
105
|
+
},
|
106
|
+
change: pricing.update,
|
107
|
+
animate: true
|
108
|
+
});
|
109
|
+
pricing.update();
|
110
|
+
|
111
|
+
},
|
112
|
+
|
113
|
+
update: function() {
|
114
|
+
|
115
|
+
$('#console').html('');
|
116
|
+
|
117
|
+
var count = 0;
|
118
|
+
$('#servers input').each( function(i) {
|
119
|
+
if (pricing.totalServers > pricing.maxServers) { $(this).val(0) }
|
120
|
+
else {
|
121
|
+
count = count + parseInt($(this).val());
|
122
|
+
|
123
|
+
// Debugging
|
124
|
+
// debug.writeServers(parseInt($(this).val()));
|
125
|
+
}
|
126
|
+
|
127
|
+
if ($(this).val() != 0) { $('#servers .minus')[i].disabled = false }
|
128
|
+
else { $('#servers .minus')[i].disabled = true }
|
129
|
+
|
130
|
+
});
|
131
|
+
|
132
|
+
if ($('#backup_frequency_widget').slider('value') <= 0){
|
133
|
+
$('#total_backups_widget').slider('disable');
|
134
|
+
$('#total_backups_widget').fadeTo('slow', 0.4);
|
135
|
+
} else {
|
136
|
+
$('#total_backups_widget').slider('enable');
|
137
|
+
$('#total_backups_widget').fadeTo('slow', 1);
|
138
|
+
}
|
139
|
+
|
140
|
+
pricing.totalServers = count;
|
141
|
+
$('#servers_remaining').html(count);
|
142
|
+
|
143
|
+
// $('#servers_remaining').html(pricing.maxServers - count);
|
144
|
+
|
145
|
+
if (count == pricing.maxServers) { $('#servers .plus').attr('disabled', true) }
|
146
|
+
else { $('#servers .plus').attr('disabled', false) }
|
147
|
+
|
148
|
+
// caclulate total
|
149
|
+
|
150
|
+
var prices = pricing.plan;
|
151
|
+
|
152
|
+
var total = 0;
|
153
|
+
var totalComputeHours = pricing.totalServers * prices.computeHoursMultiple;
|
154
|
+
var standardSupportTotal = 0;
|
155
|
+
var premiumSupportTotal = 0;
|
156
|
+
|
157
|
+
$('input.number').each(function(i) {
|
158
|
+
total += parseInt($(this).val()) * 720 * prices.unitPrice[i];
|
159
|
+
});
|
160
|
+
|
161
|
+
if (pricing.totalServers) {
|
162
|
+
|
163
|
+
var s3Xfer = 14;
|
164
|
+
var bwidth = 10;
|
165
|
+
var per24hours = [0,1,2,6,12,24];
|
166
|
+
var backupFreq = per24hours[$('#backup_frequency_widget').slider('value')]
|
167
|
+
var pageviews = $('#pageviews').val().replace(/\$|\,/g,'')
|
168
|
+
var pagesize = $('#pagesize').val().replace(/\$|\,/g,'')
|
169
|
+
|
170
|
+
if (parseInt($('#total_backups').val()) <= 0 || backupFreq <= 0) {
|
171
|
+
var ebsStorageIO = 0;
|
172
|
+
} else {
|
173
|
+
if (parseInt(pageviews) <= 0) {
|
174
|
+
var ebsStorageIO = (parseInt(Math.log(1)) * (parseInt(pagesize) / 300) * (Math.log(backupFreq * parseInt($('#total_backups').val()))) ) / 1.5 + 1;
|
175
|
+
}
|
176
|
+
else {
|
177
|
+
var ebsStorageIO = (parseInt(Math.log(pageviews)) * (parseInt(pagesize) / 300) * (Math.log(backupFreq * parseInt($('#total_backups').val()))) ) / 1.5 + 1;
|
178
|
+
}
|
179
|
+
}
|
180
|
+
|
181
|
+
if (parseInt(pageviews) > 0) {
|
182
|
+
var bandwidthIn = (parseInt(pagesize) / 300) * (parseInt(Math.sqrt(pageviews)) / 10)
|
183
|
+
} else {
|
184
|
+
var bandwidthIn = 0;
|
185
|
+
}
|
186
|
+
|
187
|
+
var ebsStorage = ebsStorageIO / 5;
|
188
|
+
var s3Space = ebsStorage / 2;
|
189
|
+
var s3In = ebsStorageIO / 6;
|
190
|
+
var s3Out = ebsStorageIO / 20;
|
191
|
+
var s3Puts = backupFreq * 6;
|
192
|
+
var s3Gets = backupFreq;
|
193
|
+
var bandwidthOut = bandwidthIn * 10;
|
194
|
+
|
195
|
+
total += ebsStorage * prices.ebsStorage;
|
196
|
+
total += ebsStorageIO * prices.ebsStorageIo;
|
197
|
+
total += s3Space * prices.s3Space;
|
198
|
+
total += s3In * prices.s3XferIn;
|
199
|
+
total += s3Out * prices.s3XferOut;
|
200
|
+
total += s3Puts * prices.s3Puts;
|
201
|
+
total += s3Gets * prices.s3Gets;
|
202
|
+
total += bandwidthIn * prices.bandwidthIn;
|
203
|
+
total += bandwidthOut * prices.bandwidthOut;
|
204
|
+
|
205
|
+
var supportTier = 0;
|
206
|
+
var additionalSupport = 0;
|
207
|
+
if (totalComputeHours > 2500 && totalComputeHours <= 5000) supportTier = 1;
|
208
|
+
else if (totalComputeHours > 5000 && totalComputeHours <= 10000) supportTier = 2;
|
209
|
+
else if (totalComputeHours > 10000 && totalComputeHours <= 20000) supportTier = 3;
|
210
|
+
else if (totalComputeHours > 20000 && totalComputeHours <= 50000) supportTier = 4;
|
211
|
+
else if (totalComputeHours > 50000) {
|
212
|
+
supportTier = 4;
|
213
|
+
additionalSupport = (totalComputeHours - 50000) / 10000;
|
214
|
+
}
|
215
|
+
standardSupportTotal = pricing.standardSupportTier[supportTier];
|
216
|
+
premiumSupportTotal = pricing.premiumSupportTier[supportTier];
|
217
|
+
|
218
|
+
}
|
219
|
+
|
220
|
+
// Calculate Minimum
|
221
|
+
|
222
|
+
if(total < pricing.planMin){
|
223
|
+
standardSupportTotal = pricing.standardSupportTier[0];
|
224
|
+
total = pricing.planMin;
|
225
|
+
$('#total p').html('*monthly<br/>minimum')
|
226
|
+
} else {
|
227
|
+
$('#total p').html('');
|
228
|
+
}
|
229
|
+
|
230
|
+
|
231
|
+
// Updates Support Tier prices
|
232
|
+
var selected_support = $("input[name='support_group']:checked").val();
|
233
|
+
var supportTotal = 0;
|
234
|
+
|
235
|
+
if (pricing.totalServers > 0) {
|
236
|
+
$('#standard_support_total').html(pricing.formatTotal(standardSupportTotal) + " Month");
|
237
|
+
$('#premium_support_total').html(pricing.formatTotal(premiumSupportTotal) + " Month");
|
238
|
+
if (selected_support == 'standard') { supportTotal = standardSupportTotal }
|
239
|
+
else if (selected_support == 'premium') { supportTotal = premiumSupportTotal }
|
240
|
+
} else {
|
241
|
+
$('#standard_support_total').html("—");
|
242
|
+
$('#premium_support_total').html("—");
|
243
|
+
}
|
244
|
+
$('#total #estimate').html(pricing.formatTotal(total + supportTotal));
|
245
|
+
|
246
|
+
},
|
247
|
+
|
248
|
+
formatTotal: function(strValue) {
|
249
|
+
|
250
|
+
strValue = strValue.toString().replace(/\$|\,/g,'');
|
251
|
+
dblValue = parseFloat(strValue);
|
252
|
+
|
253
|
+
blnSign = (dblValue == (dblValue = Math.abs(dblValue)));
|
254
|
+
dblValue = Math.floor(dblValue*100+0.50000000001);
|
255
|
+
intCents = dblValue%100;
|
256
|
+
strCents = intCents.toString();
|
257
|
+
dblValue = Math.floor(dblValue/100).toString();
|
258
|
+
if(intCents<10)
|
259
|
+
strCents = "0" + strCents;
|
260
|
+
for (var i = 0; i < Math.floor((dblValue.length-(1+i))/3); i++)
|
261
|
+
dblValue = dblValue.substring(0,dblValue.length-(4*i+3))+','+
|
262
|
+
dblValue.substring(dblValue.length-(4*i+3));
|
263
|
+
return (((blnSign)?'':'-') + '$' + dblValue + '.' + strCents);
|
264
|
+
},
|
265
|
+
|
266
|
+
formatValue: function(strValue) {
|
267
|
+
strValue = strValue.toString().replace(/\$|\,/g,'');
|
268
|
+
dblValue = parseFloat(strValue);
|
269
|
+
blnSign = (dblValue == (dblValue = Math.abs(dblValue)));
|
270
|
+
dblValue = Math.floor(dblValue*100);
|
271
|
+
|
272
|
+
intCents = dblValue%100;
|
273
|
+
strCents = intCents.toString();
|
274
|
+
dblValue = Math.floor(dblValue/100).toString();
|
275
|
+
|
276
|
+
for (var i=0 ; i < Math.floor((dblValue.length-(1+i))/3); i++) {
|
277
|
+
dblValue = dblValue.substring(0,dblValue.length-(4*i+3))+','+dblValue.substring(dblValue.length-(4*i+3));
|
278
|
+
}
|
279
|
+
return (((blnSign)?'':'-') + dblValue);
|
280
|
+
}
|
281
|
+
}
|
282
|
+
|
283
|
+
var estimator = {
|
284
|
+
serverName: ["Small", "Medium", "Large"],
|
285
|
+
serverPrice: [0.11, 0.200, 0.420],
|
286
|
+
computeHours: 720,
|
287
|
+
maxServers: 20,
|
288
|
+
priceAdj: 1.075,
|
289
|
+
|
290
|
+
select_default: function() {
|
291
|
+
units = 1;
|
292
|
+
database = 0;
|
293
|
+
$('#dedicated_db').removeAttr('checked');
|
294
|
+
estimator.update();
|
295
|
+
},
|
296
|
+
|
297
|
+
init: function() {
|
298
|
+
$('#estimator input').change(function(){
|
299
|
+
if ($('#servers').val() > estimator.maxServers) {
|
300
|
+
units = estimator.maxServers;
|
301
|
+
$('#servers').val(units);
|
302
|
+
} else {
|
303
|
+
units = $('#servers').val();
|
304
|
+
}
|
305
|
+
if($('#dedicated_db:checked').val()) database = 1;
|
306
|
+
else database = 0;
|
307
|
+
$('#configuration li').removeClass('selected');
|
308
|
+
estimator.update();
|
309
|
+
}),
|
310
|
+
|
311
|
+
// Only allow numbers in the servers text field
|
312
|
+
$('#servers').keydown(function(event){
|
313
|
+
// Allow only backspace and delete
|
314
|
+
if (event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9) {
|
315
|
+
// let it happen, don't do anything
|
316
|
+
} else {
|
317
|
+
// Ensure that it is a number and stop the keypress
|
318
|
+
if ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105)) {
|
319
|
+
} else {
|
320
|
+
event.preventDefault();
|
321
|
+
}
|
322
|
+
}
|
323
|
+
}),
|
324
|
+
|
325
|
+
$('#shared').click(function(){
|
326
|
+
units = 1;
|
327
|
+
database = 0;
|
328
|
+
$('#dedicated_db').removeAttr('checked');
|
329
|
+
estimator.update(true);
|
330
|
+
}),
|
331
|
+
|
332
|
+
$('#dedicated').click(function(){
|
333
|
+
units = 1;
|
334
|
+
database = 1;
|
335
|
+
$('#dedicated_db').attr('checked', 'checked');
|
336
|
+
estimator.update(true);
|
337
|
+
}),
|
338
|
+
|
339
|
+
$('#cluster').click(function(){
|
340
|
+
units = 2;
|
341
|
+
database = 1;
|
342
|
+
$('#dedicated_db').attr('checked', 'checked');
|
343
|
+
estimator.update(true);
|
344
|
+
}),
|
345
|
+
|
346
|
+
$('#configuration li').click(function(){
|
347
|
+
$(this).parent().children('li').removeClass("selected");
|
348
|
+
$(this).addClass("selected");
|
349
|
+
}),
|
350
|
+
|
351
|
+
$('.preset').click(function(){
|
352
|
+
$(this).addClass('selected');
|
353
|
+
$('.custom').removeClass('selected');
|
354
|
+
$('.examples').removeClass('selected');
|
355
|
+
$('#configuration').removeClass('hidden');
|
356
|
+
$('#examples').addClass('hidden');
|
357
|
+
$('#customize').addClass('hidden');
|
358
|
+
}),
|
359
|
+
$('.custom').click(function(){
|
360
|
+
$(this).addClass('selected');
|
361
|
+
$('.preset').removeClass('selected');
|
362
|
+
$('.examples').removeClass('selected');
|
363
|
+
$('#configuration').addClass('hidden');
|
364
|
+
$('#examples').addClass('hidden');
|
365
|
+
$('#customize').removeClass('hidden');
|
366
|
+
}),
|
367
|
+
$('.examples').click(function(){
|
368
|
+
$(this).addClass('selected');
|
369
|
+
$('.preset').removeClass('selected');
|
370
|
+
$('.custom').removeClass('selected');
|
371
|
+
$('#configuration').addClass('hidden');
|
372
|
+
$('#customize').addClass('hidden');
|
373
|
+
$('#examples').removeClass('hidden');
|
374
|
+
})
|
375
|
+
},
|
376
|
+
update_ui: function() {
|
377
|
+
$('#servers').val(units);
|
378
|
+
$('#small_server').attr('checked', 'checked');
|
379
|
+
},
|
380
|
+
|
381
|
+
// Get total
|
382
|
+
update: function(preconfig) {
|
383
|
+
if(preconfig) estimator.update_ui();
|
384
|
+
|
385
|
+
var serverSize = $("#server_size input[name='server_size']:checked").val();
|
386
|
+
var serverCosts = (estimator.serverPrice[serverSize] * units) + (estimator.serverPrice[serverSize] * database);
|
387
|
+
var monthlyCosts = serverCosts * estimator.computeHours;
|
388
|
+
var total = monthlyCosts * estimator.priceAdj;
|
389
|
+
|
390
|
+
$('#total').html(estimator.formatTotal(total));
|
391
|
+
|
392
|
+
// Updating cost details
|
393
|
+
$('.detail_server_count').html(units);
|
394
|
+
$('.detail_server_size').html(estimator.serverName[serverSize]);
|
395
|
+
$('.detail_server_cost').html(estimator.serverPrice[serverSize] * 100);
|
396
|
+
$('.server_subtotal').html(estimator.formatTotal(estimator.serverPrice[serverSize] * units * estimator.computeHours));
|
397
|
+
$('.db_server_count').html(database);
|
398
|
+
$('.db_subtotal').html("+ " + estimator.formatTotal(estimator.serverPrice[serverSize] * database * estimator.computeHours));
|
399
|
+
$('.priceAdj').html("+ " + estimator.formatTotal(monthlyCosts * (estimator.priceAdj - 1)));
|
400
|
+
if(database != 0) { $('.has_db').html("+ 1 " + estimator.serverName[serverSize] + " dedicated database instance"); } else { $('.has_db').html("");};
|
401
|
+
},
|
402
|
+
|
403
|
+
// Format total
|
404
|
+
formatTotal: function(strValue) {
|
405
|
+
strValue = strValue.toString().replace(/\$|\,/g,'');
|
406
|
+
dblValue = parseFloat(strValue);
|
407
|
+
|
408
|
+
blnSign = (dblValue == (dblValue = Math.abs(dblValue)));
|
409
|
+
dblValue = Math.floor(dblValue*100+0.50000000001);
|
410
|
+
intCents = dblValue%100;
|
411
|
+
strCents = intCents.toString();
|
412
|
+
dblValue = Math.floor(dblValue/100).toString();
|
413
|
+
if(intCents<10)
|
414
|
+
strCents = "0" + strCents;
|
415
|
+
for (var i = 0; i < Math.floor((dblValue.length-(1+i))/3); i++)
|
416
|
+
dblValue = dblValue.substring(0,dblValue.length-(4*i+3))+','+
|
417
|
+
dblValue.substring(dblValue.length-(4*i+3));
|
418
|
+
return (((blnSign)?'':'-') + '$' + dblValue + '.' + strCents);
|
419
|
+
}
|
420
|
+
};
|
@@ -0,0 +1,32 @@
|
|
1
|
+
var pricing={plan:{unitPrice:[0.110,0.200,0.420,0.780,0.780,1.320,2.550],computeHoursMultiple:720,ebsStorageIo:0.10,ebsStorage:0.10,s3Space:0.15,s3XferIn:0.10,s3XferOut:0.17,s3Puts:0.01,s3Gets:0.01,bandwidthIn:0.10,bandwidthOut:0.15},standardSupportTier:[275,375,575,975,2150],additionalStandardSupport:425,premiumSupportTier:[475,625,975,1675,3575],additionalPremiumSupport:725,maxPageviews:1000000,maxPagesize:2000,init:function(){pricing.planMin=0;pricing.totalServers=0;pricing.maxServers=20;$('#servers .minus').click(function(){var input=$(this).parent().children('input');var newValue=parseInt(input.val())-1;input.val(newValue);pricing.update();});$('#servers .plus').click(function(){var input=$(this).parent().children('input');var newValue=parseInt(input.val())+1;input.val(newValue);pricing.update();});$('#servers input').change(function(){pricing.update()});$("input[name='support_group']").change(function(){pricing.update()});$('#pageviews_widget').slider({value:1000,min:0,max:pricing.maxPageviews,step:10000,slide:function(event,ui){$('#pageviews').val(pricing.formatValue(ui.value));},change:pricing.update,animate:true});$('#pagesize_widget').slider({value:300,min:0,max:pricing.maxPagesize,step:100,slide:function(event,ui){$('#pagesize').val(pricing.formatValue(ui.value)+'Kbs');},change:pricing.update,animate:true});$('#total_backups_widget').slider({value:1,min:1,max:30,step:1,slide:function(event,ui){$('#total_backups').val(ui.value);},change:pricing.update,animate:true});$('#backup_frequency_widget').slider({value:0,min:0,max:5,step:1,slide:function(event,ui){if(ui.value==5){$('#backup_frequency').val('every hour')}
|
2
|
+
else if(ui.value==4){$('#backup_frequency').val('every 2 hours')}
|
3
|
+
else if(ui.value==3){$('#backup_frequency').val('every 6 hours')}
|
4
|
+
else if(ui.value==2){$('#backup_frequency').val('twice a day')}
|
5
|
+
else if(ui.value==1){$('#backup_frequency').val('once a day')}
|
6
|
+
else if(ui.value==0){$('#backup_frequency').val('never')}},change:pricing.update,animate:true});pricing.update();},update:function(){$('#console').html('');var count=0;$('#servers input').each(function(i){if(pricing.totalServers>pricing.maxServers){$(this).val(0)}
|
7
|
+
else{count=count+parseInt($(this).val());}
|
8
|
+
if($(this).val()!=0){$('#servers .minus')[i].disabled=false}
|
9
|
+
else{$('#servers .minus')[i].disabled=true}});if($('#backup_frequency_widget').slider('value')<=0){$('#total_backups_widget').slider('disable');$('#total_backups_widget').fadeTo('slow',0.4);}else{$('#total_backups_widget').slider('enable');$('#total_backups_widget').fadeTo('slow',1);}
|
10
|
+
pricing.totalServers=count;$('#servers_remaining').html(count);if(count==pricing.maxServers){$('#servers .plus').attr('disabled',true)}
|
11
|
+
else{$('#servers .plus').attr('disabled',false)}
|
12
|
+
var prices=pricing.plan;var total=0;var totalComputeHours=pricing.totalServers*prices.computeHoursMultiple;var standardSupportTotal=0;var premiumSupportTotal=0;$('input.number').each(function(i){total+=parseInt($(this).val())*720*prices.unitPrice[i];});if(pricing.totalServers){var s3Xfer=14;var bwidth=10;var per24hours=[0,1,2,6,12,24];var backupFreq=per24hours[$('#backup_frequency_widget').slider('value')]
|
13
|
+
var pageviews=$('#pageviews').val().replace(/\$|\,/g,'')
|
14
|
+
var pagesize=$('#pagesize').val().replace(/\$|\,/g,'')
|
15
|
+
if(parseInt($('#total_backups').val())<=0||backupFreq<=0){var ebsStorageIO=0;}else{if(parseInt(pageviews)<=0){var ebsStorageIO=(parseInt(Math.log(1))*(parseInt(pagesize)/300)*(Math.log(backupFreq*parseInt($('#total_backups').val()))))/1.5+1;}
|
16
|
+
else{var ebsStorageIO=(parseInt(Math.log(pageviews))*(parseInt(pagesize)/300)*(Math.log(backupFreq*parseInt($('#total_backups').val()))))/1.5+1;}}
|
17
|
+
if(parseInt(pageviews)>0){var bandwidthIn=(parseInt(pagesize)/300)*(parseInt(Math.sqrt(pageviews))/10)}else{var bandwidthIn=0;}
|
18
|
+
var ebsStorage=ebsStorageIO/5;var s3Space=ebsStorage/2;var s3In=ebsStorageIO/6;var s3Out=ebsStorageIO/20;var s3Puts=backupFreq*6;var s3Gets=backupFreq;var bandwidthOut=bandwidthIn*10;total+=ebsStorage*prices.ebsStorage;total+=ebsStorageIO*prices.ebsStorageIo;total+=s3Space*prices.s3Space;total+=s3In*prices.s3XferIn;total+=s3Out*prices.s3XferOut;total+=s3Puts*prices.s3Puts;total+=s3Gets*prices.s3Gets;total+=bandwidthIn*prices.bandwidthIn;total+=bandwidthOut*prices.bandwidthOut;var supportTier=0;var additionalSupport=0;if(totalComputeHours>2500&&totalComputeHours<=5000)supportTier=1;else if(totalComputeHours>5000&&totalComputeHours<=10000)supportTier=2;else if(totalComputeHours>10000&&totalComputeHours<=20000)supportTier=3;else if(totalComputeHours>20000&&totalComputeHours<=50000)supportTier=4;else if(totalComputeHours>50000){supportTier=4;additionalSupport=(totalComputeHours-50000)/10000;}
|
19
|
+
standardSupportTotal=pricing.standardSupportTier[supportTier];premiumSupportTotal=pricing.premiumSupportTier[supportTier];}
|
20
|
+
if(total<pricing.planMin){standardSupportTotal=pricing.standardSupportTier[0];total=pricing.planMin;$('#total p').html('*monthly<br/>minimum')}else{$('#total p').html('');}
|
21
|
+
var selected_support=$("input[name='support_group']:checked").val();var supportTotal=0;if(pricing.totalServers>0){$('#standard_support_total').html(pricing.formatTotal(standardSupportTotal)+" Month");$('#premium_support_total').html(pricing.formatTotal(premiumSupportTotal)+" Month");if(selected_support=='standard'){supportTotal=standardSupportTotal}
|
22
|
+
else if(selected_support=='premium'){supportTotal=premiumSupportTotal}}else{$('#standard_support_total').html("—");$('#premium_support_total').html("—");}
|
23
|
+
$('#total #estimate').html(pricing.formatTotal(total+supportTotal));},formatTotal:function(strValue){strValue=strValue.toString().replace(/\$|\,/g,'');dblValue=parseFloat(strValue);blnSign=(dblValue==(dblValue=Math.abs(dblValue)));dblValue=Math.floor(dblValue*100+0.50000000001);intCents=dblValue%100;strCents=intCents.toString();dblValue=Math.floor(dblValue/100).toString();if(intCents<10)
|
24
|
+
strCents="0"+strCents;for(var i=0;i<Math.floor((dblValue.length-(1+i))/3);i++)
|
25
|
+
dblValue=dblValue.substring(0,dblValue.length-(4*i+3))+','+
|
26
|
+
dblValue.substring(dblValue.length-(4*i+3));return(((blnSign)?'':'-')+'$'+dblValue+'.'+strCents);},formatValue:function(strValue){strValue=strValue.toString().replace(/\$|\,/g,'');dblValue=parseFloat(strValue);blnSign=(dblValue==(dblValue=Math.abs(dblValue)));dblValue=Math.floor(dblValue*100);intCents=dblValue%100;strCents=intCents.toString();dblValue=Math.floor(dblValue/100).toString();for(var i=0;i<Math.floor((dblValue.length-(1+i))/3);i++){dblValue=dblValue.substring(0,dblValue.length-(4*i+3))+','+dblValue.substring(dblValue.length-(4*i+3));}
|
27
|
+
return(((blnSign)?'':'-')+dblValue);}}
|
28
|
+
var estimator={serverName:["Small","Medium","Large"],serverPrice:[0.11,0.200,0.420],computeHours:720,maxServers:20,priceAdj:1.075,select_default:function(){units=1;database=0;$('#dedicated_db').removeAttr('checked');estimator.update();},init:function(){$('#estimator input').change(function(){if($('#servers').val()>estimator.maxServers){units=estimator.maxServers;$('#servers').val(units);}else{units=$('#servers').val();}
|
29
|
+
if($('#dedicated_db:checked').val())database=1;else database=0;$('#configuration li').removeClass('selected');estimator.update();}),$('#servers').keydown(function(event){if(event.keyCode==46||event.keyCode==8||event.keyCode==9){}else{if((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)){}else{event.preventDefault();}}}),$('#shared').click(function(){units=1;database=0;$('#dedicated_db').removeAttr('checked');estimator.update(true);}),$('#dedicated').click(function(){units=1;database=1;$('#dedicated_db').attr('checked','checked');estimator.update(true);}),$('#cluster').click(function(){units=2;database=1;$('#dedicated_db').attr('checked','checked');estimator.update(true);}),$('#configuration li').click(function(){$(this).parent().children('li').removeClass("selected");$(this).addClass("selected");}),$('.preset').click(function(){$(this).addClass('selected');$('.custom').removeClass('selected');$('.examples').removeClass('selected');$('#configuration').removeClass('hidden');$('#examples').addClass('hidden');$('#customize').addClass('hidden');}),$('.custom').click(function(){$(this).addClass('selected');$('.preset').removeClass('selected');$('.examples').removeClass('selected');$('#configuration').addClass('hidden');$('#examples').addClass('hidden');$('#customize').removeClass('hidden');}),$('.examples').click(function(){$(this).addClass('selected');$('.preset').removeClass('selected');$('.custom').removeClass('selected');$('#configuration').addClass('hidden');$('#customize').addClass('hidden');$('#examples').removeClass('hidden');})},update_ui:function(){$('#servers').val(units);$('#small_server').attr('checked','checked');},update:function(preconfig){if(preconfig)estimator.update_ui();var serverSize=$("#server_size input[name='server_size']:checked").val();var serverCosts=(estimator.serverPrice[serverSize]*units)+(estimator.serverPrice[serverSize]*database);var monthlyCosts=serverCosts*estimator.computeHours;var total=monthlyCosts*estimator.priceAdj;$('#total').html(estimator.formatTotal(total));$('.detail_server_count').html(units);$('.detail_server_size').html(estimator.serverName[serverSize]);$('.detail_server_cost').html(estimator.serverPrice[serverSize]*100);$('.server_subtotal').html(estimator.formatTotal(estimator.serverPrice[serverSize]*units*estimator.computeHours));$('.db_server_count').html(database);$('.db_subtotal').html("+ "+estimator.formatTotal(estimator.serverPrice[serverSize]*database*estimator.computeHours));$('.priceAdj').html("+ "+estimator.formatTotal(monthlyCosts*(estimator.priceAdj-1)));if(database!=0){$('.has_db').html("+ 1 "+estimator.serverName[serverSize]+" dedicated database instance");}else{$('.has_db').html("");};},formatTotal:function(strValue){strValue=strValue.toString().replace(/\$|\,/g,'');dblValue=parseFloat(strValue);blnSign=(dblValue==(dblValue=Math.abs(dblValue)));dblValue=Math.floor(dblValue*100+0.50000000001);intCents=dblValue%100;strCents=intCents.toString();dblValue=Math.floor(dblValue/100).toString();if(intCents<10)
|
30
|
+
strCents="0"+strCents;for(var i=0;i<Math.floor((dblValue.length-(1+i))/3);i++)
|
31
|
+
dblValue=dblValue.substring(0,dblValue.length-(4*i+3))+','+
|
32
|
+
dblValue.substring(dblValue.length-(4*i+3));return(((blnSign)?'':'-')+'$'+dblValue+'.'+strCents);}};
|