bootstrap-component-helper 0.2.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE +22 -0
- data/README.md +39 -0
- data/Rakefile +14 -0
- data/app/helpers/bootstrap/base_helper.rb +60 -0
- data/app/helpers/bootstrap/component_helper.rb +570 -0
- data/app/helpers/bootstrap/image_helper.rb +38 -0
- data/app/helpers/bootstrap/tab_helper.rb +107 -0
- data/app/helpers/bootstrap/table_helper.rb +203 -0
- data/app/helpers/bootstrap/typography_helper.rb +109 -0
- data/lib/bootstrap-component-helper.rb +10 -0
- data/lib/bootstrap/component_helper/engine.rb +11 -0
- data/lib/bootstrap/component_helper/version.rb +5 -0
- data/lib/generators/bootstrap/component_helper/install/install_generator.rb +40 -0
- data/lib/generators/bootstrap/component_helper/install/templates/index.css.scss +7 -0
- data/lib/generators/bootstrap/component_helper/install/templates/index.js +3 -0
- data/test/dummy/README.rdoc +261 -0
- data/test/dummy/Rakefile +7 -0
- data/test/dummy/app/assets/images/favicon.ico +0 -0
- data/test/dummy/app/assets/javascripts/application.js +17 -0
- data/test/dummy/app/assets/javascripts/bootstrap_component_helper/index.js +3 -0
- data/test/dummy/app/assets/javascripts/holder.js +658 -0
- data/test/dummy/app/assets/javascripts/prettify.js +376 -0
- data/test/dummy/app/assets/stylesheets/application.css +156 -0
- data/test/dummy/app/assets/stylesheets/bootstrap_component_helper/index.css.scss +7 -0
- data/test/dummy/app/assets/stylesheets/prettify.css +55 -0
- data/test/dummy/app/controllers/application_controller.rb +3 -0
- data/test/dummy/app/controllers/home_controller.rb +5 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/models/order.rb +2 -0
- data/test/dummy/app/views/home/_flash.html.erb +43 -0
- data/test/dummy/app/views/home/_image.html.erb +64 -0
- data/test/dummy/app/views/home/_list.html.erb +106 -0
- data/test/dummy/app/views/home/_modal.html.erb +230 -0
- data/test/dummy/app/views/home/_navbar.html.erb +34 -0
- data/test/dummy/app/views/home/_progressbar.html.erb +47 -0
- data/test/dummy/app/views/home/_tab.html.erb +118 -0
- data/test/dummy/app/views/home/_table.html.erb +212 -0
- data/test/dummy/app/views/home/_thumbnails.html.erb +84 -0
- data/test/dummy/app/views/home/_typographic.html.erb +52 -0
- data/test/dummy/app/views/home/index.html.erb +108 -0
- data/test/dummy/app/views/layouts/application.html.erb +66 -0
- data/test/dummy/bin/bundle +3 -0
- data/test/dummy/bin/rails +4 -0
- data/test/dummy/bin/rake +4 -0
- data/test/dummy/config.ru +4 -0
- data/test/dummy/config/application.rb +17 -0
- data/test/dummy/config/boot.rb +10 -0
- data/test/dummy/config/database.yml +27 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +28 -0
- data/test/dummy/config/environments/production.rb +80 -0
- data/test/dummy/config/environments/test.rb +36 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/test/dummy/config/initializers/inflections.rb +15 -0
- data/test/dummy/config/initializers/mime_types.rb +5 -0
- data/test/dummy/config/initializers/secret_token.rb +7 -0
- data/test/dummy/config/initializers/session_store.rb +8 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.bootstrap.yml +18 -0
- data/test/dummy/config/locales/en.yml +14 -0
- data/test/dummy/config/routes.rb +7 -0
- data/test/dummy/db/development.sqlite3 +0 -0
- data/test/dummy/db/migrate/20131006012048_create_orders.rb +12 -0
- data/test/dummy/db/schema.rb +25 -0
- data/test/dummy/db/seeds.rb +3 -0
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/development.log +18302 -0
- data/test/dummy/log/test.log +1145 -0
- data/test/dummy/public/404.html +26 -0
- data/test/dummy/public/422.html +26 -0
- data/test/dummy/public/500.html +25 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/0bcc8f0683a417e2802dca2e2526013808c5c34c/application.css.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/0bcc8f0683a417e2802dca2e2526013808c5c34c/components.css.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_accordion.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_alerts.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_breadcrumbs.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_button-groups.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_buttons.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_carousel.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_close.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_code.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_component-animations.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_dropdowns.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_forms.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_grid.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_hero-unit.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_labels-badges.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_layouts.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_media.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_mixins.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_modals.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_navbar.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_navs.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_pager.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_pagination.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_popovers.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_progress-bars.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_reset.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_responsive-1200px-min.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_responsive-767px-max.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_responsive-768px-979px.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_responsive-navbar.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_responsive-utilities.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_scaffolding.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_sprites.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_tables.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_thumbnails.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_tooltip.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_type.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_utilities.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_variables.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/_wells.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/bootstrap.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/7eab2e6517a6682722eebb4a5df7152eb329b310/responsive.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/84409d58037c135b28739dd3324e312869e235c7/index.css.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/c4d7e8313a08850ac1c2652d326bf93cea20578b/bootstrap-responsive.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sass/c4d7e8313a08850ac1c2652d326bf93cea20578b/bootstrap.scssc +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/03dd2dfd114c5240ab978a5bce1565fd +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/07ce016699b0337b14f97412576ddf9b +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/1482cdaf91da4a3e74c2fee962e57266 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/14a3b97c693d6129681bb6c9e63e79b4 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/16033f0fe45a392c87dc5f38f59e29e2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/17fd81b14984c81c41a5c231cd905bcc +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/186b967c502a9346f6b379dfb06fe14f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/1dc9e3618cee425126b555221e90226f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/262f97b1f0dd574bfff7cc8ecbb9f72e +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/264e074302048cb000f909f2919a0c9a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/29c2f0fd8e3c5f4dcd1332efa4a0371d +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2a61f06ae5cf5f6f1d43645b9b219453 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2e18e960f308cca4a1fdb77359d01a6c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2eee36c2ad21295c7e21e18c150d874b +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/302cf2e7263ec807edde7ea7f3b65c03 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3c8c07d37685b45615255078c41e3ce0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3d2aeae465a641db34a3cea9ba300375 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3e27ccb3d43c940c257f6271a634069e +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3ed026ca41b91b839c4dee2c2cc51849 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/41dc3aa765e6d4c4a686f88efbd6c68e +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/41f5ea237dc91ead6f4231e2147f5404 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/46fc0f6e8d72a05f2eea42eaed662e5d +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/470718a7ca39bcb2f1dc6053ffc682c0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/4a3201209795b8621efba2e0ce121a6a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/4ed14f9f7b1d5af357ddef644208340e +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/516cdb0fc494c1a008f5630ee3f83ed9 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/52e41d2cb37819e3cbe438707c4693c0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/536039d2b9042f61449290e282854f4d +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/54857feec0db8fabd9e5bc2c6870cf5f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/54cc1257b927751b13f0369969e17440 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/61ad5207a209b9787578645a6950698a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/630cd0d8a55d825eaba0a90cda91122f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/698c4f478493aa93e94a2c32cdd5f1cc +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/69e06cba85ef043450b628947462887c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/6d1b20df06d073df2627c4df640473c2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/6fca826ec75b904f60239bb708e38805 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/700827acd727b6fc8361f454c68a5cd7 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/754683dc7fa0bebc9ff776512a463c80 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/76bde91ae4ac1605f8b2abe1dd436efa +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/779fd39741d5f4364f4453e6d9db3a8c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/7a7d275aba66d0cd4498b2a7d2cc1d33 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/7b28ddacb7b45a6b7022eb766e2f9c62 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/7ee5964945e32a33395fd4a8b52901f8 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/805a755d6887dd3f251ee8d671113a55 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/833fa0f8ca6eda2934d5875796ac0ddb +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/85f13ec6dfd4e1c1d6d4faf5579367e4 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8816657a272738b50d9f339f83602b2b +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8ab512c9b33ac90e699b73469d71f061 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8bd5ee2e9abbe312a72a1cec2ea714a7 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8d55d8baa9ba44e3a712be2608138977 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8d675d1f43c56b8b3fb27598f691101f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8f2292d2f2a219537aa2eff8577b38f5 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8fd90c230c6244605a4c7b4bbcf41a21 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/9689835f50540dff6e5d5107069dc71d +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/9c9f438defd3bed7797b13c64eea90c0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a19b51f4929c5dcbda2aa927080241c1 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a202a5609c41454fcc67a0317b10da90 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a5b779be5a68643653ca723bce23c62c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a899e19256a0845205636938010c6fe5 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ac722b83b79d24471fa10acb05d4f095 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ae0e5ab1590ad2f8651e7f29ab089d0f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/b56d14052881f9f2fd665749410513dc +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/b6ff3a15ed2b320aa100de615d6acaa0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ba7837a3356c8c0f9d2d4dddd2db4ee2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/bad2a2d10a1446e9b1eebb24bb7976ad +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/bcca522c6302f184f12fe0e8a7d7e71a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/c13fc73ceafa45876a901b3e775b83ae +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/c72afec6ec61c0d8e5e664998b2d6dd5 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d1ca5d34c1109f4451c3f675fd522bed +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d1e7f297ee2aaac3167da0b6b6575b49 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d66f7358aa43217d389251a399669d37 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d8d6bcff066ae30f590880ff044badf2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d90eaeee0ba225714c425461bbfa529d +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d9d7f35a4e51c382aed08175c1dd6292 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/db5ddc82768b144533c161a80bdeee2d +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/dbb0a1624b85d0f9d4eaec08c03b8797 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/dc4f2c66b13e09c13320f6f21bb7ec6a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/dc664a988f31db3737b14c54d193732b +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/dd7a16eba4646a5a23bb7e5f906abbd3 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e030a7845a28abd00581260c4e8afdcd +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e256294192259b5603b8dc971d9d6a11 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e66f24418617ac4a7ee71d67f7545ce3 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e69c8095136c028e535371ef3123cbd1 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ec8a4c9e797155e9996a35bb7f7d7673 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f88b0e4100827602fa8c4f78b5e7dab3 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f8d0320de120c037ea5d3943c8b76d0c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/fde3d3c8658f07dd5aef16cc104c05c9 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ff8ea5d6d7296abe74b47835195461a1 +0 -0
- data/test/test_helper.rb +15 -0
- data/test/unit/helpers/bootstrap_component_helper_test.rb +92 -0
- data/test/unit/helpers/bootstrap_image_helper_test.rb +37 -0
- data/test/unit/helpers/bootstrap_tab_helper_test.rb +28 -0
- data/test/unit/helpers/bootstrap_typography_helper_test.rb +16 -0
- metadata +549 -0
@@ -0,0 +1,34 @@
|
|
1
|
+
<section id="navbar">
|
2
|
+
<div class="page-header">
|
3
|
+
<h1>Navbar
|
4
|
+
<small>bootstrap navbar helper</small>
|
5
|
+
</h1>
|
6
|
+
</div>
|
7
|
+
|
8
|
+
<p>Navbar helpers wraps the bootstrap navbar component.</p>
|
9
|
+
|
10
|
+
<h3>Navbar with brand and nav and divider</h3>
|
11
|
+
|
12
|
+
<div class="bs-docs-example">
|
13
|
+
<%= navbar(style: 'position: relative') do %>
|
14
|
+
<%= link_to 'Title', 'javascript:;', class: 'brand' %>
|
15
|
+
<%= nav do |n|
|
16
|
+
n.add link_to('nav1', 'javascript:;'), class: 'active'
|
17
|
+
n.add link_to('nav2', 'javascript:;')
|
18
|
+
n.add class: 'divider-vertical'
|
19
|
+
n.add link_to('nav3', 'javascript:;')
|
20
|
+
end %>
|
21
|
+
<% end %>
|
22
|
+
</div>
|
23
|
+
|
24
|
+
|
25
|
+
<pre class="prettyprint linenums lang-haml">
|
26
|
+
= navbar do
|
27
|
+
= link_to 'Title', 'javascript:;', class: 'brand'
|
28
|
+
= nav do |n|
|
29
|
+
- n.add link_to('nav1', 'javascript:;'), class: 'active'
|
30
|
+
- n.add link_to('nav2', 'javascript:;')
|
31
|
+
- n.add class: 'divider-vertical'
|
32
|
+
- n.add link_to('nav3', 'javascript:;')
|
33
|
+
</pre>
|
34
|
+
</section>
|
@@ -0,0 +1,47 @@
|
|
1
|
+
<section id="progressbar">
|
2
|
+
<div class="page-header">
|
3
|
+
<h1>Progress Bar
|
4
|
+
<small>bootstrap progress bar helper</small>
|
5
|
+
</h1>
|
6
|
+
</div>
|
7
|
+
|
8
|
+
<p>Progress bar helpers wraps bootstrap progress bar component.</p>
|
9
|
+
|
10
|
+
<h3>Non stacked bar</h3>
|
11
|
+
|
12
|
+
<div class="bs-docs-example">
|
13
|
+
<%= pg(percentage: 25, content: 'Done: 25%') %>
|
14
|
+
<%= pg(percentage: 25, content: 'Done: 25%', striped: true) %>
|
15
|
+
<%= pg(percentage: 25, content: 'Done: 25%', type: :success, striped: true, active: true) %>
|
16
|
+
<%= pg(percentage: 25, content: 'Done: 25%', type: :warning, in_table: true) %>
|
17
|
+
<%= pg(percentage: 25, content: 'Done: 25%', type: :danger, in_table: true) %>
|
18
|
+
<%= pg(in_table: true, percentage: 25, content: 'Done: 25%', type: :info) %>
|
19
|
+
</div>
|
20
|
+
|
21
|
+
|
22
|
+
<pre class="prettyprint linenums lang-haml">
|
23
|
+
= pg(percentage: 25, content: 'Done: 25%')
|
24
|
+
= pg(striped: true, percentage: 25, content: 'Done: 25%')
|
25
|
+
= pg(active: true, striped: true, percentage: 25, content: 'Done: 25%', type: :success)
|
26
|
+
= pg(in_table: true, percentage: 25, content: 'Done: 25%', type: :warning)
|
27
|
+
= pg(in_table: true, percentage: 25, content: 'Done: 25%', type: :danger)
|
28
|
+
= pg(in_table: true, percentage: 25, content: 'Done: 25%', type: :info)
|
29
|
+
</pre>
|
30
|
+
|
31
|
+
<h3>Stacked bar</h3>
|
32
|
+
|
33
|
+
<div class="bs-docs-example">
|
34
|
+
<%= pg(striped: true, active: true) do %>
|
35
|
+
<%= pb(percentage: 25, type: :success) %>
|
36
|
+
<%= pb(percentage: 25, content: 'Done: 25%', type: :warning) %>
|
37
|
+
<% end %>
|
38
|
+
</div>
|
39
|
+
|
40
|
+
|
41
|
+
<pre class="prettyprint linenums lang-haml">
|
42
|
+
= pg(striped: true, active: true) do
|
43
|
+
= pb(percentage: 25, type: :success)
|
44
|
+
= pb(percentage: 25, content: 'Done: 25%', type: :warning)
|
45
|
+
</pre>
|
46
|
+
|
47
|
+
</section>
|
@@ -0,0 +1,118 @@
|
|
1
|
+
<section id="tab">
|
2
|
+
<div class="page-header">
|
3
|
+
<h1>Tab
|
4
|
+
<small>bootstrap tab helper</small>
|
5
|
+
</h1>
|
6
|
+
</div>
|
7
|
+
|
8
|
+
<p>Tab helper will generate a tabs or a pills component in bootstrap way.</p>
|
9
|
+
|
10
|
+
<h3>Default Tab</h3>
|
11
|
+
|
12
|
+
<div class="bs-docs-example">
|
13
|
+
<%= tabs do |t| %>
|
14
|
+
<% t.tab('tab1') do %>
|
15
|
+
I'm tab #1.
|
16
|
+
<% end %>
|
17
|
+
<% t.tab('tab2') do %>
|
18
|
+
I'm tab #2.
|
19
|
+
<% end %>
|
20
|
+
<% t.tab('tab3') do %>
|
21
|
+
I'm tab #3.
|
22
|
+
<% end %>
|
23
|
+
<% end %>
|
24
|
+
</div>
|
25
|
+
|
26
|
+
|
27
|
+
<pre class="prettyprint linenums lang-haml">
|
28
|
+
= tabs do |t|
|
29
|
+
- t.tab('tab1') do
|
30
|
+
I'm tab #1.
|
31
|
+
- t.tab('tab2') do
|
32
|
+
I'm tab #2.
|
33
|
+
- t.tab('tab3') do
|
34
|
+
I'm tab #3.
|
35
|
+
</pre>
|
36
|
+
|
37
|
+
<h3>Tab with options</h3>
|
38
|
+
|
39
|
+
<div class="bs-docs-example">
|
40
|
+
<%= tabs(id: 'tabs_10', position: 'below') do |t| %>
|
41
|
+
<% t.tab('tab1', disabled: true, clickable: false) do %>
|
42
|
+
I'm tab #1.
|
43
|
+
<% end %>
|
44
|
+
<% t.tab('tab2') do %>
|
45
|
+
I'm tab #2.
|
46
|
+
<% end %>
|
47
|
+
<% t.tab('tab3') do %>
|
48
|
+
I'm tab #3.
|
49
|
+
<% end %>
|
50
|
+
<% end %>
|
51
|
+
</div>
|
52
|
+
|
53
|
+
|
54
|
+
<pre class="prettyprint linenums lang-haml">
|
55
|
+
= tabs(id: 'tabs_10', position: 'below') do |t|
|
56
|
+
- t.tab('tab1', disabled: true, clickable: false) do
|
57
|
+
I'm tab #1.
|
58
|
+
- t.tab('tab2') do
|
59
|
+
I'm tab #2.
|
60
|
+
- t.tab('tab3') do
|
61
|
+
I'm tab #3.
|
62
|
+
</pre>
|
63
|
+
|
64
|
+
<h3>Stacked Tab</h3>
|
65
|
+
|
66
|
+
<div class="bs-docs-example">
|
67
|
+
<%= tabs(id: 'tabs_20', stacked: true, class: 'span3', content_options: {class: 'span5'}) do |t| %>
|
68
|
+
<% t.tab('tab1', disabled: true, clickable: false) do %>
|
69
|
+
I'm tab #1.
|
70
|
+
<% end %>
|
71
|
+
<% t.tab('tab2') do %>
|
72
|
+
I'm tab #2.
|
73
|
+
<% end %>
|
74
|
+
<% t.tab('tab3') do %>
|
75
|
+
I'm tab #3.
|
76
|
+
<% end %>
|
77
|
+
<% end %>
|
78
|
+
</div>
|
79
|
+
|
80
|
+
|
81
|
+
<pre class="prettyprint linenums lang-haml">
|
82
|
+
= tabs(id: 'tabs_20', stacked: true, class: 'span3', content_options: {class: 'span5'}) do |t|
|
83
|
+
- t.tab('tab1', disabled: true, clickable: false) do
|
84
|
+
I'm tab #1.
|
85
|
+
- t.tab('tab2') do
|
86
|
+
I'm tab #2.
|
87
|
+
- t.tab('tab3') do
|
88
|
+
I'm tab #3.
|
89
|
+
</pre>
|
90
|
+
|
91
|
+
<h3>Default Pill</h3>
|
92
|
+
|
93
|
+
<div class="bs-docs-example">
|
94
|
+
<%= tabs(type: 'pills', id: 'tab_30') do |t| %>
|
95
|
+
<% t.tab('tab1') do %>
|
96
|
+
I'm tab #1.
|
97
|
+
<% end %>
|
98
|
+
<% t.tab('tab2') do %>
|
99
|
+
I'm tab #2.
|
100
|
+
<% end %>
|
101
|
+
<% t.tab('tab3') do %>
|
102
|
+
I'm tab #3.
|
103
|
+
<% end %>
|
104
|
+
<% end %>
|
105
|
+
</div>
|
106
|
+
|
107
|
+
|
108
|
+
<pre class="prettyprint linenums lang-haml">
|
109
|
+
= tabs(style: 'pill', id: 'tab_30') do |t|
|
110
|
+
- t.tab('tab1') do
|
111
|
+
I'm tab #1.
|
112
|
+
- t.tab('tab2') do
|
113
|
+
I'm tab #2.
|
114
|
+
- t.tab('tab3') do
|
115
|
+
I'm tab #3.
|
116
|
+
</pre>
|
117
|
+
|
118
|
+
</section>
|
@@ -0,0 +1,212 @@
|
|
1
|
+
<section id="table">
|
2
|
+
<div class="page-header">
|
3
|
+
<h1>Table
|
4
|
+
<small>bootstrap table helper</small>
|
5
|
+
</h1>
|
6
|
+
</div>
|
7
|
+
|
8
|
+
<p>Table helper wraps bootstrap table. It combines objects from the controller and table.</p>
|
9
|
+
<p>It has multiple options</p>
|
10
|
+
|
11
|
+
<table class="table table-hover table-bordered">
|
12
|
+
<thead>
|
13
|
+
<tr>
|
14
|
+
<th class="span3">Option</th>
|
15
|
+
<th class="span9">Description</th>
|
16
|
+
</tr>
|
17
|
+
</thead>
|
18
|
+
<tbody>
|
19
|
+
<tr>
|
20
|
+
<td>type</td>
|
21
|
+
<td>It's a string splitted by space which represents bootstrap table type such as
|
22
|
+
hover, bordered, stripped. For example: 'hover fluid', 'bordered condensed'</td>
|
23
|
+
</tr>
|
24
|
+
<tr>
|
25
|
+
<td>collection</td>
|
26
|
+
<td>An object array or an ActiveRecord relation. Used to generate rows repeatly</td>
|
27
|
+
</tr>
|
28
|
+
<tr>
|
29
|
+
<td>caption</td>
|
30
|
+
<td>Table's caption</td>
|
31
|
+
</tr>
|
32
|
+
<tr>
|
33
|
+
<td>caption_options</td>
|
34
|
+
<td>Options can be accepted by caption tag</td>
|
35
|
+
</tr>
|
36
|
+
<tr>
|
37
|
+
<td>show_header</td>
|
38
|
+
<td>True or false, whether to show the thead of the table</td>
|
39
|
+
</tr>
|
40
|
+
<tr>
|
41
|
+
<td>default_row_options</td>
|
42
|
+
<td>Default row options that would be applied to all rows default</td>
|
43
|
+
</tr>
|
44
|
+
<tr>
|
45
|
+
<td></td>
|
46
|
+
<td>Other options can be accepted by table tag</td>
|
47
|
+
</tr>
|
48
|
+
</tbody>
|
49
|
+
</table>
|
50
|
+
|
51
|
+
<h3>Fluid table</h3>
|
52
|
+
<p>Generate a table with fluid layout, pass a collection, you can specify the method
|
53
|
+
should be called by the object in a column or use a code block.</p>
|
54
|
+
|
55
|
+
<div class="bs-docs-example">
|
56
|
+
<%= table(collection: @orders, type: 'hover fluid') do |t| %>
|
57
|
+
<% t.column(width: 2, method: :order_number, align: 'center') %>
|
58
|
+
<% t.column(width: 2, method: :order_date) { |order| order.order_date.strftime("%d-%m-%Y") } %>
|
59
|
+
<% t.column(width: 2, method: :customer_name) %>
|
60
|
+
<% t.column(width: 2, method: :status) %>
|
61
|
+
<% t.column(width: 4, header_options: { text: 'Actions' }, align: 'center') do %>
|
62
|
+
<%= link_to 'show', '#table' %> |
|
63
|
+
<%= link_to 'edit', '#table' %> |
|
64
|
+
<%= link_to 'destroy', '#table', confirm: 'sure?' %>
|
65
|
+
<% end %>
|
66
|
+
<% end %>
|
67
|
+
</div>
|
68
|
+
|
69
|
+
|
70
|
+
<pre class="prettyprint linenums lang-haml">
|
71
|
+
= table(collection: @orders, type: 'hover fluid') do |t|
|
72
|
+
- t.column(width: 2, method: :order_number, align: 'center')
|
73
|
+
- t.column(width: 2, method: :order_date) { |order| order.order_date.strftime("%d-%m-%Y") }
|
74
|
+
- t.column(width: 2, method: :customer_name)
|
75
|
+
- t.column(width: 2, method: :status)
|
76
|
+
- t.column(width: 4, header_options: { text: 'Actions' }, align: 'center') do
|
77
|
+
= link_to 'show', '#table'
|
78
|
+
|
|
79
|
+
= link_to 'edit', '#table'
|
80
|
+
|
|
81
|
+
= link_to 'destroy', '#table', confirm: 'sure?'
|
82
|
+
</pre>
|
83
|
+
|
84
|
+
<h3>Fixed table</h3>
|
85
|
+
<p>The default table is a non-fluid table.</p>
|
86
|
+
|
87
|
+
<div class="bs-docs-example">
|
88
|
+
<%= table(collection: @orders) do |t| %>
|
89
|
+
<% t.column(width: 2, method: :order_number, align: 'center') %>
|
90
|
+
<% t.column(width: 2, method: :order_date) { |order| order.order_date.strftime("%d-%m-%Y") } %>
|
91
|
+
<% t.column(width: 2, method: :customer_name) %>
|
92
|
+
<% t.column(width: 2, method: :status) %>
|
93
|
+
<% t.column(width: 4, header_options: { text: 'Actions' }, align: 'center') do %>
|
94
|
+
<%= link_to 'show', '#table' %> |
|
95
|
+
<%= link_to 'edit', '#table' %> |
|
96
|
+
<%= link_to 'destroy', '#table', confirm: 'sure?' %>
|
97
|
+
<% end %>
|
98
|
+
<% end %>
|
99
|
+
</div>
|
100
|
+
|
101
|
+
|
102
|
+
<pre class="prettyprint linenums lang-haml">
|
103
|
+
= table(collection: @orders) do |t|
|
104
|
+
- t.column(width: 2, method: :order_number, align: 'center')
|
105
|
+
- t.column(width: 2, method: :order_date) { |order| order.order_date.strftime("%d-%m-%Y") }
|
106
|
+
- t.column(width: 2, method: :customer_name)
|
107
|
+
- t.column(width: 2, method: :status)
|
108
|
+
- t.column(width: 4, header_options: { text: 'Actions' }, align: 'center') do
|
109
|
+
= link_to 'show', '#table'
|
110
|
+
|
|
111
|
+
= link_to 'edit', '#table'
|
112
|
+
|
|
113
|
+
= link_to 'destroy', '#table', confirm: 'sure?'
|
114
|
+
</pre>
|
115
|
+
|
116
|
+
<h3>Table with options</h3>
|
117
|
+
|
118
|
+
<div class="bs-docs-example">
|
119
|
+
<%= table(collection: @orders,
|
120
|
+
type: 'fluid striped bordered condensed',
|
121
|
+
caption: 'Orders',
|
122
|
+
caption_options: { style: 'color: red; font-size: 16px;' },
|
123
|
+
default_row_options: { style: 'background-color: #999;' }) do |t| %>
|
124
|
+
<% t.column(align: 'center', width: 2, method: :order_number) %>
|
125
|
+
<% t.column(header_options: { text: 'Date' }, width: 2, align: 'center') { |order| order.order_date.strftime('%d-%m-%Y') } %>
|
126
|
+
<% t.column(width: 2, method: :customer_name) %>
|
127
|
+
<% t.column(align: 'center', width: 2, method: :status) %>
|
128
|
+
<% t.column(align: 'center', width: 4, header_options: { text: 'Actions' }) do %>
|
129
|
+
<%= link_to 'show', '#table' %> |
|
130
|
+
<%= link_to 'edit', '#table' %> |
|
131
|
+
<%= link_to 'destroy', '#table', confirm: 'sure?' %>
|
132
|
+
<% end %>
|
133
|
+
<% end %>
|
134
|
+
</div>
|
135
|
+
|
136
|
+
|
137
|
+
<pre class="prettyprint linenums lang-haml">
|
138
|
+
= table(collection: @orders,
|
139
|
+
type: 'fluid striped bordered condensed',
|
140
|
+
caption: 'Orders',
|
141
|
+
caption_options: { style: 'color: red; font-size: 16px;' },
|
142
|
+
default_row_options: { style: 'background-color: #999;' }) do |t|
|
143
|
+
- t.column(align: 'center', width: 2, method: :order_number)
|
144
|
+
- t.column(header_options: { text: 'Date' }, width: 2, align: 'center') { |order| order.order_date.strftime('%d-%m-%Y') }
|
145
|
+
- t.column(width: 2, method: :customer_name)
|
146
|
+
- t.column(align: 'center', width: 2, method: :status)
|
147
|
+
- t.column(align: 'center', width: 4, header_options: { text: 'Actions' }) do
|
148
|
+
= link_to 'show', '#table'
|
149
|
+
|
|
150
|
+
= link_to 'edit', '#table'
|
151
|
+
|
|
152
|
+
= link_to 'destroy', '#table', confirm: 'sure?'
|
153
|
+
|
154
|
+
</pre>
|
155
|
+
|
156
|
+
<h3>Table with complex header</h3>
|
157
|
+
|
158
|
+
<div class="bs-docs-example">
|
159
|
+
<%= table(collection: @orders,
|
160
|
+
type: "hover fluid bordered") do |t| %>
|
161
|
+
<% t.header_row do |r|
|
162
|
+
r.header(colspan: 2, align: 'center') { "Order, as to #{Date.today}" }
|
163
|
+
r.header(text: 'Customer', width: 3, rowspan: 2)
|
164
|
+
r.header(text: 'Status', width: 1, rowspan: 2, align: 'center')
|
165
|
+
r.header(text: 'Actions', width: 3, colspan: 3, align: 'center')
|
166
|
+
end %>
|
167
|
+
|
168
|
+
<% t.header_row do |r|
|
169
|
+
r.header(text: 'Number', width: 2, align: 'center')
|
170
|
+
r.header(text: 'Date', width: 3, align: 'center')
|
171
|
+
r.header(text: 'show', width: 1, align: 'center')
|
172
|
+
r.header(text: 'edit', width: 1, align: 'center')
|
173
|
+
r.header(text: 'destroy', width: 1, align: 'center')
|
174
|
+
end %>
|
175
|
+
|
176
|
+
<% t.column(align: 'center', method: :order_number) %>
|
177
|
+
<% t.column(align: 'center') { |order| order.order_date.strftime('%d-%m-%Y') } %>
|
178
|
+
<% t.column(method: :customer_name) %>
|
179
|
+
<% t.column(align: 'center', method: :status) %>
|
180
|
+
<% t.column(align: 'center') { link_to 'show', '#table' } %>
|
181
|
+
<% t.column(align: 'center') { link_to 'edit', '#table' } %>
|
182
|
+
<% t.column(align: 'center') { link_to 'destroy', '#table', confirm: 'sure?' } %>
|
183
|
+
<% end %>
|
184
|
+
</div>
|
185
|
+
|
186
|
+
|
187
|
+
<pre class="prettyprint linenums lang-haml">
|
188
|
+
= table(collection: @orders,
|
189
|
+
type: "hover fluid bordered") do |t|
|
190
|
+
- t.header_row do |r|
|
191
|
+
- r.header(colspan: 2, align: 'center') { "Order, as to #{Date.today}" }
|
192
|
+
- r.header(text: 'Customer', width: 3, rowspan: 2)
|
193
|
+
- r.header(text: 'Status', width: 1, rowspan: 2, align: 'center')
|
194
|
+
- r.header(text: 'Actions', width: 3, colspan: 3, align: 'center')
|
195
|
+
|
196
|
+
- t.header_row do |r|
|
197
|
+
- r.header(text: 'Number', width: 2, align: 'center')
|
198
|
+
- r.header(text: 'Date', width: 3, align: 'center')
|
199
|
+
- r.header(text: 'show', width: 1, align: 'center')
|
200
|
+
- r.header(text: 'edit', width: 1, align: 'center')
|
201
|
+
- r.header(text: 'destroy', width: 1, align: 'center')
|
202
|
+
|
203
|
+
- t.column(align: 'center', method: :order_number)
|
204
|
+
- t.column(align: 'center') { |order| order.order_date.strftime('%d-%m-%Y') }
|
205
|
+
- t.column(method: :customer_name)
|
206
|
+
- t.column(align: 'center', method: :status)
|
207
|
+
- t.column(align: 'center') { link_to 'show', '#table' }
|
208
|
+
- t.column(align: 'center') { link_to 'edit', '#table' }
|
209
|
+
- t.column(align: 'center') { link_to 'destroy', '#table', confirm: 'sure?' }
|
210
|
+
</pre>
|
211
|
+
|
212
|
+
</section>
|
@@ -0,0 +1,84 @@
|
|
1
|
+
<section id="thumbnails">
|
2
|
+
<div class="page-header">
|
3
|
+
<h1>Thumbnails
|
4
|
+
<small>bootstrap thumbnails helper</small>
|
5
|
+
</h1>
|
6
|
+
</div>
|
7
|
+
|
8
|
+
<p>Thumbnails helpers wraps bootstrap thumbnails component.</p>
|
9
|
+
|
10
|
+
<h3>Thumbnails</h3>
|
11
|
+
|
12
|
+
<div class="bs-docs-example">
|
13
|
+
<%= tns do %>
|
14
|
+
<%= th(3) do %>
|
15
|
+
<%= tn do %>
|
16
|
+
<%= image_tag 'holder.js/300x200' %>
|
17
|
+
<h3>Title</h3>
|
18
|
+
<p>Description</p>
|
19
|
+
<% end %>
|
20
|
+
<% end %>
|
21
|
+
<%= th(3) do %>
|
22
|
+
<%= tn do %>
|
23
|
+
<%= image_tag 'holder.js/300x200' %>
|
24
|
+
<h3>Title</h3>
|
25
|
+
<p>Description</p>
|
26
|
+
<% end %>
|
27
|
+
<% end %>
|
28
|
+
<%= th(3) do %>
|
29
|
+
<%= tn do %>
|
30
|
+
<%= image_tag 'holder.js/300x200' %>
|
31
|
+
<h3>Title</h3>
|
32
|
+
<p>Description</p>
|
33
|
+
<% end %>
|
34
|
+
<% end %>
|
35
|
+
<%= th(6) do %>
|
36
|
+
<%= tn do %>
|
37
|
+
<%= image_tag 'holder.js/600x200' %>
|
38
|
+
<h3>Title</h3>
|
39
|
+
<p>Description</p>
|
40
|
+
<% end %>
|
41
|
+
<% end %>
|
42
|
+
<%= th(6) do %>
|
43
|
+
<%= tn do %>
|
44
|
+
<%= image_tag 'holder.js/600x200' %>
|
45
|
+
<h3>Title</h3>
|
46
|
+
<p>Description</p>
|
47
|
+
<% end %>
|
48
|
+
<% end %>
|
49
|
+
|
50
|
+
|
51
|
+
<% end %>
|
52
|
+
</div>
|
53
|
+
|
54
|
+
|
55
|
+
<pre class="prettyprint linenums lang-haml">
|
56
|
+
= tns do
|
57
|
+
= th(3) do
|
58
|
+
= tn do
|
59
|
+
= image_tag 'holder.js/300x200'
|
60
|
+
%h3 Title
|
61
|
+
%p Description
|
62
|
+
= th(3) do
|
63
|
+
= tn do
|
64
|
+
= image_tag 'holder.js/300x200'
|
65
|
+
%h3 Title
|
66
|
+
%p Description
|
67
|
+
= th(3) do
|
68
|
+
= tn do
|
69
|
+
= image_tag 'holder.js/300x200'
|
70
|
+
%h3 Title
|
71
|
+
%p Description
|
72
|
+
= th(6) do
|
73
|
+
= tn do
|
74
|
+
= image_tag 'holder.js/600x200'
|
75
|
+
%h3 Title
|
76
|
+
%p Description
|
77
|
+
= th(6) do
|
78
|
+
= tn do
|
79
|
+
= image_tag 'holder.js/600x200'
|
80
|
+
%h3 Title
|
81
|
+
%p Description
|
82
|
+
</pre>
|
83
|
+
|
84
|
+
</section>
|