archangel 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.codeclimate.yml +17 -0
- data/.editorconfig +19 -0
- data/.eslintignore +6 -0
- data/.eslintrc.json +40 -0
- data/.github/ISSUE_TEMPLATE.md +23 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +18 -0
- data/.gitignore +22 -0
- data/.hound.yml +21 -0
- data/.mdlrc +2 -0
- data/.reek +35 -0
- data/.rspec +4 -0
- data/.rubocop.yml +28 -0
- data/.rubocop_disabled.yml +2 -0
- data/.rubocop_enabled.yml +2 -0
- data/.rubocop_todo.yml +7 -0
- data/.scss-lint.yml +22 -0
- data/.travis.yml +16 -0
- data/.yardopts +10 -0
- data/CODE_OF_CONDUCT.md +43 -0
- data/CONTRIBUTING.md +150 -0
- data/Gemfile +36 -0
- data/MIT-LICENSE +21 -0
- data/README.md +129 -0
- data/Rakefile +27 -0
- data/app/assets/config/archangel_manifest.js +14 -0
- data/app/assets/images/archangel/fallback/asset.png +0 -0
- data/app/assets/images/archangel/fallback/avatar.png +0 -0
- data/app/assets/images/archangel/fallback/default.png +0 -0
- data/app/assets/images/archangel/fallback/favicon.ico +0 -0
- data/app/assets/images/archangel/fallback/large_avatar.png +0 -0
- data/app/assets/images/archangel/fallback/large_logo.png +0 -0
- data/app/assets/images/archangel/fallback/logo.png +0 -0
- data/app/assets/images/archangel/fallback/medium_avatar.png +0 -0
- data/app/assets/images/archangel/fallback/medium_logo.png +0 -0
- data/app/assets/images/archangel/fallback/small_asset.png +0 -0
- data/app/assets/images/archangel/fallback/small_avatar.png +0 -0
- data/app/assets/images/archangel/fallback/small_logo.png +0 -0
- data/app/assets/images/archangel/fallback/tiny_asset.png +0 -0
- data/app/assets/images/archangel/fallback/tiny_avatar.png +0 -0
- data/app/assets/images/archangel/fallback/tiny_logo.png +0 -0
- data/app/assets/javascripts/archangel/input/datetime_picker.js +46 -0
- data/app/assets/javascripts/archangel/input/meta_keywords.js +22 -0
- data/app/assets/javascripts/archangel/input/parent/collection.js +0 -0
- data/app/assets/javascripts/archangel/input/parent/field.js +0 -0
- data/app/assets/javascripts/archangel/input/parent/page.js +0 -0
- data/app/assets/javascripts/archangel/input/wysiwyg.js.erb +51 -0
- data/app/assets/javascripts/archangel/object/flash.js +49 -0
- data/app/assets/javascripts/archangel/object/routes/auth.js +22 -0
- data/app/assets/javascripts/archangel/object/routes/backend.js +103 -0
- data/app/assets/javascripts/archangel/object/routes/frontend.js +24 -0
- data/app/assets/javascripts/archangel/object/routes.js.erb +84 -0
- data/app/assets/javascripts/archangel/object/translate/datetime_picker.js.erb +26 -0
- data/app/assets/javascripts/archangel/object/translate/sortable.js.erb +10 -0
- data/app/assets/javascripts/archangel/object/translate.js +8 -0
- data/app/assets/javascripts/archangel/object/url.js +24 -0
- data/app/assets/javascripts/archangel/object.js +25 -0
- data/app/assets/javascripts/archangel/sortable.js +72 -0
- data/app/assets/stylesheets/archangel/.keep +0 -0
- data/app/controllers/archangel/application_controller.rb +177 -0
- data/app/controllers/archangel/auth/registrations_controller.rb +22 -0
- data/app/controllers/archangel/auth_controller.rb +20 -0
- data/app/controllers/archangel/backend/assets_controller.rb +338 -0
- data/app/controllers/archangel/backend/collections_controller.rb +257 -0
- data/app/controllers/archangel/backend/dashboards_controller.rb +27 -0
- data/app/controllers/archangel/backend/entries_controller.rb +344 -0
- data/app/controllers/archangel/backend/pages_controller.rb +299 -0
- data/app/controllers/archangel/backend/profiles_controller.rb +211 -0
- data/app/controllers/archangel/backend/sites_controller.rb +175 -0
- data/app/controllers/archangel/backend/templates_controller.rb +270 -0
- data/app/controllers/archangel/backend/users_controller.rb +366 -0
- data/app/controllers/archangel/backend/widgets_controller.rb +264 -0
- data/app/controllers/archangel/backend_controller.rb +21 -0
- data/app/controllers/archangel/frontend/pages_controller.rb +158 -0
- data/app/controllers/archangel/frontend_controller.rb +10 -0
- data/app/controllers/concerns/archangel/actionable_concern.rb +152 -0
- data/app/controllers/concerns/archangel/authenticatable_concern.rb +14 -0
- data/app/controllers/concerns/archangel/authorizable_concern.rb +14 -0
- data/app/controllers/concerns/archangel/paginatable_concern.rb +34 -0
- data/app/controllers/concerns/archangel/seoable_concern.rb +40 -0
- data/app/controllers/concerns/archangel/skip_authorizable_concern.rb +14 -0
- data/app/controllers/concerns/archangel/themable_concern.rb +27 -0
- data/app/helpers/archangel/application_helper.rb +34 -0
- data/app/helpers/archangel/auth_helper.rb +9 -0
- data/app/helpers/archangel/backend/assets_helper.rb +14 -0
- data/app/helpers/archangel/backend/collections_helper.rb +14 -0
- data/app/helpers/archangel/backend/dashboards_helper.rb +14 -0
- data/app/helpers/archangel/backend/entries_helper.rb +14 -0
- data/app/helpers/archangel/backend/pages_helper.rb +14 -0
- data/app/helpers/archangel/backend/sites_helper.rb +14 -0
- data/app/helpers/archangel/backend/templates_helper.rb +14 -0
- data/app/helpers/archangel/backend/users_helper.rb +14 -0
- data/app/helpers/archangel/backend/widgets_helper.rb +14 -0
- data/app/helpers/archangel/backend_helper.rb +9 -0
- data/app/helpers/archangel/flash_helper.rb +22 -0
- data/app/helpers/archangel/frontend/pages_helper.rb +14 -0
- data/app/helpers/archangel/frontend_helper.rb +9 -0
- data/app/inputs/archangel/date_picker_input.rb +27 -0
- data/app/inputs/archangel/date_time_picker_input.rb +27 -0
- data/app/inputs/archangel/field_classification_input.rb +32 -0
- data/app/inputs/archangel/language_input.rb +31 -0
- data/app/inputs/archangel/meta_keywords_input.rb +27 -0
- data/app/inputs/archangel/role_input.rb +31 -0
- data/app/inputs/archangel/theme_input.rb +29 -0
- data/app/inputs/archangel/time_picker_input.rb +27 -0
- data/app/inputs/archangel/wysiwyg_input.rb +15 -0
- data/app/jobs/archangel/application_job.rb +9 -0
- data/app/mailers/archangel/application_mailer.rb +12 -0
- data/app/models/archangel/application_record.rb +10 -0
- data/app/models/archangel/asset.rb +42 -0
- data/app/models/archangel/collection.rb +51 -0
- data/app/models/archangel/entry.rb +22 -0
- data/app/models/archangel/field.rb +30 -0
- data/app/models/archangel/page.rb +123 -0
- data/app/models/archangel/site.rb +54 -0
- data/app/models/archangel/template.rb +37 -0
- data/app/models/archangel/user.rb +62 -0
- data/app/models/archangel/widget.rb +62 -0
- data/app/policies/archangel/application_policy.rb +142 -0
- data/app/policies/archangel/asset_policy.rb +17 -0
- data/app/policies/archangel/collection_policy.rb +9 -0
- data/app/policies/archangel/entry_policy.rb +17 -0
- data/app/policies/archangel/page_policy.rb +9 -0
- data/app/policies/archangel/site_policy.rb +27 -0
- data/app/policies/archangel/template_policy.rb +9 -0
- data/app/policies/archangel/user_policy.rb +9 -0
- data/app/policies/archangel/widget_policy.rb +9 -0
- data/app/services/archangel/render_service.rb +98 -0
- data/app/services/archangel/template_render_service.rb +40 -0
- data/app/themes/default/assets/javascripts/default/auth/.keep +0 -0
- data/app/themes/default/assets/javascripts/default/auth.js +18 -0
- data/app/themes/default/assets/javascripts/default/backend/core.js +7 -0
- data/app/themes/default/assets/javascripts/default/backend.js +50 -0
- data/app/themes/default/assets/javascripts/default/common/cards.js +28 -0
- data/app/themes/default/assets/javascripts/default/common/flash.js +48 -0
- data/app/themes/default/assets/javascripts/default/common/navigation.js +30 -0
- data/app/themes/default/assets/javascripts/default/common/sidebar.js +114 -0
- data/app/themes/default/assets/javascripts/default/frontend/.keep +0 -0
- data/app/themes/default/assets/javascripts/default/frontend.js +18 -0
- data/app/themes/default/assets/stylesheets/default/auth/core.scss +15 -0
- data/app/themes/default/assets/stylesheets/default/auth.css +13 -0
- data/app/themes/default/assets/stylesheets/default/backend/core.scss +22 -0
- data/app/themes/default/assets/stylesheets/default/backend.css +13 -0
- data/app/themes/default/assets/stylesheets/default/common/_bootstrap.scss +49 -0
- data/app/themes/default/assets/stylesheets/default/common/_selectize.scss +299 -0
- data/app/themes/default/assets/stylesheets/default/common/_variables.scss +82 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_animate.scss +27 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_aside.scss +67 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_avatars.scss +42 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_badge.scss +3 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_breadcrumb-menu.scss +36 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_breadcrumb.scss +4 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_buttons.scss +408 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_callout.scss +58 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_card.scss +199 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_charts.scss +9 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_dropdown-menu-right.scss +8 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_dropdown.scss +70 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_footer.scss +9 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_forms.scss +4 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_grid.scss +15 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_input-group.scss +5 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_layout.scss +390 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_loading.scss +128 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_mixins.scss +1 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_mobile.scss +0 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_modal.scss +12 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_nav.scss +39 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_navbar.scss +122 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_others.scss +4 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_progress.scss +15 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_rtl.scss +287 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_sidebar.scss +462 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_switches.scss +286 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_tables.scss +20 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_temp.scss +39 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_typography.scss +36 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_utilities.scss +3 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_variables.scss +208 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/_widgets.scss +251 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/mixins/_all.scss +117 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/utilities/_background.scss +20 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/utilities/_borders.scss +17 -0
- data/app/themes/default/assets/stylesheets/default/common/bootstrap/utilities/_display.scss +14 -0
- data/app/themes/default/assets/stylesheets/default/frontend/core.scss +15 -0
- data/app/themes/default/assets/stylesheets/default/frontend.css +13 -0
- data/app/themes/default/views/layouts/auth.html.erb +35 -0
- data/app/themes/default/views/layouts/backend/_footer.html.erb +7 -0
- data/app/themes/default/views/layouts/backend/_header.html.erb +31 -0
- data/app/themes/default/views/layouts/backend/_sidebar.html.erb +53 -0
- data/app/themes/default/views/layouts/backend.html.erb +37 -0
- data/app/themes/default/views/layouts/frontend.liquid +22 -0
- data/app/uploaders/archangel/application_uploader.rb +65 -0
- data/app/uploaders/archangel/asset_uploader.rb +52 -0
- data/app/uploaders/archangel/avatar_uploader.rb +44 -0
- data/app/uploaders/archangel/favicon_uploader.rb +38 -0
- data/app/uploaders/archangel/logo_uploader.rb +44 -0
- data/app/views/archangel/backend/assets/_buttons.html.erb +18 -0
- data/app/views/archangel/backend/assets/_form.html.erb +27 -0
- data/app/views/archangel/backend/assets/edit.html.erb +21 -0
- data/app/views/archangel/backend/assets/index.html.erb +64 -0
- data/app/views/archangel/backend/assets/new.html.erb +21 -0
- data/app/views/archangel/backend/assets/show.html.erb +53 -0
- data/app/views/archangel/backend/collections/_buttons.html.erb +20 -0
- data/app/views/archangel/backend/collections/_field_fields.html.erb +9 -0
- data/app/views/archangel/backend/collections/_form.html.erb +24 -0
- data/app/views/archangel/backend/collections/edit.html.erb +21 -0
- data/app/views/archangel/backend/collections/index.html.erb +60 -0
- data/app/views/archangel/backend/collections/new.html.erb +21 -0
- data/app/views/archangel/backend/collections/show.html.erb +44 -0
- data/app/views/archangel/backend/dashboards/_buttons.html.erb +3 -0
- data/app/views/archangel/backend/dashboards/show.html.erb +23 -0
- data/app/views/archangel/backend/entries/_buttons.html.erb +20 -0
- data/app/views/archangel/backend/entries/_form.html.erb +25 -0
- data/app/views/archangel/backend/entries/edit.html.erb +21 -0
- data/app/views/archangel/backend/entries/index.html.erb +68 -0
- data/app/views/archangel/backend/entries/new.html.erb +21 -0
- data/app/views/archangel/backend/entries/show.html.erb +28 -0
- data/app/views/archangel/backend/pages/_buttons.html.erb +18 -0
- data/app/views/archangel/backend/pages/_form.html.erb +19 -0
- data/app/views/archangel/backend/pages/edit.html.erb +21 -0
- data/app/views/archangel/backend/pages/index.html.erb +68 -0
- data/app/views/archangel/backend/pages/new.html.erb +21 -0
- data/app/views/archangel/backend/pages/show.html.erb +49 -0
- data/app/views/archangel/backend/profiles/_buttons.html.erb +9 -0
- data/app/views/archangel/backend/profiles/_form.html.erb +31 -0
- data/app/views/archangel/backend/profiles/edit.html.erb +21 -0
- data/app/views/archangel/backend/profiles/show.html.erb +36 -0
- data/app/views/archangel/backend/sites/_additional_colors.html.erb +49 -0
- data/app/views/archangel/backend/sites/_alerts.html.erb +130 -0
- data/app/views/archangel/backend/sites/_badge.html.erb +99 -0
- data/app/views/archangel/backend/sites/_button.html.erb +243 -0
- data/app/views/archangel/backend/sites/_buttons.html.erb +9 -0
- data/app/views/archangel/backend/sites/_buttons_group.html.erb +230 -0
- data/app/views/archangel/backend/sites/_cards.html.erb +441 -0
- data/app/views/archangel/backend/sites/_carousel.html.erb +159 -0
- data/app/views/archangel/backend/sites/_colors.html.erb +41 -0
- data/app/views/archangel/backend/sites/_display_headings.html.erb +41 -0
- data/app/views/archangel/backend/sites/_dl.html.erb +38 -0
- data/app/views/archangel/backend/sites/_dropdowns.html.erb +475 -0
- data/app/views/archangel/backend/sites/_form.html.erb +37 -0
- data/app/views/archangel/backend/sites/_forms.html.erb +1176 -0
- data/app/views/archangel/backend/sites/_grays.html.erb +21 -0
- data/app/views/archangel/backend/sites/_headings.html.erb +21 -0
- data/app/views/archangel/backend/sites/_inline_text.html.erb +45 -0
- data/app/views/archangel/backend/sites/_jumbotron.html.erb +45 -0
- data/app/views/archangel/backend/sites/_list_group.html.erb +254 -0
- data/app/views/archangel/backend/sites/_modals.html.erb +41 -0
- data/app/views/archangel/backend/sites/_navs.html.erb +389 -0
- data/app/views/archangel/backend/sites/_pagination.html.erb +160 -0
- data/app/views/archangel/backend/sites/_social_buttons.html.erb +746 -0
- data/app/views/archangel/backend/sites/_tables.html.erb +372 -0
- data/app/views/archangel/backend/sites/edit.html.erb +21 -0
- data/app/views/archangel/backend/sites/sample.html.erb +38 -0
- data/app/views/archangel/backend/sites/show.html.erb +48 -0
- data/app/views/archangel/backend/templates/_buttons.html.erb +18 -0
- data/app/views/archangel/backend/templates/_form.html.erb +14 -0
- data/app/views/archangel/backend/templates/edit.html.erb +21 -0
- data/app/views/archangel/backend/templates/index.html.erb +60 -0
- data/app/views/archangel/backend/templates/new.html.erb +21 -0
- data/app/views/archangel/backend/templates/show.html.erb +34 -0
- data/app/views/archangel/backend/users/_buttons.html.erb +18 -0
- data/app/views/archangel/backend/users/_form.html.erb +24 -0
- data/app/views/archangel/backend/users/edit.html.erb +21 -0
- data/app/views/archangel/backend/users/index.html.erb +62 -0
- data/app/views/archangel/backend/users/new.html.erb +21 -0
- data/app/views/archangel/backend/users/show.html.erb +36 -0
- data/app/views/archangel/backend/widgets/_buttons.html.erb +18 -0
- data/app/views/archangel/backend/widgets/_form.html.erb +14 -0
- data/app/views/archangel/backend/widgets/edit.html.erb +21 -0
- data/app/views/archangel/backend/widgets/index.html.erb +60 -0
- data/app/views/archangel/backend/widgets/new.html.erb +21 -0
- data/app/views/archangel/backend/widgets/show.html.erb +42 -0
- data/app/views/archangel/errors/error_401.html.erb +13 -0
- data/app/views/archangel/errors/error_401.json.erb +4 -0
- data/app/views/archangel/errors/error_404.html.erb +13 -0
- data/app/views/archangel/errors/error_404.json.erb +4 -0
- data/app/views/archangel/frontend/pages/show.json.jbuilder +9 -0
- data/app/views/archangel/shared/_auth_token.html.erb +8 -0
- data/app/views/archangel/shared/_flash_messages.html.erb +9 -0
- data/app/views/devise/confirmations/new.html.erb +18 -0
- data/app/views/devise/mailer/confirmation_instructions.html.erb +5 -0
- data/app/views/devise/mailer/email_changed.html.erb +7 -0
- data/app/views/devise/mailer/password_change.html.erb +3 -0
- data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
- data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
- data/app/views/devise/passwords/edit.html.erb +28 -0
- data/app/views/devise/passwords/new.html.erb +18 -0
- data/app/views/devise/registrations/edit.html.erb +45 -0
- data/app/views/devise/registrations/new.html.erb +41 -0
- data/app/views/devise/sessions/new.html.erb +28 -0
- data/app/views/devise/shared/_links.html.erb +41 -0
- data/app/views/devise/unlocks/new.html.erb +18 -0
- data/app/views/kaminari/_first_page.html.erb +11 -0
- data/app/views/kaminari/_gap.html.erb +8 -0
- data/app/views/kaminari/_last_page.html.erb +11 -0
- data/app/views/kaminari/_next_page.html.erb +11 -0
- data/app/views/kaminari/_page.html.erb +12 -0
- data/app/views/kaminari/_paginator.html.erb +25 -0
- data/app/views/kaminari/_prev_page.html.erb +11 -0
- data/archangel.gemspec +52 -0
- data/archangel.png +0 -0
- data/bin/rails +13 -0
- data/config/brakeman.yml +3 -0
- data/config/initializers/assets.rb +12 -0
- data/config/initializers/carrierwave.rb +14 -0
- data/config/initializers/devise.rb +341 -0
- data/config/initializers/kaminari.rb +13 -0
- data/config/initializers/liquid.rb +4 -0
- data/config/initializers/meta_tags.rb +31 -0
- data/config/initializers/simple_form.rb +177 -0
- data/config/initializers/simple_form_bootstrap.rb +177 -0
- data/config/locales/active_record.en.yml +80 -0
- data/config/locales/devise.en.yml +64 -0
- data/config/locales/devise_invitable.en.yml +31 -0
- data/config/locales/en.yml +109 -0
- data/config/locales/kaminari.en.yml +17 -0
- data/config/locales/responders.en.yml +12 -0
- data/config/locales/simple_form.en.yml +34 -0
- data/config/routes.rb +176 -0
- data/db/migrate/20171003191001_create_archangel_sites.rb +19 -0
- data/db/migrate/20171003210347_create_archangel_users.rb +68 -0
- data/db/migrate/20171005205520_create_archangel_templates.rb +18 -0
- data/db/migrate/20171005224054_create_archangel_pages.rb +30 -0
- data/db/migrate/20171006175939_create_archangel_widgets.rb +20 -0
- data/db/migrate/20171006184844_create_archangel_assets.rb +18 -0
- data/db/migrate/20171006194044_create_archangel_collections.rb +17 -0
- data/db/migrate/20171006194855_create_archangel_fields.rb +23 -0
- data/db/migrate/20171006195023_create_archangel_entries.rb +18 -0
- data/db/seeds.rb +65 -0
- data/docs/Developers.md +3 -0
- data/docs/ExtensionDevelopers.md +3 -0
- data/docs/ExtensionIdeas.md +132 -0
- data/docs/Release.md +25 -0
- data/docs/ThemeDevelopers.md +3 -0
- data/lib/archangel/application_responder.rb +15 -0
- data/lib/archangel/config.rb +21 -0
- data/lib/archangel/constants/language.rb +13 -0
- data/lib/archangel/constants/role.rb +13 -0
- data/lib/archangel/constants/theme.rb +18 -0
- data/lib/archangel/engine.rb +70 -0
- data/lib/archangel/i18n.rb +40 -0
- data/lib/archangel/liquid/drop.rb +119 -0
- data/lib/archangel/liquid/drops/page_drop.rb +33 -0
- data/lib/archangel/liquid/drops/site_drop.rb +30 -0
- data/lib/archangel/liquid/filters/link_to_filter.rb +35 -0
- data/lib/archangel/liquid/tags/application_tag.rb +17 -0
- data/lib/archangel/liquid/tags/asset_tag.rb +146 -0
- data/lib/archangel/liquid/tags/collection_tag.rb +135 -0
- data/lib/archangel/liquid/tags/collectionfor_tag.rb +91 -0
- data/lib/archangel/liquid/tags/csrf_meta_tags_tag.rb +28 -0
- data/lib/archangel/liquid/tags/gist_tag.rb +102 -0
- data/lib/archangel/liquid/tags/locale_tag.rb +27 -0
- data/lib/archangel/liquid/tags/meta_tags_tag.rb +30 -0
- data/lib/archangel/liquid/tags/text_direction_tag.rb +28 -0
- data/lib/archangel/liquid/tags/theme_javascript_tag.rb +30 -0
- data/lib/archangel/liquid/tags/theme_stylesheet_tag.rb +30 -0
- data/lib/archangel/liquid/tags/vimeo_tag.rb +125 -0
- data/lib/archangel/liquid/tags/widget_tag.rb +91 -0
- data/lib/archangel/liquid/tags/youtube_tag.rb +138 -0
- data/lib/archangel/liquid_view.rb +92 -0
- data/lib/archangel/testing_support/context/view_controller_context.rb +55 -0
- data/lib/archangel/testing_support/factories/archangel_assets.rb +20 -0
- data/lib/archangel/testing_support/factories/archangel_collections.rb +23 -0
- data/lib/archangel/testing_support/factories/archangel_entries.rb +17 -0
- data/lib/archangel/testing_support/factories/archangel_fields.rb +20 -0
- data/lib/archangel/testing_support/factories/archangel_pages.rb +39 -0
- data/lib/archangel/testing_support/factories/archangel_sites.rb +22 -0
- data/lib/archangel/testing_support/factories/archangel_templates.rb +22 -0
- data/lib/archangel/testing_support/factories/archangel_users.rb +53 -0
- data/lib/archangel/testing_support/factories/archangel_widgets.rb +19 -0
- data/lib/archangel/testing_support/fixtures/favicon.png +0 -0
- data/lib/archangel/testing_support/fixtures/image.gif +0 -0
- data/lib/archangel/testing_support/fixtures/stylesheet.css +3 -0
- data/lib/archangel/testing_support/helpers/authorization_helpers.rb +58 -0
- data/lib/archangel/testing_support/helpers/controller_helpers.rb +20 -0
- data/lib/archangel/testing_support/helpers/form_helpers.rb +18 -0
- data/lib/archangel/testing_support/helpers/routing_helpers.rb +22 -0
- data/lib/archangel/testing_support/matchers/match_stdout.rb +37 -0
- data/lib/archangel/testing_support/matchers/pundit.rb +17 -0
- data/lib/archangel/testing_support/rake/dummy_rake.rb +63 -0
- data/lib/archangel/testing_support/shared_contexts/rake.rb +26 -0
- data/lib/archangel/testing_support/support/capybara.rb +9 -0
- data/lib/archangel/testing_support/support/carrierwave.rb +13 -0
- data/lib/archangel/testing_support/support/controller.rb +11 -0
- data/lib/archangel/testing_support/support/database_cleaner.rb +22 -0
- data/lib/archangel/testing_support/support/devise.rb +7 -0
- data/lib/archangel/testing_support/support/factory_bot.rb +17 -0
- data/lib/archangel/testing_support/support/inputs.rb +24 -0
- data/lib/archangel/testing_support/support/liquid_filters.rb +23 -0
- data/lib/archangel/testing_support/support/liquid_tags.rb +23 -0
- data/lib/archangel/testing_support/support/shoulda.rb +12 -0
- data/lib/archangel/testing_support/support/verify_partial_doubles.rb +21 -0
- data/lib/archangel/testing_support/support.rb +26 -0
- data/lib/archangel/theme/themable_controller.rb +90 -0
- data/lib/archangel/version.rb +16 -0
- data/lib/archangel.rb +93 -0
- data/lib/generators/archangel/dummy/dummy_generator.rb +148 -0
- data/lib/generators/archangel/dummy/templates/config/database.yml +48 -0
- data/lib/generators/archangel/install/install_generator.rb +202 -0
- data/lib/generators/archangel/install/templates/.env.sample +4 -0
- data/lib/generators/archangel/install/templates/config/archangel.yml +54 -0
- data/lib/generators/archangel/install/templates/config/initializers/carrierwave.rb +15 -0
- data/lib/generators/archangel/install/templates/config/initializers/devise.rb +17 -0
- data/lib/generators/archangel/install/templates/vendor/assets/javascripts/archangel/auth.js +3 -0
- data/lib/generators/archangel/install/templates/vendor/assets/javascripts/archangel/backend.js +3 -0
- data/lib/generators/archangel/install/templates/vendor/assets/javascripts/archangel/frontend.js +3 -0
- data/lib/generators/archangel/install/templates/vendor/assets/stylesheets/archangel/auth.css +5 -0
- data/lib/generators/archangel/install/templates/vendor/assets/stylesheets/archangel/backend.css +5 -0
- data/lib/generators/archangel/install/templates/vendor/assets/stylesheets/archangel/frontend.css +5 -0
- data/lib/tasks/archangel/version_task.rake +8 -0
- data/lib/templates/erb/scaffold/_form.html.erb +13 -0
- data/package.json +33 -0
- data/spec/controllers/archangel/application_controller_spec.rb +183 -0
- data/spec/controllers/archangel/auth/registrations_controller_spec.rb +10 -0
- data/spec/controllers/archangel/auth_controller_spec.rb +8 -0
- data/spec/controllers/archangel/backend/assets_controller_spec.rb +237 -0
- data/spec/controllers/archangel/backend/collections_controller_spec.rb +252 -0
- data/spec/controllers/archangel/backend/dashboards_controller_spec.rb +27 -0
- data/spec/controllers/archangel/backend/entries_controller_spec.rb +273 -0
- data/spec/controllers/archangel/backend/pages_controller_spec.rb +204 -0
- data/spec/controllers/archangel/backend/profiles_controller_spec.rb +115 -0
- data/spec/controllers/archangel/backend/sites_controller_spec.rb +137 -0
- data/spec/controllers/archangel/backend/templates_controller_spec.rb +190 -0
- data/spec/controllers/archangel/backend/users_controller_spec.rb +181 -0
- data/spec/controllers/archangel/backend/widgets_controller_spec.rb +190 -0
- data/spec/controllers/archangel/backend_controller_spec.rb +8 -0
- data/spec/controllers/archangel/frontend/pages_controller_spec.rb +54 -0
- data/spec/controllers/archangel/frontend_controller_spec.rb +8 -0
- data/spec/features/auth/log_in_spec.rb +96 -0
- data/spec/features/auth/log_out_spec.rb +18 -0
- data/spec/features/auth/registration_spec.rb +27 -0
- data/spec/features/backend/duplicate_page_slugs_spec.rb +41 -0
- data/spec/features/frontend/drop_variables_spec.rb +125 -0
- data/spec/features/frontend/homepage_redirect_spec.rb +15 -0
- data/spec/helpers/archangel/application_helper_spec.rb +30 -0
- data/spec/helpers/archangel/auth_helper_spec.rb +8 -0
- data/spec/helpers/archangel/backend/assets_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/collections_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/dashboards_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/entries_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/pages_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/sites_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/templates_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/users_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend/widgets_helper_spec.rb +10 -0
- data/spec/helpers/archangel/backend_helper_spec.rb +8 -0
- data/spec/helpers/archangel/flash_helper_spec.rb +29 -0
- data/spec/helpers/archangel/frontend/pages_helper_spec.rb +10 -0
- data/spec/helpers/archangel/frontend_helper_spec.rb +8 -0
- data/spec/inputs/archangel/date_picker_input_spec.rb +15 -0
- data/spec/inputs/archangel/date_time_picker_input_spec.rb +15 -0
- data/spec/inputs/archangel/field_classification_input_spec.rb +19 -0
- data/spec/inputs/archangel/language_input_spec.rb +17 -0
- data/spec/inputs/archangel/meta_keywords_input_spec.rb +13 -0
- data/spec/inputs/archangel/role_input_spec.rb +18 -0
- data/spec/inputs/archangel/theme_input_spec.rb +17 -0
- data/spec/inputs/archangel/time_picker_input_spec.rb +15 -0
- data/spec/inputs/archangel/wysiwyg_input_spec.rb +15 -0
- data/spec/jobs/archangel/application_job_spec.rb +8 -0
- data/spec/lib/archangel/liquid/filters/link_to_filter_spec.rb +63 -0
- data/spec/lib/archangel/liquid/tags/application_tag_spec.rb +12 -0
- data/spec/lib/archangel/liquid/tags/asset_tag_spec.rb +90 -0
- data/spec/lib/archangel/liquid/tags/collection_tag_spec.rb +105 -0
- data/spec/lib/archangel/liquid/tags/collectionfor_tag_spec.rb +164 -0
- data/spec/lib/archangel/liquid/tags/csrf_meta_tags_tag_spec.rb +33 -0
- data/spec/lib/archangel/liquid/tags/gist_tag_spec.rb +42 -0
- data/spec/lib/archangel/liquid/tags/locale_tag_spec.rb +22 -0
- data/spec/lib/archangel/liquid/tags/meta_tags_tag_spec.rb +24 -0
- data/spec/lib/archangel/liquid/tags/text_direction_tag_spec.rb +32 -0
- data/spec/lib/archangel/liquid/tags/theme_javascript_tag_spec.rb +25 -0
- data/spec/lib/archangel/liquid/tags/theme_stylesheet_tag_spec.rb +27 -0
- data/spec/lib/archangel/liquid/tags/vimeo_tag_spec.rb +39 -0
- data/spec/lib/archangel/liquid/tags/widget_tag_spec.rb +59 -0
- data/spec/lib/archangel/liquid/tags/youtube_tag_spec.rb +39 -0
- data/spec/lib/tasks/archangel/version_task_spec.rb +13 -0
- data/spec/mailers/archangel/application_job_spec.rb +8 -0
- data/spec/models/archangel/asset_spec.rb +32 -0
- data/spec/models/archangel/collection_spec.rb +25 -0
- data/spec/models/archangel/entry_spec.rb +20 -0
- data/spec/models/archangel/field_spec.rb +29 -0
- data/spec/models/archangel/page_spec.rb +94 -0
- data/spec/models/archangel/site_spec.rb +11 -0
- data/spec/models/archangel/template_spec.rb +24 -0
- data/spec/models/archangel/user_spec.rb +66 -0
- data/spec/models/archangel/widget_spec.rb +29 -0
- data/spec/policies/archangel/application_policy_spec.rb +8 -0
- data/spec/policies/archangel/asset_policy_spec.rb +22 -0
- data/spec/policies/archangel/collection_policy_spec.rb +20 -0
- data/spec/policies/archangel/entries_policy_spec.rb +22 -0
- data/spec/policies/archangel/page_policy_spec.rb +20 -0
- data/spec/policies/archangel/site_policy_spec.rb +30 -0
- data/spec/policies/archangel/template_policy_spec.rb +20 -0
- data/spec/policies/archangel/user_policy_spec.rb +20 -0
- data/spec/policies/archangel/widget_policy_spec.rb +20 -0
- data/spec/rails_helper.rb +46 -0
- data/spec/services/archangel/render_service_spec.rb +37 -0
- data/spec/services/archangel/template_render_service_spec.rb +42 -0
- data/spec/spec_helper.rb +23 -0
- data/spec/support/coveralls.rb +5 -0
- data/spec/uploaders/archangel/application_uploader_spec.rb +15 -0
- data/spec/uploaders/archangel/asset_uploader_spec.rb +71 -0
- data/spec/uploaders/archangel/avatar_uploader_spec.rb +50 -0
- data/spec/uploaders/archangel/favicon_uploader_spec.rb +39 -0
- data/spec/uploaders/archangel/logo_uploader_spec.rb +50 -0
- data/vendor/assets/icons/trumbowyg/icons.svg +1 -0
- data/vendor/assets/javascripts/sortable/sortable.js +3 -0
- data/vendor/assets/javascripts/trumbowyg/plugins/allowtagsfrompaste/trumbowyg.allowtagsfrompaste.js +143 -0
- data/vendor/assets/javascripts/trumbowyg/plugins/base64/trumbowyg.base64.js +129 -0
- data/vendor/assets/javascripts/trumbowyg/plugins/cleanpaste/trumbowyg.cleanpaste.js +110 -0
- data/vendor/assets/javascripts/trumbowyg/plugins/colors/trumbowyg.colors.js +183 -0
- data/vendor/assets/javascripts/trumbowyg/plugins/noembed/trumbowyg.noembed.js +104 -0
- data/vendor/assets/javascripts/trumbowyg/plugins/upload/trumbowyg.upload.js +261 -0
- data/vendor/assets/javascripts/trumbowyg/trumbowyg.js +1765 -0
- data/vendor/assets/stylesheets/trumbowyg/_trumbowyg.scss +831 -0
- data/vendor/assets/stylesheets/trumbowyg/plugins/colors/_trumbowyg.colors.scss +38 -0
- metadata +1003 -0
|
@@ -0,0 +1,1176 @@
|
|
|
1
|
+
<div class="row">
|
|
2
|
+
<div class="col-sm-6">
|
|
3
|
+
<div class="card">
|
|
4
|
+
<div class="card-header">
|
|
5
|
+
<%= fa_icon("tint") %> Credit Card
|
|
6
|
+
|
|
7
|
+
<small>Form</small>
|
|
8
|
+
</div>
|
|
9
|
+
|
|
10
|
+
<div class="card-body">
|
|
11
|
+
<div class="row">
|
|
12
|
+
<div class="col-sm-12">
|
|
13
|
+
<div class="form-group">
|
|
14
|
+
<label for="name">Name</label>
|
|
15
|
+
<input class="form-control" id="name" placeholder="Enter your name" type="text">
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
|
|
20
|
+
<div class="row">
|
|
21
|
+
<div class="col-sm-12">
|
|
22
|
+
<div class="form-group">
|
|
23
|
+
<label for="ccnumber">Credit Card Number</label>
|
|
24
|
+
<input class="form-control" id="ccnumber" placeholder="0000 0000 0000 0000" type="text">
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
|
|
29
|
+
<div class="row">
|
|
30
|
+
<div class="form-group col-sm-4">
|
|
31
|
+
<label for="ccmonth">Month</label>
|
|
32
|
+
<select class="form-control" id="ccmonth">
|
|
33
|
+
<option>1</option>
|
|
34
|
+
<option>2</option>
|
|
35
|
+
<option>3</option>
|
|
36
|
+
<option>4</option>
|
|
37
|
+
<option>5</option>
|
|
38
|
+
<option>6</option>
|
|
39
|
+
<option>7</option>
|
|
40
|
+
<option>8</option>
|
|
41
|
+
<option>9</option>
|
|
42
|
+
<option>10</option>
|
|
43
|
+
<option>11</option>
|
|
44
|
+
<option>12</option>
|
|
45
|
+
</select>
|
|
46
|
+
</div>
|
|
47
|
+
|
|
48
|
+
<div class="form-group col-sm-4">
|
|
49
|
+
<label for="ccyear">Year</label>
|
|
50
|
+
<select class="form-control" id="ccyear">
|
|
51
|
+
<option>2014</option>
|
|
52
|
+
<option>2015</option>
|
|
53
|
+
<option>2016</option>
|
|
54
|
+
<option>2017</option>
|
|
55
|
+
<option>2018</option>
|
|
56
|
+
<option>2019</option>
|
|
57
|
+
<option>2020</option>
|
|
58
|
+
<option>2021</option>
|
|
59
|
+
<option>2022</option>
|
|
60
|
+
<option>2023</option>
|
|
61
|
+
<option>2024</option>
|
|
62
|
+
<option>2025</option>
|
|
63
|
+
</select>
|
|
64
|
+
</div>
|
|
65
|
+
|
|
66
|
+
<div class="col-sm-4">
|
|
67
|
+
<div class="form-group">
|
|
68
|
+
<label for="cvv">CVV/CVC</label>
|
|
69
|
+
<input class="form-control" id="cvv" placeholder="123" type="text">
|
|
70
|
+
</div>
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
</div>
|
|
74
|
+
</div>
|
|
75
|
+
</div>
|
|
76
|
+
|
|
77
|
+
<div class="col-sm-6">
|
|
78
|
+
<div class="card">
|
|
79
|
+
<div class="card-header">
|
|
80
|
+
<%= fa_icon("tint") %> Company
|
|
81
|
+
|
|
82
|
+
<small>Form</small>
|
|
83
|
+
</div>
|
|
84
|
+
|
|
85
|
+
<div class="card-body">
|
|
86
|
+
<div class="form-group">
|
|
87
|
+
<label for="company">Company</label>
|
|
88
|
+
<input class="form-control" id="company" placeholder="Enter your company name" type="text">
|
|
89
|
+
</div>
|
|
90
|
+
<div class="form-group">
|
|
91
|
+
<label for="vat">VAT</label>
|
|
92
|
+
<input class="form-control" id="vat" placeholder="PL1234567890" type="text">
|
|
93
|
+
</div>
|
|
94
|
+
<div class="form-group">
|
|
95
|
+
<label for="street">Street</label>
|
|
96
|
+
<input class="form-control" id="street" placeholder="Enter street name" type="text">
|
|
97
|
+
</div>
|
|
98
|
+
|
|
99
|
+
<div class="row">
|
|
100
|
+
<div class="form-group col-sm-8">
|
|
101
|
+
<label for="city">City</label>
|
|
102
|
+
<input class="form-control" id="city" placeholder="Enter your city" type="text">
|
|
103
|
+
</div>
|
|
104
|
+
<div class="form-group col-sm-4">
|
|
105
|
+
<label for="postal-code">Postal Code</label>
|
|
106
|
+
<input class="form-control" id="postal-code" placeholder="Postal Code" type="text">
|
|
107
|
+
</div>
|
|
108
|
+
</div>
|
|
109
|
+
|
|
110
|
+
<div class="form-group">
|
|
111
|
+
<label for="country">Country</label>
|
|
112
|
+
<input class="form-control" id="country" placeholder="Country name" type="text">
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
</div>
|
|
116
|
+
</div>
|
|
117
|
+
</div>
|
|
118
|
+
|
|
119
|
+
<div class="row">
|
|
120
|
+
<div class="col-md-6">
|
|
121
|
+
<div class="card">
|
|
122
|
+
<div class="card-header">
|
|
123
|
+
<%= fa_icon("tint") %> Basic Form
|
|
124
|
+
|
|
125
|
+
Elements
|
|
126
|
+
</div>
|
|
127
|
+
|
|
128
|
+
<div class="card-body">
|
|
129
|
+
<form action="" method="post" enctype="multipart/form-data" class="form-horizontal">
|
|
130
|
+
<div class="form-group row">
|
|
131
|
+
<label class="col-md-3 col-form-label">Static</label>
|
|
132
|
+
<div class="col-md-9">
|
|
133
|
+
<p class="form-control-static">Username</p>
|
|
134
|
+
</div>
|
|
135
|
+
</div>
|
|
136
|
+
<div class="form-group row">
|
|
137
|
+
<label class="col-md-3 col-form-label" for="text-input">Text Input</label>
|
|
138
|
+
<div class="col-md-9">
|
|
139
|
+
<input id="text-input" name="text-input" class="form-control" placeholder="Text" type="text">
|
|
140
|
+
<span class="help-block">This is a help text</span>
|
|
141
|
+
</div>
|
|
142
|
+
</div>
|
|
143
|
+
<div class="form-group row">
|
|
144
|
+
<label class="col-md-3 col-form-label" for="email-input">Email Input</label>
|
|
145
|
+
<div class="col-md-9">
|
|
146
|
+
<input id="email-input" name="email-input" class="form-control" placeholder="Enter Email" type="email">
|
|
147
|
+
<span class="help-block">Please enter your email</span>
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
<div class="form-group row">
|
|
151
|
+
<label class="col-md-3 col-form-label" for="password-input">Password</label>
|
|
152
|
+
<div class="col-md-9">
|
|
153
|
+
<input id="password-input" name="password-input" class="form-control" placeholder="Password" type="password">
|
|
154
|
+
<span class="help-block">Please enter a complex password</span>
|
|
155
|
+
</div>
|
|
156
|
+
</div>
|
|
157
|
+
<div class="form-group row">
|
|
158
|
+
<label class="col-md-3 col-form-label" for="disabled-input">Disabled Input</label>
|
|
159
|
+
<div class="col-md-9">
|
|
160
|
+
<input id="disabled-input" name="disabled-input" class="form-control" placeholder="Disabled" disabled="" type="text">
|
|
161
|
+
</div>
|
|
162
|
+
</div>
|
|
163
|
+
<div class="form-group row">
|
|
164
|
+
<label class="col-md-3 col-form-label" for="textarea-input">Textarea</label>
|
|
165
|
+
<div class="col-md-9">
|
|
166
|
+
<textarea id="textarea-input" name="textarea-input" rows="9" class="form-control" placeholder="Content.."></textarea>
|
|
167
|
+
</div>
|
|
168
|
+
</div>
|
|
169
|
+
<div class="form-group row">
|
|
170
|
+
<label class="col-md-3 col-form-label" for="select1">Select</label>
|
|
171
|
+
<div class="col-md-9">
|
|
172
|
+
<select id="select1" name="select1" class="form-control">
|
|
173
|
+
<option value="0">Please select</option>
|
|
174
|
+
<option value="1">Option #1</option>
|
|
175
|
+
<option value="2">Option #2</option>
|
|
176
|
+
<option value="3">Option #3</option>
|
|
177
|
+
</select>
|
|
178
|
+
</div>
|
|
179
|
+
</div>
|
|
180
|
+
<div class="form-group row">
|
|
181
|
+
<label class="col-md-3 col-form-label" for="select2">Select Large</label>
|
|
182
|
+
<div class="col-md-9">
|
|
183
|
+
<select id="select2" name="select2" class="form-control form-control-lg">
|
|
184
|
+
<option value="0">Please select</option>
|
|
185
|
+
<option value="1">Option #1</option>
|
|
186
|
+
<option value="2">Option #2</option>
|
|
187
|
+
<option value="3">Option #3</option>
|
|
188
|
+
</select>
|
|
189
|
+
</div>
|
|
190
|
+
</div>
|
|
191
|
+
<div class="form-group row">
|
|
192
|
+
<label class="col-md-3 col-form-label" for="select3">Select Small</label>
|
|
193
|
+
<div class="col-md-9">
|
|
194
|
+
<select id="select3" name="select3" class="form-control form-control-sm">
|
|
195
|
+
<option value="0">Please select</option>
|
|
196
|
+
<option value="1">Option #1</option>
|
|
197
|
+
<option value="2">Option #2</option>
|
|
198
|
+
<option value="3">Option #3</option>
|
|
199
|
+
</select>
|
|
200
|
+
</div>
|
|
201
|
+
</div>
|
|
202
|
+
<div class="form-group row">
|
|
203
|
+
<label class="col-md-3 col-form-label" for="disabledSelect">Disabled Select</label>
|
|
204
|
+
<div class="col-md-9">
|
|
205
|
+
<select id="disabledSelect" class="form-control" disabled="">
|
|
206
|
+
<option value="0">Please select</option>
|
|
207
|
+
<option value="1">Option #1</option>
|
|
208
|
+
<option value="2">Option #2</option>
|
|
209
|
+
<option value="3">Option #3</option>
|
|
210
|
+
</select>
|
|
211
|
+
</div>
|
|
212
|
+
</div>
|
|
213
|
+
<div class="form-group row">
|
|
214
|
+
<label class="col-md-3 col-form-label" for="multiple-select">Multiple select</label>
|
|
215
|
+
<div class="col-md-9">
|
|
216
|
+
<select id="multiple-select" name="multiple-select" class="form-control" size="5" multiple="">
|
|
217
|
+
<option value="1">Option #1</option>
|
|
218
|
+
<option value="2">Option #2</option>
|
|
219
|
+
<option value="3">Option #3</option>
|
|
220
|
+
<option value="4">Option #4</option>
|
|
221
|
+
<option value="5">Option #5</option>
|
|
222
|
+
<option value="6">Option #6</option>
|
|
223
|
+
<option value="7">Option #7</option>
|
|
224
|
+
<option value="8">Option #8</option>
|
|
225
|
+
<option value="9">Option #9</option>
|
|
226
|
+
<option value="10">Option #10</option>
|
|
227
|
+
</select>
|
|
228
|
+
</div>
|
|
229
|
+
</div>
|
|
230
|
+
<div class="form-group row">
|
|
231
|
+
<label class="col-md-3 col-form-label">Radios</label>
|
|
232
|
+
<div class="col-md-9 col-form-label">
|
|
233
|
+
<div class="form-check">
|
|
234
|
+
<input class="form-check-input" value="radio1" id="radio1" name="radios" type="radio">
|
|
235
|
+
<label class="form-check-label" for="radio1">
|
|
236
|
+
Option 1
|
|
237
|
+
</label>
|
|
238
|
+
</div>
|
|
239
|
+
<div class="form-check">
|
|
240
|
+
<input class="form-check-input" value="radio2" id="radio2" name="radios" type="radio">
|
|
241
|
+
<label class="form-check-label" for="radio2">
|
|
242
|
+
Option 2
|
|
243
|
+
</label>
|
|
244
|
+
</div>
|
|
245
|
+
<div class="form-check">
|
|
246
|
+
<input class="form-check-input" value="radio2" id="radio3" name="radios" type="radio">
|
|
247
|
+
<label class="form-check-label" for="radio3">
|
|
248
|
+
Option 3
|
|
249
|
+
</label>
|
|
250
|
+
</div>
|
|
251
|
+
</div>
|
|
252
|
+
</div>
|
|
253
|
+
<div class="form-group row">
|
|
254
|
+
<label class="col-md-3 col-form-label">Inline Radios</label>
|
|
255
|
+
<div class="col-md-9 col-form-label">
|
|
256
|
+
<div class="form-check form-check-inline mr-1">
|
|
257
|
+
<input class="form-check-input" id="inline-radio1" value="option1" name="inline-radios" type="radio">
|
|
258
|
+
<label class="form-check-label" for="inline-radio1">One</label>
|
|
259
|
+
</div>
|
|
260
|
+
<div class="form-check form-check-inline mr-1">
|
|
261
|
+
<input class="form-check-input" id="inline-radio2" value="option2" name="inline-radios" type="radio">
|
|
262
|
+
<label class="form-check-label" for="inline-radio2">Two</label>
|
|
263
|
+
</div>
|
|
264
|
+
<div class="form-check form-check-inline mr-1">
|
|
265
|
+
<input class="form-check-input" id="inline-radio3" value="option3" name="inline-radios" type="radio">
|
|
266
|
+
<label class="form-check-label" for="inline-radio3">Three</label>
|
|
267
|
+
</div>
|
|
268
|
+
</div>
|
|
269
|
+
</div>
|
|
270
|
+
<div class="form-group row">
|
|
271
|
+
<label class="col-md-3 col-form-label">Checkboxes</label>
|
|
272
|
+
<div class="col-md-9 col-form-label">
|
|
273
|
+
<div class="form-check checkbox">
|
|
274
|
+
<input class="form-check-input" value="" id="check1" type="checkbox">
|
|
275
|
+
<label class="form-check-label" for="check1">
|
|
276
|
+
Option 1
|
|
277
|
+
</label>
|
|
278
|
+
</div>
|
|
279
|
+
<div class="form-check checkbox">
|
|
280
|
+
<input class="form-check-input" value="" id="check2" type="checkbox">
|
|
281
|
+
<label class="form-check-label" for="check2">
|
|
282
|
+
Option 2
|
|
283
|
+
</label>
|
|
284
|
+
</div>
|
|
285
|
+
<div class="form-check checkbox">
|
|
286
|
+
<input class="form-check-input" value="" id="check3" type="checkbox">
|
|
287
|
+
<label class="form-check-label" for="check3">
|
|
288
|
+
Option 3
|
|
289
|
+
</label>
|
|
290
|
+
</div>
|
|
291
|
+
</div>
|
|
292
|
+
</div>
|
|
293
|
+
<div class="form-group row">
|
|
294
|
+
<label class="col-md-3 col-form-label">Inline Checkboxes</label>
|
|
295
|
+
<div class="col-md-9 col-form-label">
|
|
296
|
+
<div class="form-check form-check-inline mr-1">
|
|
297
|
+
<input class="form-check-input" id="inline-checkbox1" value="check1" type="checkbox">
|
|
298
|
+
<label class="form-check-label" for="inline-checkbox1">One</label>
|
|
299
|
+
</div>
|
|
300
|
+
<div class="form-check form-check-inline mr-1">
|
|
301
|
+
<input class="form-check-input" id="inline-checkbox2" value="check2" type="checkbox">
|
|
302
|
+
<label class="form-check-label" for="inline-checkbox2">Two</label>
|
|
303
|
+
</div>
|
|
304
|
+
<div class="form-check form-check-inline mr-1">
|
|
305
|
+
<input class="form-check-input" id="inline-checkbox3" value="check3" type="checkbox">
|
|
306
|
+
<label class="form-check-label" for="inline-checkbox3">Three</label>
|
|
307
|
+
</div>
|
|
308
|
+
</div>
|
|
309
|
+
</div>
|
|
310
|
+
<div class="form-group row">
|
|
311
|
+
<label class="col-md-3 col-form-label" for="file-input">File input</label>
|
|
312
|
+
<div class="col-md-9">
|
|
313
|
+
<input id="file-input" name="file-input" type="file">
|
|
314
|
+
</div>
|
|
315
|
+
</div>
|
|
316
|
+
<div class="form-group row">
|
|
317
|
+
<label class="col-md-3 col-form-label" for="file-multiple-input">Multiple File input</label>
|
|
318
|
+
<div class="col-md-9">
|
|
319
|
+
<input id="file-multiple-input" name="file-multiple-input" multiple="" type="file">
|
|
320
|
+
</div>
|
|
321
|
+
</div>
|
|
322
|
+
</form>
|
|
323
|
+
</div>
|
|
324
|
+
|
|
325
|
+
<div class="card-footer">
|
|
326
|
+
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
327
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
328
|
+
</div>
|
|
329
|
+
</div>
|
|
330
|
+
|
|
331
|
+
<div class="card">
|
|
332
|
+
<div class="card-header">
|
|
333
|
+
<%= fa_icon("tint") %> Inline
|
|
334
|
+
|
|
335
|
+
Form
|
|
336
|
+
</div>
|
|
337
|
+
|
|
338
|
+
<div class="card-body">
|
|
339
|
+
<form action="" method="post" class="form-inline">
|
|
340
|
+
<div class="form-group">
|
|
341
|
+
<label for="exampleInputName2">Name</label>
|
|
342
|
+
<input class="form-control" id="exampleInputName2" placeholder="Jane Doe" type="text">
|
|
343
|
+
</div>
|
|
344
|
+
<div class="form-group">
|
|
345
|
+
<label for="exampleInputEmail2">Email</label>
|
|
346
|
+
<input class="form-control" id="exampleInputEmail2" placeholder="jane.doe@example.com" type="email">
|
|
347
|
+
</div>
|
|
348
|
+
</form>
|
|
349
|
+
</div>
|
|
350
|
+
|
|
351
|
+
<div class="card-footer">
|
|
352
|
+
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
353
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
354
|
+
</div>
|
|
355
|
+
</div>
|
|
356
|
+
</div>
|
|
357
|
+
|
|
358
|
+
<div class="col-md-6">
|
|
359
|
+
<div class="card">
|
|
360
|
+
<div class="card-header">
|
|
361
|
+
<%= fa_icon("tint") %> Horizontal
|
|
362
|
+
|
|
363
|
+
Form
|
|
364
|
+
</div>
|
|
365
|
+
|
|
366
|
+
<div class="card-body">
|
|
367
|
+
<form action="" method="post" class="form-horizontal">
|
|
368
|
+
<div class="form-group row">
|
|
369
|
+
<label class="col-md-3 col-form-label" for="hf-email">Email</label>
|
|
370
|
+
<div class="col-md-9">
|
|
371
|
+
<input id="hf-email" name="hf-email" class="form-control" placeholder="Enter Email.." type="email">
|
|
372
|
+
<span class="help-block">Please enter your email</span>
|
|
373
|
+
</div>
|
|
374
|
+
</div>
|
|
375
|
+
|
|
376
|
+
<div class="form-group row">
|
|
377
|
+
<label class="col-md-3 col-form-label" for="hf-password">Password</label>
|
|
378
|
+
<div class="col-md-9">
|
|
379
|
+
<input id="hf-password" name="hf-password" class="form-control" placeholder="Enter Password.." type="password">
|
|
380
|
+
<span class="help-block">Please enter your password</span>
|
|
381
|
+
</div>
|
|
382
|
+
</div>
|
|
383
|
+
</form>
|
|
384
|
+
</div>
|
|
385
|
+
|
|
386
|
+
<div class="card-footer">
|
|
387
|
+
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
388
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
389
|
+
</div>
|
|
390
|
+
</div>
|
|
391
|
+
|
|
392
|
+
<div class="card">
|
|
393
|
+
<div class="card-header">
|
|
394
|
+
<%= fa_icon("tint") %> Normal
|
|
395
|
+
|
|
396
|
+
Form
|
|
397
|
+
</div>
|
|
398
|
+
|
|
399
|
+
<div class="card-body">
|
|
400
|
+
<form action="" method="post">
|
|
401
|
+
<div class="form-group">
|
|
402
|
+
<label for="nf-email">Email</label>
|
|
403
|
+
<input id="nf-email" name="nf-email" class="form-control" placeholder="Enter Email.." type="email">
|
|
404
|
+
<span class="help-block">Please enter your email</span>
|
|
405
|
+
</div>
|
|
406
|
+
|
|
407
|
+
<div class="form-group">
|
|
408
|
+
<label for="nf-password">Password</label>
|
|
409
|
+
<input id="nf-password" name="nf-password" class="form-control" placeholder="Enter Password.." type="password">
|
|
410
|
+
<span class="help-block">Please enter your password</span>
|
|
411
|
+
</div>
|
|
412
|
+
</form>
|
|
413
|
+
</div>
|
|
414
|
+
|
|
415
|
+
<div class="card-footer">
|
|
416
|
+
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
417
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
418
|
+
</div>
|
|
419
|
+
</div>
|
|
420
|
+
|
|
421
|
+
<div class="card">
|
|
422
|
+
<div class="card-header">
|
|
423
|
+
<%= fa_icon("tint") %> Input
|
|
424
|
+
|
|
425
|
+
Grid
|
|
426
|
+
</div>
|
|
427
|
+
|
|
428
|
+
<div class="card-body">
|
|
429
|
+
<form action="" method="post" class="form-horizontal">
|
|
430
|
+
<div class="form-group row">
|
|
431
|
+
<div class="col-sm-3">
|
|
432
|
+
<input class="form-control" placeholder=".col-sm-3" type="text">
|
|
433
|
+
</div>
|
|
434
|
+
</div>
|
|
435
|
+
<div class="form-group row">
|
|
436
|
+
<div class="col-sm-4">
|
|
437
|
+
<input class="form-control" placeholder=".col-sm-4" type="text">
|
|
438
|
+
</div>
|
|
439
|
+
</div>
|
|
440
|
+
<div class="form-group row">
|
|
441
|
+
<div class="col-sm-5">
|
|
442
|
+
<input class="form-control" placeholder=".col-sm-5" type="text">
|
|
443
|
+
</div>
|
|
444
|
+
</div>
|
|
445
|
+
<div class="form-group row">
|
|
446
|
+
<div class="col-sm-6">
|
|
447
|
+
<input class="form-control" placeholder=".col-sm-6" type="text">
|
|
448
|
+
</div>
|
|
449
|
+
</div>
|
|
450
|
+
<div class="form-group row">
|
|
451
|
+
<div class="col-sm-7">
|
|
452
|
+
<input class="form-control" placeholder=".col-sm-7" type="text">
|
|
453
|
+
</div>
|
|
454
|
+
</div>
|
|
455
|
+
<div class="form-group row">
|
|
456
|
+
<div class="col-sm-8">
|
|
457
|
+
<input class="form-control" placeholder=".col-sm-8" type="text">
|
|
458
|
+
</div>
|
|
459
|
+
</div>
|
|
460
|
+
<div class="form-group row">
|
|
461
|
+
<div class="col-sm-9">
|
|
462
|
+
<input class="form-control" placeholder=".col-sm-9" type="text">
|
|
463
|
+
</div>
|
|
464
|
+
</div>
|
|
465
|
+
<div class="form-group row">
|
|
466
|
+
<div class="col-sm-10">
|
|
467
|
+
<input class="form-control" placeholder=".col-sm-10" type="text">
|
|
468
|
+
</div>
|
|
469
|
+
</div>
|
|
470
|
+
<div class="form-group row">
|
|
471
|
+
<div class="col-sm-11">
|
|
472
|
+
<input class="form-control" placeholder=".col-sm-11" type="text">
|
|
473
|
+
</div>
|
|
474
|
+
</div>
|
|
475
|
+
<div class="form-group row">
|
|
476
|
+
<div class="col-sm-12">
|
|
477
|
+
<input class="form-control" placeholder=".col-sm-12" type="text">
|
|
478
|
+
</div>
|
|
479
|
+
</div>
|
|
480
|
+
</form>
|
|
481
|
+
</div>
|
|
482
|
+
|
|
483
|
+
<div class="card-footer">
|
|
484
|
+
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-user"></i> Login</button>
|
|
485
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
486
|
+
</div>
|
|
487
|
+
</div>
|
|
488
|
+
|
|
489
|
+
<div class="card">
|
|
490
|
+
<div class="card-header">
|
|
491
|
+
<%= fa_icon("tint") %> Input
|
|
492
|
+
|
|
493
|
+
Sizes
|
|
494
|
+
</div>
|
|
495
|
+
|
|
496
|
+
<div class="card-body">
|
|
497
|
+
<form action="" method="post" class="form-horizontal">
|
|
498
|
+
<div class="form-group row">
|
|
499
|
+
<label class="col-sm-5 col-form-label" for="input-small">Small Input</label>
|
|
500
|
+
<div class="col-sm-6">
|
|
501
|
+
<input id="input-small" name="input-small" class="form-control form-control-sm" placeholder=".form-control-sm" type="text">
|
|
502
|
+
</div>
|
|
503
|
+
</div>
|
|
504
|
+
<div class="form-group row">
|
|
505
|
+
<label class="col-sm-5 col-form-label" for="input-normal">Normal Input</label>
|
|
506
|
+
<div class="col-sm-6">
|
|
507
|
+
<input id="input-normal" name="input-normal" class="form-control" placeholder="Normal" type="text">
|
|
508
|
+
</div>
|
|
509
|
+
</div>
|
|
510
|
+
<div class="form-group row">
|
|
511
|
+
<label class="col-sm-5 col-form-label" for="input-large">Large Input</label>
|
|
512
|
+
<div class="col-sm-6">
|
|
513
|
+
<input id="input-large" name="input-large" class="form-control form-control-lg" placeholder=".form-control-lg" type="text">
|
|
514
|
+
</div>
|
|
515
|
+
</div>
|
|
516
|
+
</form>
|
|
517
|
+
</div>
|
|
518
|
+
|
|
519
|
+
<div class="card-footer">
|
|
520
|
+
<button type="submit" class="btn btn-sm btn-primary"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
521
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
522
|
+
</div>
|
|
523
|
+
</div>
|
|
524
|
+
</div>
|
|
525
|
+
</div>
|
|
526
|
+
|
|
527
|
+
<div class="row">
|
|
528
|
+
<div class="col-sm-6">
|
|
529
|
+
<div class="card">
|
|
530
|
+
<div class="card-header">
|
|
531
|
+
<%= fa_icon("tint") %> Validation states
|
|
532
|
+
|
|
533
|
+
Form
|
|
534
|
+
</div>
|
|
535
|
+
|
|
536
|
+
<div class="card-body">
|
|
537
|
+
<form class="was-validated">
|
|
538
|
+
<div class="form-group">
|
|
539
|
+
<label class="form-col-form-label" for="inputSuccess1">Input with success</label>
|
|
540
|
+
<input class="form-control is-valid" id="inputSuccess1" type="text">
|
|
541
|
+
</div>
|
|
542
|
+
<div class="form-group">
|
|
543
|
+
<label class="form-col-form-label" for="inputError1">Input with error</label>
|
|
544
|
+
<input class="form-control is-invalid" id="inputError1" type="text">
|
|
545
|
+
<div class="invalid-feedback">
|
|
546
|
+
Please provide a valid informations.
|
|
547
|
+
</div>
|
|
548
|
+
</div>
|
|
549
|
+
</form>
|
|
550
|
+
</div>
|
|
551
|
+
</div>
|
|
552
|
+
</div>
|
|
553
|
+
|
|
554
|
+
<div class="col-sm-6">
|
|
555
|
+
<div class="card">
|
|
556
|
+
<div class="card-header">
|
|
557
|
+
<%= fa_icon("tint") %> Validation
|
|
558
|
+
|
|
559
|
+
<code>was-validated</code>
|
|
560
|
+
</div>
|
|
561
|
+
|
|
562
|
+
<div class="card-body was-validated">
|
|
563
|
+
<div class="form-group">
|
|
564
|
+
<label class="form-col-form-label" for="inputSuccess2">Input is valid</label>
|
|
565
|
+
<input class="form-control is-valid" id="inputSuccess2" type="text">
|
|
566
|
+
</div>
|
|
567
|
+
<div class="form-group">
|
|
568
|
+
<label class="form-col-form-label" for="inputError2">Input required</label>
|
|
569
|
+
<input class="form-control is-invalid" id="inputError2" required="" type="text">
|
|
570
|
+
<div class="invalid-feedback">
|
|
571
|
+
Please provide a valid informations.
|
|
572
|
+
</div>
|
|
573
|
+
</div>
|
|
574
|
+
</div>
|
|
575
|
+
</div>
|
|
576
|
+
</div>
|
|
577
|
+
</div>
|
|
578
|
+
|
|
579
|
+
<div class="row">
|
|
580
|
+
<div class="col-sm-4">
|
|
581
|
+
<div class="card">
|
|
582
|
+
<div class="card-header">
|
|
583
|
+
<%= fa_icon("tint") %> Icon/Text
|
|
584
|
+
|
|
585
|
+
Groups
|
|
586
|
+
</div>
|
|
587
|
+
|
|
588
|
+
<div class="card-body">
|
|
589
|
+
<form action="" method="post" class="form-horizontal">
|
|
590
|
+
<div class="form-group row">
|
|
591
|
+
<div class="col-md-12">
|
|
592
|
+
<div class="input-group">
|
|
593
|
+
<div class="input-group-prepend">
|
|
594
|
+
<span class="input-group-text"><i class="fa fa-user"></i></span>
|
|
595
|
+
</div>
|
|
596
|
+
<input id="input1-group1" name="input1-group1" class="form-control" placeholder="Username" type="text">
|
|
597
|
+
</div>
|
|
598
|
+
</div>
|
|
599
|
+
</div>
|
|
600
|
+
|
|
601
|
+
<div class="form-group row">
|
|
602
|
+
<div class="col-md-12">
|
|
603
|
+
<div class="input-group">
|
|
604
|
+
<input id="input2-group1" name="input2-group1" class="form-control" placeholder="Email" type="email">
|
|
605
|
+
<div class="input-group-append">
|
|
606
|
+
<span class="input-group-text"><i class="fa fa-envelope-o"></i></span>
|
|
607
|
+
</div>
|
|
608
|
+
</div>
|
|
609
|
+
</div>
|
|
610
|
+
</div>
|
|
611
|
+
|
|
612
|
+
<div class="form-group row">
|
|
613
|
+
<div class="col-md-12">
|
|
614
|
+
<div class="input-group">
|
|
615
|
+
<div class="input-group-prepend">
|
|
616
|
+
<span class="input-group-text"><i class="fa fa-euro"></i></span>
|
|
617
|
+
</div>
|
|
618
|
+
<input id="input3-group1" name="input3-group1" class="form-control" placeholder=".." type="text">
|
|
619
|
+
<div class="input-group-append">
|
|
620
|
+
<span class="input-group-text">.00</span>
|
|
621
|
+
</div>
|
|
622
|
+
</div>
|
|
623
|
+
</div>
|
|
624
|
+
</div>
|
|
625
|
+
</form>
|
|
626
|
+
</div>
|
|
627
|
+
|
|
628
|
+
<div class="card-footer">
|
|
629
|
+
<button type="submit" class="btn btn-sm btn-success"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
630
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
631
|
+
</div>
|
|
632
|
+
</div>
|
|
633
|
+
</div>
|
|
634
|
+
|
|
635
|
+
<div class="col-sm-4">
|
|
636
|
+
<div class="card">
|
|
637
|
+
<div class="card-header">
|
|
638
|
+
<%= fa_icon("tint") %> Buttons
|
|
639
|
+
|
|
640
|
+
Groups
|
|
641
|
+
</div>
|
|
642
|
+
|
|
643
|
+
<div class="card-body">
|
|
644
|
+
<form action="" method="post" class="form-horizontal">
|
|
645
|
+
<div class="form-group row">
|
|
646
|
+
<div class="col-md-12">
|
|
647
|
+
<div class="input-group">
|
|
648
|
+
<span class="input-group-prepend">
|
|
649
|
+
<button type="button" class="btn btn-primary"><i class="fa fa-search"></i> Search</button>
|
|
650
|
+
</span>
|
|
651
|
+
<input id="input1-group2" name="input1-group2" class="form-control" placeholder="Username" type="text">
|
|
652
|
+
</div>
|
|
653
|
+
</div>
|
|
654
|
+
</div>
|
|
655
|
+
|
|
656
|
+
<div class="form-group row">
|
|
657
|
+
<div class="col-md-12">
|
|
658
|
+
<div class="input-group">
|
|
659
|
+
<input id="input2-group2" name="input2-group2" class="form-control" placeholder="Email" type="email">
|
|
660
|
+
<span class="input-group-append">
|
|
661
|
+
<button type="button" class="btn btn-primary">Submit</button>
|
|
662
|
+
</span>
|
|
663
|
+
</div>
|
|
664
|
+
</div>
|
|
665
|
+
</div>
|
|
666
|
+
|
|
667
|
+
<div class="form-group row">
|
|
668
|
+
<div class="col-md-12">
|
|
669
|
+
<div class="input-group">
|
|
670
|
+
<span class="input-group-prepend">
|
|
671
|
+
<button type="button" class="btn btn-primary"><i class="fa fa-facebook"></i></button>
|
|
672
|
+
</span>
|
|
673
|
+
<input id="input3-group2" name="input3-group2" class="form-control" placeholder="Search" type="text">
|
|
674
|
+
<span class="input-group-append">
|
|
675
|
+
<button type="button" class="btn btn-primary"><i class="fa fa-twitter"></i></button>
|
|
676
|
+
</span>
|
|
677
|
+
</div>
|
|
678
|
+
</div>
|
|
679
|
+
</div>
|
|
680
|
+
</form>
|
|
681
|
+
</div>
|
|
682
|
+
|
|
683
|
+
<div class="card-footer">
|
|
684
|
+
<button type="submit" class="btn btn-sm btn-success"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
685
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
686
|
+
</div>
|
|
687
|
+
</div>
|
|
688
|
+
</div>
|
|
689
|
+
|
|
690
|
+
<div class="col-sm-4">
|
|
691
|
+
<div class="card">
|
|
692
|
+
<div class="card-header">
|
|
693
|
+
<%= fa_icon("tint") %> Dropdowns
|
|
694
|
+
|
|
695
|
+
Groups
|
|
696
|
+
</div>
|
|
697
|
+
|
|
698
|
+
<div class="card-body">
|
|
699
|
+
<form action="" method="post" class="form-horizontal">
|
|
700
|
+
<div class="form-group row">
|
|
701
|
+
<div class="col-md-12">
|
|
702
|
+
<div class="input-group">
|
|
703
|
+
<div class="input-group-prepend">
|
|
704
|
+
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">Action
|
|
705
|
+
<span class="caret"></span>
|
|
706
|
+
</button>
|
|
707
|
+
|
|
708
|
+
<div class="dropdown-menu">
|
|
709
|
+
<a class="dropdown-item" href="#">Action</a>
|
|
710
|
+
<a class="dropdown-item" href="#">Another action</a>
|
|
711
|
+
<a class="dropdown-item" href="#">Something else here</a>
|
|
712
|
+
|
|
713
|
+
<div role="separator" class="dropdown-divider"></div>
|
|
714
|
+
|
|
715
|
+
<a class="dropdown-item" href="#">Separated link</a>
|
|
716
|
+
</div>
|
|
717
|
+
</div>
|
|
718
|
+
|
|
719
|
+
<input id="input1-group3" name="input1-group3" class="form-control" placeholder="Username" type="text">
|
|
720
|
+
</div>
|
|
721
|
+
</div>
|
|
722
|
+
</div>
|
|
723
|
+
|
|
724
|
+
<div class="form-group row">
|
|
725
|
+
<div class="col-md-12">
|
|
726
|
+
<div class="input-group">
|
|
727
|
+
<input id="input2-group3" name="input2-group3" class="form-control" placeholder="Email" type="email">
|
|
728
|
+
|
|
729
|
+
<div class="input-group-append">
|
|
730
|
+
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">Action
|
|
731
|
+
<span class="caret"></span>
|
|
732
|
+
</button>
|
|
733
|
+
|
|
734
|
+
<div class="dropdown-menu dropdown-menu-right">
|
|
735
|
+
<a class="dropdown-item" href="#">Action</a>
|
|
736
|
+
<a class="dropdown-item" href="#">Another action</a>
|
|
737
|
+
<a class="dropdown-item" href="#">Something else here</a>
|
|
738
|
+
|
|
739
|
+
<div role="separator" class="dropdown-divider"></div>
|
|
740
|
+
|
|
741
|
+
<a class="dropdown-item" href="#">Separated link</a>
|
|
742
|
+
</div>
|
|
743
|
+
</div>
|
|
744
|
+
</div>
|
|
745
|
+
</div>
|
|
746
|
+
</div>
|
|
747
|
+
|
|
748
|
+
<div class="row">
|
|
749
|
+
<div class="col-md-12">
|
|
750
|
+
<div class="input-group">
|
|
751
|
+
<div class="input-group-prepend">
|
|
752
|
+
<button type="button" class="btn btn-primary">Action</button>
|
|
753
|
+
<button type="button" class="btn btn-primary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown">
|
|
754
|
+
<span class="caret"></span>
|
|
755
|
+
</button>
|
|
756
|
+
|
|
757
|
+
<div class="dropdown-menu">
|
|
758
|
+
<a class="dropdown-item" href="#">Action</a>
|
|
759
|
+
<a class="dropdown-item" href="#">Another action</a>
|
|
760
|
+
<a class="dropdown-item" href="#">Something else here</a>
|
|
761
|
+
|
|
762
|
+
<div role="separator" class="dropdown-divider"></div>
|
|
763
|
+
|
|
764
|
+
<a class="dropdown-item" href="#">Separated link</a>
|
|
765
|
+
</div>
|
|
766
|
+
</div>
|
|
767
|
+
|
|
768
|
+
<input id="input3-group3" name="input3-group3" class="form-control" placeholder=".." type="text">
|
|
769
|
+
|
|
770
|
+
<div class="input-group-append">
|
|
771
|
+
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
|
|
772
|
+
<span class="caret"></span>
|
|
773
|
+
</button>
|
|
774
|
+
|
|
775
|
+
<div class="dropdown-menu dropdown-menu-right">
|
|
776
|
+
<a class="dropdown-item" href="#">Action</a>
|
|
777
|
+
<a class="dropdown-item" href="#">Another action</a>
|
|
778
|
+
<a class="dropdown-item" href="#">Something else here</a>
|
|
779
|
+
|
|
780
|
+
<div role="separator" class="dropdown-divider"></div>
|
|
781
|
+
|
|
782
|
+
<a class="dropdown-item" href="#">Separated link</a>
|
|
783
|
+
</div>
|
|
784
|
+
</div>
|
|
785
|
+
</div>
|
|
786
|
+
</div>
|
|
787
|
+
</div>
|
|
788
|
+
</form>
|
|
789
|
+
</div>
|
|
790
|
+
|
|
791
|
+
<div class="card-footer">
|
|
792
|
+
<button type="submit" class="btn btn-sm btn-success"><i class="fa fa-dot-circle-o"></i> Submit</button>
|
|
793
|
+
<button type="reset" class="btn btn-sm btn-danger"><i class="fa fa-ban"></i> Reset</button>
|
|
794
|
+
</div>
|
|
795
|
+
</div>
|
|
796
|
+
</div>
|
|
797
|
+
</div>
|
|
798
|
+
|
|
799
|
+
<div class="row">
|
|
800
|
+
<div class="col-md-6">
|
|
801
|
+
<div class="card">
|
|
802
|
+
<div class="card-header">
|
|
803
|
+
<%= fa_icon("tint") %> Use the grid for big devices!
|
|
804
|
+
|
|
805
|
+
<small>
|
|
806
|
+
<code>.col-lg-*</code>
|
|
807
|
+
<code>.col-md-*</code>
|
|
808
|
+
<code>.col-sm-*</code>
|
|
809
|
+
</small>
|
|
810
|
+
</div>
|
|
811
|
+
|
|
812
|
+
<div class="card-body">
|
|
813
|
+
<form action="" method="post" class="form-horizontal">
|
|
814
|
+
<div class="form-group row">
|
|
815
|
+
<div class="col-md-8">
|
|
816
|
+
<input class="form-control" placeholder=".col-md-8" type="text">
|
|
817
|
+
</div>
|
|
818
|
+
<div class="col-md-4">
|
|
819
|
+
<input class="form-control" placeholder=".col-md-4" type="text">
|
|
820
|
+
</div>
|
|
821
|
+
</div>
|
|
822
|
+
<div class="form-group row">
|
|
823
|
+
<div class="col-md-7">
|
|
824
|
+
<input class="form-control" placeholder=".col-md-7" type="text">
|
|
825
|
+
</div>
|
|
826
|
+
<div class="col-md-5">
|
|
827
|
+
<input class="form-control" placeholder=".col-md-5" type="text">
|
|
828
|
+
</div>
|
|
829
|
+
</div>
|
|
830
|
+
<div class="form-group row">
|
|
831
|
+
<div class="col-md-6">
|
|
832
|
+
<input class="form-control" placeholder=".col-md-6" type="text">
|
|
833
|
+
</div>
|
|
834
|
+
<div class="col-md-6">
|
|
835
|
+
<input class="form-control" placeholder=".col-md-6" type="text">
|
|
836
|
+
</div>
|
|
837
|
+
</div>
|
|
838
|
+
<div class="form-group row">
|
|
839
|
+
<div class="col-md-5">
|
|
840
|
+
<input class="form-control" placeholder=".col-md-5" type="text">
|
|
841
|
+
</div>
|
|
842
|
+
<div class="col-md-7">
|
|
843
|
+
<input class="form-control" placeholder=".col-md-7" type="text">
|
|
844
|
+
</div>
|
|
845
|
+
</div>
|
|
846
|
+
<div class="form-group row">
|
|
847
|
+
<div class="col-md-4">
|
|
848
|
+
<input class="form-control" placeholder=".col-md-4" type="text">
|
|
849
|
+
</div>
|
|
850
|
+
<div class="col-md-8">
|
|
851
|
+
<input class="form-control" placeholder=".col-md-8" type="text">
|
|
852
|
+
</div>
|
|
853
|
+
</div>
|
|
854
|
+
</form>
|
|
855
|
+
</div>
|
|
856
|
+
|
|
857
|
+
<div class="card-footer">
|
|
858
|
+
<button type="submit" class="btn btn-sm btn-primary">Action</button>
|
|
859
|
+
<button type="button" class="btn btn-sm btn-danger">Action</button>
|
|
860
|
+
<button type="button" class="btn btn-sm btn-warning">Action</button>
|
|
861
|
+
<button type="button" class="btn btn-sm btn-info">Action</button>
|
|
862
|
+
<button type="button" class="btn btn-sm btn-success">Action</button>
|
|
863
|
+
</div>
|
|
864
|
+
</div>
|
|
865
|
+
</div>
|
|
866
|
+
|
|
867
|
+
<div class="col-md-6">
|
|
868
|
+
<div class="card">
|
|
869
|
+
<div class="card-header">
|
|
870
|
+
<%= fa_icon("tint") %> Input Grid for small devices!
|
|
871
|
+
|
|
872
|
+
<small><code>.col-*</code></small>
|
|
873
|
+
</div>
|
|
874
|
+
|
|
875
|
+
<div class="card-body">
|
|
876
|
+
<form action="" method="post" class="form-horizontal">
|
|
877
|
+
<div class="form-group row">
|
|
878
|
+
<div class="col-4">
|
|
879
|
+
<input class="form-control" placeholder=".col-4" type="text">
|
|
880
|
+
</div>
|
|
881
|
+
<div class="col-8">
|
|
882
|
+
<input class="form-control" placeholder=".col-8" type="text">
|
|
883
|
+
</div>
|
|
884
|
+
</div>
|
|
885
|
+
<div class="form-group row">
|
|
886
|
+
<div class="col-5">
|
|
887
|
+
<input class="form-control" placeholder=".col-5" type="text">
|
|
888
|
+
</div>
|
|
889
|
+
<div class="col-7">
|
|
890
|
+
<input class="form-control" placeholder=".col-7" type="text">
|
|
891
|
+
</div>
|
|
892
|
+
</div>
|
|
893
|
+
<div class="form-group row">
|
|
894
|
+
<div class="col-6">
|
|
895
|
+
<input class="form-control" placeholder=".col-6" type="text">
|
|
896
|
+
</div>
|
|
897
|
+
<div class="col-6">
|
|
898
|
+
<input class="form-control" placeholder=".col-6" type="text">
|
|
899
|
+
</div>
|
|
900
|
+
</div>
|
|
901
|
+
<div class="form-group row">
|
|
902
|
+
<div class="col-7">
|
|
903
|
+
<input class="form-control" placeholder=".col-5" type="text">
|
|
904
|
+
</div>
|
|
905
|
+
<div class="col-5">
|
|
906
|
+
<input class="form-control" placeholder=".col-5" type="text">
|
|
907
|
+
</div>
|
|
908
|
+
</div>
|
|
909
|
+
<div class="form-group row">
|
|
910
|
+
<div class="col-8">
|
|
911
|
+
<input class="form-control" placeholder=".col-8" type="text">
|
|
912
|
+
</div>
|
|
913
|
+
<div class="col-4">
|
|
914
|
+
<input class="form-control" placeholder=".col-4" type="text">
|
|
915
|
+
</div>
|
|
916
|
+
</div>
|
|
917
|
+
</form>
|
|
918
|
+
</div>
|
|
919
|
+
|
|
920
|
+
<div class="card-footer">
|
|
921
|
+
<button type="submit" class="btn btn-sm btn-primary">Action</button>
|
|
922
|
+
<button type="button" class="btn btn-sm btn-danger">Action</button>
|
|
923
|
+
<button type="button" class="btn btn-sm btn-warning">Action</button>
|
|
924
|
+
<button type="button" class="btn btn-sm btn-info">Action</button>
|
|
925
|
+
<button type="button" class="btn btn-sm btn-success">Action</button>
|
|
926
|
+
</div>
|
|
927
|
+
</div>
|
|
928
|
+
</div>
|
|
929
|
+
</div>
|
|
930
|
+
|
|
931
|
+
<div class="row">
|
|
932
|
+
<div class="col-sm-4">
|
|
933
|
+
<div class="card">
|
|
934
|
+
<div class="card-header">
|
|
935
|
+
<%= fa_icon("tint") %> Example Form
|
|
936
|
+
</div>
|
|
937
|
+
|
|
938
|
+
<div class="card-body">
|
|
939
|
+
<form action="" method="post">
|
|
940
|
+
<div class="form-group">
|
|
941
|
+
<div class="input-group">
|
|
942
|
+
<div class="input-group-prepend">
|
|
943
|
+
<span class="input-group-text">Username</span>
|
|
944
|
+
</div>
|
|
945
|
+
<input id="username3" name="username3" class="form-control" type="text">
|
|
946
|
+
<div class="input-group-append">
|
|
947
|
+
<span class="input-group-text"><i class="fa fa-user"></i></span>
|
|
948
|
+
</div>
|
|
949
|
+
</div>
|
|
950
|
+
</div>
|
|
951
|
+
|
|
952
|
+
<div class="form-group">
|
|
953
|
+
<div class="input-group">
|
|
954
|
+
<div class="input-group-prepend">
|
|
955
|
+
<span class="input-group-text">Email</span>
|
|
956
|
+
</div>
|
|
957
|
+
<input id="email3" name="email3" class="form-control" type="email">
|
|
958
|
+
<div class="input-group-append">
|
|
959
|
+
<span class="input-group-text"><i class="fa fa-envelope"></i></span>
|
|
960
|
+
</div>
|
|
961
|
+
</div>
|
|
962
|
+
</div>
|
|
963
|
+
|
|
964
|
+
<div class="form-group">
|
|
965
|
+
<div class="input-group">
|
|
966
|
+
<div class="input-group-prepend">
|
|
967
|
+
<span class="input-group-text">Password</span>
|
|
968
|
+
</div>
|
|
969
|
+
<input id="password3" name="password3" class="form-control" type="password">
|
|
970
|
+
<div class="input-group-append">
|
|
971
|
+
<span class="input-group-text"><i class="fa fa-asterisk"></i></span>
|
|
972
|
+
</div>
|
|
973
|
+
</div>
|
|
974
|
+
</div>
|
|
975
|
+
|
|
976
|
+
<div class="form-group form-actions">
|
|
977
|
+
<button type="submit" class="btn btn-sm btn-primary">Submit</button>
|
|
978
|
+
</div>
|
|
979
|
+
</form>
|
|
980
|
+
</div>
|
|
981
|
+
</div>
|
|
982
|
+
</div>
|
|
983
|
+
|
|
984
|
+
<div class="col-sm-4">
|
|
985
|
+
<div class="card">
|
|
986
|
+
<div class="card-header">
|
|
987
|
+
<%= fa_icon("tint") %> Example Form
|
|
988
|
+
</div>
|
|
989
|
+
|
|
990
|
+
<div class="card-body">
|
|
991
|
+
<form action="" method="post">
|
|
992
|
+
<div class="form-group">
|
|
993
|
+
<div class="input-group">
|
|
994
|
+
<input id="username2" name="username2" class="form-control" placeholder="Username" type="text">
|
|
995
|
+
<div class="input-group-append">
|
|
996
|
+
<span class="input-group-text"><i class="fa fa-user"></i></span>
|
|
997
|
+
</div>
|
|
998
|
+
</div>
|
|
999
|
+
</div>
|
|
1000
|
+
|
|
1001
|
+
<div class="form-group">
|
|
1002
|
+
<div class="input-group">
|
|
1003
|
+
<input id="email2" name="email2" class="form-control" placeholder="Email" type="email">
|
|
1004
|
+
<div class="input-group-append">
|
|
1005
|
+
<span class="input-group-text"><i class="fa fa-envelope"></i></span>
|
|
1006
|
+
</div>
|
|
1007
|
+
</div>
|
|
1008
|
+
</div>
|
|
1009
|
+
|
|
1010
|
+
<div class="form-group">
|
|
1011
|
+
<div class="input-group">
|
|
1012
|
+
<input id="password2" name="password2" class="form-control" placeholder="Password" type="password">
|
|
1013
|
+
<div class="input-group-append">
|
|
1014
|
+
<span class="input-group-text"><i class="fa fa-asterisk"></i></span>
|
|
1015
|
+
</div>
|
|
1016
|
+
</div>
|
|
1017
|
+
</div>
|
|
1018
|
+
|
|
1019
|
+
<div class="form-group form-actions">
|
|
1020
|
+
<button type="submit" class="btn btn-sm btn-secondary">Submit</button>
|
|
1021
|
+
</div>
|
|
1022
|
+
</form>
|
|
1023
|
+
</div>
|
|
1024
|
+
</div>
|
|
1025
|
+
</div>
|
|
1026
|
+
|
|
1027
|
+
<div class="col-sm-4">
|
|
1028
|
+
<div class="card">
|
|
1029
|
+
<div class="card-header">
|
|
1030
|
+
<%= fa_icon("tint") %> Example Form
|
|
1031
|
+
</div>
|
|
1032
|
+
|
|
1033
|
+
<div class="card-body">
|
|
1034
|
+
<form action="" method="post">
|
|
1035
|
+
<div class="form-group">
|
|
1036
|
+
<div class="input-group">
|
|
1037
|
+
<div class="input-group-prepend">
|
|
1038
|
+
<span class="input-group-text"><i class="fa fa-user"></i></span>
|
|
1039
|
+
</div>
|
|
1040
|
+
<input id="username" name="username" class="form-control" placeholder="Username" type="text">
|
|
1041
|
+
</div>
|
|
1042
|
+
</div>
|
|
1043
|
+
|
|
1044
|
+
<div class="form-group">
|
|
1045
|
+
<div class="input-group">
|
|
1046
|
+
<div class="input-group-prepend">
|
|
1047
|
+
<span class="input-group-text"><i class="fa fa-envelope"></i></span>
|
|
1048
|
+
</div>
|
|
1049
|
+
<input id="email" name="email" class="form-control" placeholder="Email" type="email">
|
|
1050
|
+
</div>
|
|
1051
|
+
</div>
|
|
1052
|
+
|
|
1053
|
+
<div class="form-group">
|
|
1054
|
+
<div class="input-group">
|
|
1055
|
+
<div class="input-group-prepend">
|
|
1056
|
+
<span class="input-group-text"><i class="fa fa-asterisk"></i></span>
|
|
1057
|
+
</div>
|
|
1058
|
+
<input id="password" name="password" class="form-control" placeholder="Password" type="password">
|
|
1059
|
+
</div>
|
|
1060
|
+
</div>
|
|
1061
|
+
|
|
1062
|
+
<div class="form-group form-actions">
|
|
1063
|
+
<button type="submit" class="btn btn-sm btn-success">Submit</button>
|
|
1064
|
+
</div>
|
|
1065
|
+
</form>
|
|
1066
|
+
</div>
|
|
1067
|
+
</div>
|
|
1068
|
+
</div>
|
|
1069
|
+
</div>
|
|
1070
|
+
|
|
1071
|
+
<div class="row">
|
|
1072
|
+
<div class="col-lg-12">
|
|
1073
|
+
<div class="card">
|
|
1074
|
+
<div class="card-header">
|
|
1075
|
+
<%= fa_icon("tint") %> Form Elements
|
|
1076
|
+
</div>
|
|
1077
|
+
|
|
1078
|
+
<div class="card-body collapse show" id="collapseExample">
|
|
1079
|
+
<form class="form-horizontal">
|
|
1080
|
+
<div class="form-group">
|
|
1081
|
+
<label class="col-form-label" for="prependedInput">Prepended text</label>
|
|
1082
|
+
<div class="controls">
|
|
1083
|
+
<div class="input-prepend input-group">
|
|
1084
|
+
<div class="input-group-prepend">
|
|
1085
|
+
<span class="input-group-text">@</span>
|
|
1086
|
+
</div>
|
|
1087
|
+
<input id="prependedInput" class="form-control" size="16" type="text">
|
|
1088
|
+
</div>
|
|
1089
|
+
<p class="help-block">Here's some help text</p>
|
|
1090
|
+
</div>
|
|
1091
|
+
</div>
|
|
1092
|
+
|
|
1093
|
+
<div class="form-group">
|
|
1094
|
+
<label class="col-form-label" for="appendedInput">Appended text</label>
|
|
1095
|
+
<div class="controls">
|
|
1096
|
+
<div class="input-group">
|
|
1097
|
+
<input id="appendedInput" class="form-control" size="16" type="text">
|
|
1098
|
+
<div class="input-group-append">
|
|
1099
|
+
<span class="input-group-text">.00</span>
|
|
1100
|
+
</div>
|
|
1101
|
+
</div>
|
|
1102
|
+
<span class="help-block">Here's more help text</span>
|
|
1103
|
+
</div>
|
|
1104
|
+
</div>
|
|
1105
|
+
|
|
1106
|
+
<div class="form-group">
|
|
1107
|
+
<label class="col-form-label" for="appendedPrependedInput">Append and prepend</label>
|
|
1108
|
+
<div class="controls">
|
|
1109
|
+
<div class="input-prepend input-group">
|
|
1110
|
+
<div class="input-group-prepend">
|
|
1111
|
+
<span class="input-group-text">$</span>
|
|
1112
|
+
</div>
|
|
1113
|
+
<input id="appendedPrependedInput" class="form-control" size="16" type="text">
|
|
1114
|
+
<div class="input-group-append">
|
|
1115
|
+
<span class="input-group-text">.00</span>
|
|
1116
|
+
</div>
|
|
1117
|
+
</div>
|
|
1118
|
+
</div>
|
|
1119
|
+
</div>
|
|
1120
|
+
|
|
1121
|
+
<div class="form-group">
|
|
1122
|
+
<label class="col-form-label" for="appendedInputButton">Append with button</label>
|
|
1123
|
+
<div class="controls">
|
|
1124
|
+
<div class="input-group">
|
|
1125
|
+
<input id="appendedInputButton" class="form-control" size="16" type="text">
|
|
1126
|
+
<span class="input-group-append">
|
|
1127
|
+
<button class="btn btn-secondary" type="button">Go!</button>
|
|
1128
|
+
</span>
|
|
1129
|
+
</div>
|
|
1130
|
+
</div>
|
|
1131
|
+
</div>
|
|
1132
|
+
|
|
1133
|
+
<div class="form-group">
|
|
1134
|
+
<label class="col-form-label" for="appendedInputButtons">Two-button append</label>
|
|
1135
|
+
<div class="controls">
|
|
1136
|
+
<div class="input-group">
|
|
1137
|
+
<input id="appendedInputButtons" size="16" class="form-control" type="text">
|
|
1138
|
+
<span class="input-group-append">
|
|
1139
|
+
<button class="btn btn-secondary" type="button">Search</button>
|
|
1140
|
+
<button class="btn btn-secondary" type="button">Options</button>
|
|
1141
|
+
</span>
|
|
1142
|
+
</div>
|
|
1143
|
+
</div>
|
|
1144
|
+
</div>
|
|
1145
|
+
|
|
1146
|
+
<div class="form-actions">
|
|
1147
|
+
<button type="submit" class="btn btn-primary">Save changes</button>
|
|
1148
|
+
<button type="button" class="btn btn-secondary">Cancel</button>
|
|
1149
|
+
</div>
|
|
1150
|
+
</form>
|
|
1151
|
+
</div>
|
|
1152
|
+
</div>
|
|
1153
|
+
</div>
|
|
1154
|
+
</div>
|
|
1155
|
+
|
|
1156
|
+
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
|
|
1157
|
+
<div class="modal-dialog" role="document">
|
|
1158
|
+
<div class="modal-content">
|
|
1159
|
+
<div class="modal-header">
|
|
1160
|
+
<h4 class="modal-title">Modal title</h4>
|
|
1161
|
+
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
|
1162
|
+
<span aria-hidden="true">×</span>
|
|
1163
|
+
</button>
|
|
1164
|
+
</div>
|
|
1165
|
+
|
|
1166
|
+
<div class="modal-body">
|
|
1167
|
+
<p>One fine body…</p>
|
|
1168
|
+
</div>
|
|
1169
|
+
|
|
1170
|
+
<div class="modal-footer">
|
|
1171
|
+
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
|
|
1172
|
+
<button type="button" class="btn btn-primary">Save changes</button>
|
|
1173
|
+
</div>
|
|
1174
|
+
</div>
|
|
1175
|
+
</div>
|
|
1176
|
+
</div>
|