administration-zero 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +8 -0
- data/CHANGELOG.md +0 -0
- data/CODE_OF_CONDUCT.md +84 -0
- data/Gemfile +8 -0
- data/Gemfile.lock +19 -0
- data/LICENSE.txt +21 -0
- data/README.md +52 -0
- data/Rakefile +4 -0
- data/administration_zero.gemspec +22 -0
- data/lib/administration-zero.rb +1 -0
- data/lib/administration_zero/version.rb +3 -0
- data/lib/administration_zero.rb +4 -0
- data/lib/generators/admin/install/USAGE +5 -0
- data/lib/generators/admin/install/install_generator.rb +68 -0
- data/lib/generators/admin/install/templates/controllers/admin/application_controller.rb +13 -0
- data/lib/generators/admin/install/templates/controllers/admin/home_controller.rb +4 -0
- data/lib/generators/admin/install/templates/controllers/admin/password_resets_controller.rb +41 -0
- data/lib/generators/admin/install/templates/controllers/admin/sessions_controller.rb +25 -0
- data/lib/generators/admin/install/templates/controllers/admin/users_controller.rb +54 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_flash_messages.html.erb +11 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_footer.html.erb +34 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_javascript_tags.html.erb +23 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_page_header.html.erb +8 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_page_header_actions.html.erb +5 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_page_header_breadcrumb.html.erb +12 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_pagination.html.erb +24 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_primary_navbar.html.erb +67 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_secondary_navbar.html.erb +31 -0
- data/lib/generators/admin/install/templates/erb/admin/application/_stylesheet_link_tags.html.erb +7 -0
- data/lib/generators/admin/install/templates/erb/admin/home/index.html.erb +8 -0
- data/lib/generators/admin/install/templates/erb/admin/password_resets/edit.html.erb +23 -0
- data/lib/generators/admin/install/templates/erb/admin/password_resets/new.html.erb +17 -0
- data/lib/generators/admin/install/templates/erb/admin/sessions/new.html.erb +21 -0
- data/lib/generators/admin/install/templates/erb/admin/user_mailer/password_reset_provision.html.erb +11 -0
- data/lib/generators/admin/install/templates/erb/admin/user_mailer/password_reset_provision.text.erb +9 -0
- data/lib/generators/admin/install/templates/erb/admin/users/_form.html.erb +30 -0
- data/lib/generators/admin/install/templates/erb/admin/users/edit.html.erb +17 -0
- data/lib/generators/admin/install/templates/erb/admin/users/index.html.erb +73 -0
- data/lib/generators/admin/install/templates/erb/admin/users/new.html.erb +16 -0
- data/lib/generators/admin/install/templates/erb/admin/users/show.html.erb +33 -0
- data/lib/generators/admin/install/templates/erb/layouts/admin/application.html.erb +28 -0
- data/lib/generators/admin/install/templates/erb/layouts/admin/authentication.html.erb +34 -0
- data/lib/generators/admin/install/templates/helpers/admin/application_helper.rb +30 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/000f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/000m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/001f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/001m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/002f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/002m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/003f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/003m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/004f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/004m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/005f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/005m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/006f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/006m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/007f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/007m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/008f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/008m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/009f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/009m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/010f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/010m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/011f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/011m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/012f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/012m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/013f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/013m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/014f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/014m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/015f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/015m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/016f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/016m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/017f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/017m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/018f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/018m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/019f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/019m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/020f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/020m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/021f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/021m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/022f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/022m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/023f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/023m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/024f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/024m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/025f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/025m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/026f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/026m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/027f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/027m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/028f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/028m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/029f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/029m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/030f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/030m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/031f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/031m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/032f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/032m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/033f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/033m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/034f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/034m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/035f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/035m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/036f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/036m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/037f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/037m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/038f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/038m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/039f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/039m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/040f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/040m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/041f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/041m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/042f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/042m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/043f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/043m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/044f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/044m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/045f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/045m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/046f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/046m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/047f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/047m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/048f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/048m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/049f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/049m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/050f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/050m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/051f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/051m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/052f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/052m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/053f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/053m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/054f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/054m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/055f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/055m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/056f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/056m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/057f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/057m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/058f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/058m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/059f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/059m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/060f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/060m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/061f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/061m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/062f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/062m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/063f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/063m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/064f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/064m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/065f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/065m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/066f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/066m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/067f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/067m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/068f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/068m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/069f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/069m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/070f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/070m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/071f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/071m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/072f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/072m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/073m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/avatars/074m.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/brave.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/chrome.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/edge.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/electron.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/firefox.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/opera.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/safari.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/browsers/vivaldi.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/components/card-buttons.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/card-comments.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/card-ribbon.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/card-tabs-bottom.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/card-with-image.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/empty.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/input-colors.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/input-image.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/simple-avatar.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/simple-card.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/widget-revenue.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/components/widget-sales.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/bitcoin.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/cardano.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/dash.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/eos.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/ethereum.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/litecoin.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/nem.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/crypto_currencies/ripple.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_bug_fixing_oc7a.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_joyride_hnno.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_medicine_b1ol.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_mobile_application_mr4r.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_posting_photo_v65l.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_printing_invoices_5r4r.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_quitting_time_dm8t.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_sign_in_e6hj.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/illustrations/undraw_work_together_h63l.svg +1 -0
- data/lib/generators/admin/install/templates/images/admin/logo-small-white.svg +3 -0
- data/lib/generators/admin/install/templates/images/admin/logo-small.svg +3 -0
- data/lib/generators/admin/install/templates/images/admin/logo-white.svg +4 -0
- data/lib/generators/admin/install/templates/images/admin/logo.svg +4 -0
- data/lib/generators/admin/install/templates/images/admin/og.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/06c56bb2dfad556b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/0986f97be719fb9a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/1194d63fe36a8670.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/1366fdc9b9b277e4.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/1b73704b282a8ec6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/2492baa9758df1e4.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/2854fd67ddbd6217.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/35b88fc04a518c1b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/3664593f945f0d8d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/36e273986ed577b8.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/3b05a157d2edde04.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/3d2998219313cd37.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/446fb2d04445c2d9.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/4f668538bdd3fd7f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/529078594c496ec5.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/5358d787242861c4.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/546fd146c83f428c.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/552683cc4e5f0e11.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/5614ec7eb9034d04.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/56614e12b2a7bd68.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/5749e5c54a61a45e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/6ab3200b14549f8a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/6d35d9a2bd6c63c2.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/6f6e2ef709fef97a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/6fe407b4b13bbcde.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/75b555b99d5b38c4.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/77586f6ffa9fbc5e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/7ce612d952e536b2.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/802a16cdf5ce3551.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/8a26974ee6444acd.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/8c13ad59f739558c.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/8d49f9c47fa68d5a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/8fdeb4785d2b82ef.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/9f36332564ca271d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/a12804818c417ea3.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/a159fb2bff29fda4.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/a4792dcce57ee13d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/a74c41b6fb7fdf34.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/abb0721ac43820f9.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/c86352559904d222.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/cfb1041b0e366b9d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/d366fc3df37fe65b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/da6119936bd7f566.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/de6d0fd1feebb6a2.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/e8f47263360d96af.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/ecfed9fbf8a58836.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/f61b5f865012f200.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/f746d9f7fa60be79.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/f7f04e6a834b1959.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/f94e788e72666bfd.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/ff23569f1a45865d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/photos/ff54b43b56632883.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/apple-iphone7-special.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/apple-iphone7.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/apple-macbook-pro.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/gopro-hero.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/huawei-mate.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/lenovo-tab.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/lg-g6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/msi.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-1.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-10.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-11.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-12.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-13.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-2.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-3.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-4.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-5.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-7.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-8.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/product-9.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/samsung-galaxy.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/sony-kd.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/products/xiaomi-mi.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/sponsor-banner-homepage.svg +288 -0
- data/lib/generators/admin/install/templates/images/admin/sponsor-banner-readme.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/tabler-preview.png +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/014f38920ba75a4efd3488b4626cf6e16f94c9e5.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/04168ff76158e7bed216979a5ea97c7e52b1e97c.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/089726b25ce5a55b906b3b65580a517b65c7c881.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/0b12aaeffdef54e56dda3c1b1cb5fbc8bc20f1ca.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/0bb28beeb3f0b553d4b1b7a89061d72ad73b8a59.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/0db34b6caab2312acdaee332be0c7a0ed3172a2a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/0dcc53286b2ed65d0667584ed5f557e385c25188.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/11065380c7303972ca2d1d799d06f248fb442225.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/1143cd331d7ff1c105fa8140d00edf286fb9f9a5.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/18ca653b602887a9b211da03a7c26e8867b528e2.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/1a9dab25976c706fffccb6bf2cf8a6f5eadd0d29.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/213906d9faa26ccd959947613557ea3b75dde85b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/22c6434a15cc410c656356a9862a2afbe51205ff.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/24b4146508ef0a7969de8d938ee875d0123989f6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/257b1dee9f7d1c6f41bfa567348f8444535feac6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/281357a445748bc906270ca7a01253f480eaf1b4.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/285c50b8d12090ce411acf5eba9cca721a4a1c0a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/2be99e6ce2bb214a9072e315f4e17948af30af75.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/2ccc3bd0455066a58b00083b3920c3642a072e42.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/2e55b9c247cc6b0b713fbbce9db0527a932f8748.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/2e7357491deb8a6796ee8d9181ca9ea1f407bb5f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/2fb88b8efab810c50670a2d9ca3abb2af35f01a0.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/3144e46ee207860391866a086b41eb01749582d6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/363b158c2f5b904f9df760a6ae2b9aa2600e7521.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/37c84d9b11d74b5625635a2c6c05aa80f4dc240c.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/3abf5ca23380d633a3add2dab444b9a1b8012aeb.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/41351ae11fec30f74422caffed8ba5a05d086d86.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/446b2000ec677fed9e915790d8ee8ce021b7db72.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/488f389cd61dba31b65e36768808c2d0da84737f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/49faef83b73d483c653f08aede55d81df52e9d18.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/4d4ab714dfca7b9df41d4a02a2c39394ebdeb6b6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/4d78b06d3286a328a6a72268c474514f04932260.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/4f6c0ba1317ea1d032ed8f1e5d51777f5ed78192.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/56d8e3e1c597b0382c4dc236ba630d2a0f1eddf1.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/5843ed4a56177db9ae39a09d23319f87a78ed7d6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/5a6c8514a481afe89cbf4f37b13dde14e62ed616.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/5da09480ae1ab3f00cfaf6cd4e3a6ba03b4a5fd1.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/5f9ed99f071ced583dfb5a1dcdac6c555dc755aa.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/603793bf01019734d7b67b18f5e91220ea8deb14.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/60e40883ae3c1edba925cedd554fc8dabc677ba1.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/617c5567a6ed4342fb48df7ab753a8d9f2c0054b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/6207c3f216b3caeb36be9854040930819c38cf8d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/621d2909bcc2c26cd0b274aab0414c9d422a1576.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/6607274645fa3302e4b885c1678e6e2fef40d889.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/695dfa63a47c7db21c0124f1d598d54058063b94.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/6ba02c2ab0ecc649a84fdafb4539e3ad71d0e6ab.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/6bb542e3ff67f6a6ba2918bdff2e9c5bbabb94a1.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/6e94ab39c917096d876b895dbab0019953d27a96.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/71a9517412a65940f2203c7ee7b0eb352f31199c.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/72c4be59e52052d4fa76c3abcf47921da517d88e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/73f4938130140174efb1cc0a82ececb277e40932.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/748adbfec069804f4ce1c09f4bff86e0eb06f60e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/77b2563eda24abe226bc08d59a0dec59a07815e6.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/77cb96a59f7a3bf4c6513781a1a48688f88330a3.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/79b2422b467ad20c07576e8f8f5f2f1692ac7142.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/7f6114053b1ad190459770bc7a941c95ca608b39.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/7fb6b008325b9536dbd02ed14d0c47de59f65935.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/81a97f9d44d189a959d4838364ee3d2056c88341.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/8581468e913349d55449686175d6ad55f2efda47.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/859337f0eaa49b1ad6ed76719b7c1ae26d6412c8.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/896b2434b87ea37ba7f99183db5c99c60bc252a1.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/8c48d9658ca7a04cebb1e568ffcca0c0c9fce576.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/8ca79fea1c7bcd6e79eceb38d1f7b1a5c7b26d9f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/8ebf0216fa9d294177e79cfef03628ed68043454.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/91f76bae8e1b8369fa2f4287af94d065d92e21cc.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/93ad7f491db7df0cb517308e7bb847da41647618.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/9901c9a39491c4456119dde7e626965c5342a6ba.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/996e277d1049cef3442bc932c08d76e465436a18.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/9b092f765831793404d46b816d688135ff32735f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/9d022729e6f9917b17800029b9308e8b563c7ab8.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/9d99ddd56d7cf8599b6c8764fe62577df649de93.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/9fa22d9c7a720db1e1addb60b86b6869851b4a76.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/a4fb1d293bd8d3fd38352418c50fcf1369a7a87d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/a715f85cf0ba0cc2ed61e62d5441763871d83a5b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/a77d19d2ac9e19d59da67952fcf78c24d94f3848.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/a8a4ee30b73a0454bd4d4245e36d87447c7f318d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/aa5b5b3795416a0e275d41838d9737c8faedad6c.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/aac97056fc02fe02c7e95f7ff77a07c6e82f7d6e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/ab9e1e2e78d4f25e10364403dc13d7cffded6daf.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/ac7215afbceb58c8a7f3713eaf9d00ff3d959779.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/b089902e72614818a73c9dfc258633734761a6c1.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/b114db565bfbdfed73f15cf11963428da1f10e90.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/b77ddc595b81c3c9081fa38df536e47ccd08d5ac.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/b8e4106aa31f47d16803def16904b0a7bc5e1a5a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/b93e4faa3b5300952e385b893e8d49037b7abc6e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/baa69b4e848c9ac4859aa7fd33ca592d384ebd94.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c07289080dac8c111fddc6fddcf239c645daac9d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c396ca27ce8cfe43c41bff9cce5aadbb481bb3a0.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c3f13b4f7a674abda9aa36fd72fa341e918c0f26.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c6d8adf2461ca3e91156b645be472fbe1dcb0fc8.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c75a4b750f94fda9d1108c26d28ad47b69c46f09.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c76f990296ba4b77c85b569ca311f5eefbcf75e5.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c903b69c7c123786eb658afbbacbeb0a61fc108f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c976bfc96d5e44820e553a16a6097cd02a61fd2f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/c9a8350feee77e9345eec4155cddc96694803d1a.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/caf848886b4cd05003fb342f928b64ea09b305f3.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/cc955a4bee6a76a217de86ce72dc3c304186bc7d.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/cefff458b9d5cb4ce224de82dfddb390da9811ca.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/cf0c8ff362a486a63527ac8c3fbec07b30854866.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/cfb2a532996512eff95c4b0d566d067384aaa441.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/d07f62044c007eb1b21ceac4c57a19b552797509.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/d0b9aed7b44169ef38398496c8eb0fed14da89d2.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/d3138273a495bdbc3e7f2b6a0b69213dceccfb66.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/d35863120ae67588110c66bfa534bb645cf99a16.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/d4e02c12a8ef14462f3b4f15df6398cdcfec9898.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/d5fd5256e0763c1e9f60b054e33e82ca08fdeca8.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/d85ff971ec79f3cb6743540ed0f416e2d0a1c311.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/da194bbe320834f7cc18b51ab2a69ea0fcc93d3e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/dd00b1d051d4997779bf48fa56e6ecb6583ac4cc.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/eb33214151082431206ab6e1ad4bbf83f487d58e.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/ef96f4e6be04b4b8bde0861bd3d6b54f6c39408b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f046d0f22f8b8f888f173758da202b54b309c3cb.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f04bb6fba32e89475d9981007aff21e13745dec2.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f164a2ba24b716986dbbf2c40d34e5c84bddeec3.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f34590c6e7b48c89e9e7b0b26586a47e1f427f65.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f4e96086f44c4dff1758b1fc1338cd88c1b5ce9c.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f54d58d3c8ff2fb935cfbd8461a7bf867ec88e8b.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f59354f8d3f2841e44c1bd7aa0cd55a22843cfc7.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/f891f1864651e04eb94edd64b8e707e150e2425f.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/fa3c3fea65a9a175bcf1fcd36d3c71763b5dc451.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/fb4998c955d8eba049ffbfc7ab8523a4a4a1f7e9.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/fe4ee21d30450829e5b172e806b3c1e14ca1e5f3.jpg +0 -0
- data/lib/generators/admin/install/templates/images/admin/tracks/ff2381a011d29cefb3804436ed29f60b4faa63d6.jpg +0 -0
- data/lib/generators/admin/install/templates/mailers/admin/user_mailer.rb +8 -0
- data/lib/generators/admin/install/templates/migrations/create_admin_users.rb.tt +12 -0
- data/lib/generators/admin/install/templates/models/admin/current.rb +3 -0
- data/lib/generators/admin/install/templates/models/admin_user.rb +15 -0
- data/lib/generators/admin/install/templates/models/application_record.rb +3 -0
- data/lib/generators/admin/install/templates/test_unit/admin_users.yml +5 -0
- data/lib/generators/admin/install/templates/test_unit/application_system_test_case.rb +15 -0
- data/lib/generators/admin/install/templates/test_unit/controllers/admin/home_controller_test.rb +12 -0
- data/lib/generators/admin/install/templates/test_unit/controllers/admin/password_resets_controller_test.rb +48 -0
- data/lib/generators/admin/install/templates/test_unit/controllers/admin/sessions_controller_test.rb +36 -0
- data/lib/generators/admin/install/templates/test_unit/controllers/admin/users_controller_test.rb +48 -0
- data/lib/generators/admin/install/templates/test_unit/system/admin/password_resets_test.rb +28 -0
- data/lib/generators/admin/install/templates/test_unit/system/admin/sessions_test.rb +24 -0
- data/lib/generators/admin/install/templates/test_unit/system/admin/users_test.rb +43 -0
- data/lib/generators/admin/install/templates/test_unit/test_helper.rb +16 -0
- data/lib/generators/admin/scaffold/USAGE +5 -0
- data/lib/generators/admin/scaffold/scaffold_generator.rb +87 -0
- data/lib/generators/admin/scaffold/templates/controller.rb.tt +58 -0
- data/lib/generators/admin/scaffold/templates/erb/_form.html.erb.tt +41 -0
- data/lib/generators/admin/scaffold/templates/erb/edit.html.erb.tt +17 -0
- data/lib/generators/admin/scaffold/templates/erb/index.html.erb.tt +77 -0
- data/lib/generators/admin/scaffold/templates/erb/new.html.erb.tt +16 -0
- data/lib/generators/admin/scaffold/templates/erb/show.html.erb.tt +37 -0
- data/lib/generators/admin/scaffold/templates/functional_test.rb.tt +53 -0
- data/lib/generators/admin/scaffold/templates/system_test.rb.tt +52 -0
- metadata +506 -0
@@ -0,0 +1,67 @@
|
|
1
|
+
<header class="navbar navbar-expand-md navbar-light d-print-none">
|
2
|
+
<div class="container-fluid">
|
3
|
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar-menu">
|
4
|
+
<span class="navbar-toggler-icon"></span>
|
5
|
+
</button>
|
6
|
+
<h1 class="navbar-brand navbar-brand-autodark d-none-navbar-horizontal pe-0 pe-md-3">
|
7
|
+
<a href=".">
|
8
|
+
<%= image_tag "admin/logo.svg", width: 110, height: 32, alt: "Tabler", class: "navbar-brand-image" %>
|
9
|
+
</a>
|
10
|
+
</h1>
|
11
|
+
<div class="navbar-nav flex-row order-md-last">
|
12
|
+
<div class="nav-item d-none d-md-flex me-3">
|
13
|
+
<div class="btn-list">
|
14
|
+
<a href="https://github.com/tabler/tabler" class="btn" target="_blank" rel="noreferrer">
|
15
|
+
<!-- Download SVG icon from http://tabler-icons.io/i/brand-github -->
|
16
|
+
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5" /></svg>
|
17
|
+
Source code
|
18
|
+
</a>
|
19
|
+
<a href="https://github.com/sponsors/codecalm" class="btn" target="_blank" rel="noreferrer">
|
20
|
+
<!-- Download SVG icon from http://tabler-icons.io/i/heart -->
|
21
|
+
<svg xmlns="http://www.w3.org/2000/svg" class="icon text-pink" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M19.5 13.572l-7.5 7.428l-7.5 -7.428m0 0a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572" /></svg>
|
22
|
+
Sponsor
|
23
|
+
</a>
|
24
|
+
</div>
|
25
|
+
</div>
|
26
|
+
<a href="?theme=dark" class="nav-link px-0 hide-theme-dark" title="Enable dark mode" data-bs-toggle="tooltip" data-bs-placement="bottom">
|
27
|
+
<!-- Download SVG icon from http://tabler-icons.io/i/moon -->
|
28
|
+
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" /></svg>
|
29
|
+
</a>
|
30
|
+
<a href="?theme=light" class="nav-link px-0 hide-theme-light" title="Enable light mode" data-bs-toggle="tooltip" data-bs-placement="bottom">
|
31
|
+
<!-- Download SVG icon from http://tabler-icons.io/i/sun -->
|
32
|
+
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="4" /><path d="M3 12h1m8 -9v1m8 8h1m-9 8v1m-6.4 -15.4l.7 .7m12.1 -.7l-.7 .7m0 11.4l.7 .7m-12.1 -.7l-.7 .7" /></svg>
|
33
|
+
</a>
|
34
|
+
<div class="nav-item dropdown d-none d-md-flex me-3">
|
35
|
+
<a href="#" class="nav-link px-0" data-bs-toggle="dropdown" tabindex="-1" aria-label="Show notifications">
|
36
|
+
<!-- Download SVG icon from http://tabler-icons.io/i/bell -->
|
37
|
+
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M10 5a2 2 0 0 1 4 0a7 7 0 0 1 4 6v3a4 4 0 0 0 2 3h-16a4 4 0 0 0 2 -3v-3a7 7 0 0 1 4 -6" /><path d="M9 17v1a3 3 0 0 0 6 0v-1" /></svg>
|
38
|
+
<span class="badge bg-red"></span>
|
39
|
+
</a>
|
40
|
+
<div class="dropdown-menu dropdown-menu-end dropdown-menu-card">
|
41
|
+
<div class="card">
|
42
|
+
<div class="card-body">
|
43
|
+
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus ad amet consectetur exercitationem fugiat in ipsa ipsum, natus odio quidem quod repudiandae sapiente. Amet debitis et magni maxime necessitatibus ullam.
|
44
|
+
</div>
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
<div class="nav-item dropdown">
|
49
|
+
<a href="#" class="nav-link d-flex lh-1 text-reset p-0" data-bs-toggle="dropdown" aria-label="Open user menu">
|
50
|
+
<span class="avatar avatar-sm" style="background-image: url(<%= asset_path "admin/avatars/000m.jpg" %>)"></span>
|
51
|
+
<div class="d-none d-xl-block ps-2">
|
52
|
+
<div>Paweł Kuna</div>
|
53
|
+
<div class="mt-1 small text-muted">UI Designer</div>
|
54
|
+
</div>
|
55
|
+
</a>
|
56
|
+
<div class="dropdown-menu dropdown-menu-end dropdown-menu-arrow">
|
57
|
+
<a href="#" class="dropdown-item">Set status</a>
|
58
|
+
<a href="#" class="dropdown-item">Profile & account</a>
|
59
|
+
<a href="#" class="dropdown-item">Feedback</a>
|
60
|
+
<div class="dropdown-divider"></div>
|
61
|
+
<a href="#" class="dropdown-item">Settings</a>
|
62
|
+
<%= button_to "Logout", admin_sign_out_path, method: :delete, class: "dropdown-item" %>
|
63
|
+
</div>
|
64
|
+
</div>
|
65
|
+
</div>
|
66
|
+
</div>
|
67
|
+
</header>
|
@@ -0,0 +1,31 @@
|
|
1
|
+
<div class="navbar-expand-md">
|
2
|
+
<div class="collapse navbar-collapse" id="navbar-menu">
|
3
|
+
<div class="navbar navbar-light">
|
4
|
+
<div class="container-fluid">
|
5
|
+
<ul class="navbar-nav">
|
6
|
+
<li class="nav-item <%= active_nav_item 'admin/home' %>">
|
7
|
+
<%= link_to admin_path, class: "nav-link" do %>
|
8
|
+
<span class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/home -->
|
9
|
+
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><polyline points="5 12 3 12 12 3 21 12 19 12" /><path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7" /><path d="M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6" /></svg>
|
10
|
+
</span>
|
11
|
+
<span class="nav-link-title">
|
12
|
+
Dashboard
|
13
|
+
</span>
|
14
|
+
<% end %>
|
15
|
+
</li>
|
16
|
+
<li class="nav-item <%= active_nav_item 'admin/users' %>">
|
17
|
+
<%= link_to admin_users_path, class: "nav-link" do %>
|
18
|
+
<span class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/home -->
|
19
|
+
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><circle cx="9" cy="7" r="4"></circle><path d="M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path><path d="M21 21v-2a4 4 0 0 0 -3 -3.85"></path></svg>
|
20
|
+
</span>
|
21
|
+
<span class="nav-link-title">
|
22
|
+
Admin users
|
23
|
+
</span>
|
24
|
+
<% end %>
|
25
|
+
</li>
|
26
|
+
</ul>
|
27
|
+
<div class="my-2 my-md-0 flex-grow-1 flex-md-grow-0 order-first order-md-last"></div>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
</div>
|
31
|
+
</div>
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<%= form_with(url: admin_password_reset_path, method: :patch, class: "card card-md") do |form| %>
|
2
|
+
<div class="card-body">
|
3
|
+
<h2 class="card-title text-center mb-4">Reset password</h2>
|
4
|
+
|
5
|
+
<%= hidden_field_tag :token, params[:token] %>
|
6
|
+
|
7
|
+
<div class="mb-3">
|
8
|
+
<%= form.label :password, "New password", class: "form-label" %>
|
9
|
+
<%= form.password_field :password, required: true, autofocus: true, autocomplete: "new-password", class: "form-control" %>
|
10
|
+
<%= tag.div @admin_user.errors[:password].first, class: "invalid-feedback d-block" %>
|
11
|
+
</div>
|
12
|
+
|
13
|
+
<div>
|
14
|
+
<%= form.label :password_confirmation, "Confirm new password", class: "form-label" %>
|
15
|
+
<%= form.password_field :password_confirmation, required: true, autocomplete: "new-password", class: "form-control" %>
|
16
|
+
<%= tag.div @admin_user.errors[:password_confirmation].first, class: "invalid-feedback d-block" %>
|
17
|
+
</div>
|
18
|
+
|
19
|
+
<div class="form-footer">
|
20
|
+
<%= form.submit "Save changes", class: "btn btn-primary w-100" %>
|
21
|
+
</div>
|
22
|
+
</div>
|
23
|
+
<% end %>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<%= form_with(url: admin_password_reset_path, class: "card card-md") do |form| %>
|
2
|
+
<div class="card-body">
|
3
|
+
<h2 class="card-title text-center mb-4">Forgot password</h2>
|
4
|
+
<p class="text-muted mb-4">Enter your email address and your password will be reset and emailed to you.</p>
|
5
|
+
<div class="mb-3">
|
6
|
+
<%= form.label :email, class: "form-label" %>
|
7
|
+
<%= form.email_field :email, placeholder: "Enter email", autofocus: true, required: true, class: "form-control" %>
|
8
|
+
</div>
|
9
|
+
<div class="form-footer">
|
10
|
+
<%= form.submit "Send me new password", class: "btn btn-primary w-100" %>
|
11
|
+
</div>
|
12
|
+
</div>
|
13
|
+
<% end %>
|
14
|
+
|
15
|
+
<div class="text-center text-muted mt-3">
|
16
|
+
Forget it, <%= link_to "send me back", admin_sign_in_path %> to the sign in screen.
|
17
|
+
</div>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<%= form_with(url: admin_sign_in_path, class: "card card-md") do |form| %>
|
2
|
+
<div class="card-body">
|
3
|
+
<h2 class="card-title text-center mb-4">Login to your account</h2>
|
4
|
+
<div class="mb-3">
|
5
|
+
<%= form.label :email, class: "form-label" %>
|
6
|
+
<%= form.email_field :email, value: params[:email_hint], placeholder: "Enter email", autofocus: true, required: true, autocomplete: "email", class:"form-control" %>
|
7
|
+
</div>
|
8
|
+
<div class="mb-2">
|
9
|
+
<div class="d-flex justify-content-between">
|
10
|
+
<%= form.label :password, class: "form-label" %>
|
11
|
+
<span class="form-label-description">
|
12
|
+
<%= link_to "I forgot password", new_admin_password_reset_path %>
|
13
|
+
</span>
|
14
|
+
</div>
|
15
|
+
<%= form.password_field :password, placeholder: "Password", required: true, autocomplete: "current-password", class:"form-control" %>
|
16
|
+
</div>
|
17
|
+
<div class="form-footer">
|
18
|
+
<%= form.submit "Sign in", class: "btn btn-primary w-100" %>
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
<% end %>
|
data/lib/generators/admin/install/templates/erb/admin/user_mailer/password_reset_provision.html.erb
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
<p>Hey there,</p>
|
2
|
+
|
3
|
+
<p>Can't remember your password for <strong><%= @admin_user.email %></strong>? That's OK, it happens. Just hit the link below to set a new one.</p>
|
4
|
+
|
5
|
+
<p><%= link_to "Reset my password", edit_admin_password_reset_url(token: @signed_id) %></p>
|
6
|
+
|
7
|
+
<p>If you did not request a password reset you can safely ignore this email, it expires in 20 minutes. Only someone with access to this email account can reset your password.</p>
|
8
|
+
|
9
|
+
<hr>
|
10
|
+
|
11
|
+
<p>Have questions or need help? Just reply to this email and our support team will help you sort it out.</p>
|
data/lib/generators/admin/install/templates/erb/admin/user_mailer/password_reset_provision.text.erb
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
Hey there,
|
2
|
+
|
3
|
+
Can't remember your password for <%= @admin_user.email %>? That's OK, it happens. Just hit the link below to set a new one.
|
4
|
+
|
5
|
+
[Reset my password]<%= edit_admin_password_reset_url(token: @signed_id) %>
|
6
|
+
|
7
|
+
If you did not request a password reset you can safely ignore this email, it expires in 20 minutes. Only someone with access to this email account can reset your password.
|
8
|
+
|
9
|
+
Have questions or need help? Just reply to this email and our support team will help you sort it out.
|
@@ -0,0 +1,30 @@
|
|
1
|
+
<%= form_with(model: admin_user) do |form| %>
|
2
|
+
<div class="form-group row mb-2">
|
3
|
+
<%= form.label :email, class: "form-label col-md-3 col-form-label" %>
|
4
|
+
<div class="col-md px-0">
|
5
|
+
<%= form.email_field :email, autocomplete: "email", class: "form-control" %>
|
6
|
+
<%= tag.div admin_user.errors[:email].first, class: "invalid-feedback" %>
|
7
|
+
</div>
|
8
|
+
</div>
|
9
|
+
|
10
|
+
<div class="form-group row mb-2">
|
11
|
+
<%= form.label :password, class: "form-label col-md-3 col-form-label" %>
|
12
|
+
<div class="col-md px-0">
|
13
|
+
<%= form.password_field :password, required: true, autocomplete: "new-password", class: "form-control" %>
|
14
|
+
<%= tag.div admin_user.errors[:password].first, class: "invalid-feedback" %>
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
|
18
|
+
<div class="form-group row">
|
19
|
+
<%= form.label :password_confirmation, class: "form-label col-md-3 col-form-label" %>
|
20
|
+
<div class="col-md px-0">
|
21
|
+
<%= form.password_field :password_confirmation, required: true, autocomplete: "new-password", class: "form-control" %>
|
22
|
+
<%= tag.div admin_user.errors[:password_confirmation].first, class: "invalid-feedback" %>
|
23
|
+
</div>
|
24
|
+
</div>
|
25
|
+
|
26
|
+
<div class="form-footer">
|
27
|
+
<%= form.submit class: "btn btn-primary" %>
|
28
|
+
<%= link_to "Cancel", admin_users_path, class: "btn btn-light" %>
|
29
|
+
</div>
|
30
|
+
<% end %>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<%= render "page_header" do %>
|
2
|
+
<%= render "page_header_breadcrumb", title: "Editing admin user" do %>
|
3
|
+
<li class="breadcrumb-item"><%= link_to "Admin", admin_path %></li>
|
4
|
+
<li class="breadcrumb-item"><%= link_to "Admin users", admin_users_path %></li>
|
5
|
+
<li class="breadcrumb-item"><%= link_to @admin_user.email, @admin_user %></li>
|
6
|
+
<% end %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<div class="page-body">
|
10
|
+
<div class="container-fluid">
|
11
|
+
<div class="card">
|
12
|
+
<div class="card-body">
|
13
|
+
<%= render "form", admin_user: @admin_user %>
|
14
|
+
</div>
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
</div>
|
@@ -0,0 +1,73 @@
|
|
1
|
+
<%= render "page_header" do %>
|
2
|
+
<%= render "page_header_breadcrumb", title: "Admin users" do %>
|
3
|
+
<li class="breadcrumb-item"><%= link_to "Admin", admin_path %></li>
|
4
|
+
<% end %>
|
5
|
+
|
6
|
+
<%= render "page_header_actions" do %>
|
7
|
+
<%= link_to "New admin user", new_admin_user_path, class: "btn btn-primary" %>
|
8
|
+
<% end %>
|
9
|
+
<% end %>
|
10
|
+
|
11
|
+
<div class="page-body">
|
12
|
+
<div class="container-fluid">
|
13
|
+
<div class="row gy-3">
|
14
|
+
<div class="col-md-4 col-lg-3">
|
15
|
+
<div class="card">
|
16
|
+
<div class="card-header">
|
17
|
+
<h3 class="card-title">Filters</h3>
|
18
|
+
</div>
|
19
|
+
<%= search_form_for @search, class: "card-body" do |f| %>
|
20
|
+
<%= f.label :email_cont, class: "form-label" %>
|
21
|
+
<%= f.text_field :email_cont, class: "form-control mb-3" %>
|
22
|
+
|
23
|
+
<%= f.label :created_at, class: "form-label" %>
|
24
|
+
<div class="d-flex gap-1 mb-3">
|
25
|
+
<%= f.date_field :created_at_gteq, class: "form-control" %>
|
26
|
+
<%= f.date_field :created_at_lteq, class: "form-control" %>
|
27
|
+
</div>
|
28
|
+
|
29
|
+
<%= f.submit "Filter", class: "btn btn-primary" %>
|
30
|
+
<%= link_to "Clear Filter", admin_users_path, class: "btn btn-light" %>
|
31
|
+
<% end %>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
<div class="col-md-8 col-lg-9 order-md-first">
|
35
|
+
<div class="card">
|
36
|
+
<div class="table-responsive">
|
37
|
+
<table class="table table-vcenter card-table table-striped">
|
38
|
+
<thead>
|
39
|
+
<tr>
|
40
|
+
<th><%= sort_link @search, :email %></th>
|
41
|
+
<th><%= sort_link @search, :created_at %></th>
|
42
|
+
<th></th>
|
43
|
+
</tr>
|
44
|
+
</thead>
|
45
|
+
<tbody>
|
46
|
+
<% @admin_users.each do |admin_user| %>
|
47
|
+
<tr>
|
48
|
+
<td><%= admin_user.email %></td>
|
49
|
+
<td><%= l(admin_user.created_at, format: :long) %></td>
|
50
|
+
<td>
|
51
|
+
<%= link_to "View", admin_user, class: "btn btn-light btn-sm" %>
|
52
|
+
<%= link_to "Edit", edit_admin_user_path(admin_user), class: "btn btn-light btn-sm" %>
|
53
|
+
<%= button_to "Delete", admin_user, method: :delete, data: { confirm: "Are you sure ?" }, form_class: "d-inline", class: "btn btn-light btn-sm" %>
|
54
|
+
</td>
|
55
|
+
</tr>
|
56
|
+
<% end %>
|
57
|
+
</tbody>
|
58
|
+
</table>
|
59
|
+
</div>
|
60
|
+
<div class="card-footer d-flex align-items-center fs-5">
|
61
|
+
<div>
|
62
|
+
Download: <%= link_to "CSV", admin_users_path(format: :csv, q: request.params[:q]) %>
|
63
|
+
</div>
|
64
|
+
<div class="ms-auto d-flex align-items-center gap-2">
|
65
|
+
<%== pagy_info @pagy %>
|
66
|
+
<%= render "pagination", pagy: @pagy %>
|
67
|
+
</div>
|
68
|
+
</div>
|
69
|
+
</div>
|
70
|
+
</div>
|
71
|
+
</div>
|
72
|
+
</div>
|
73
|
+
</div>
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<%= render "page_header" do %>
|
2
|
+
<%= render "page_header_breadcrumb", title: "New admin user" do %>
|
3
|
+
<li class="breadcrumb-item"><%= link_to "Admin", admin_path %></li>
|
4
|
+
<li class="breadcrumb-item"><%= link_to "Admin users", admin_users_path %></li>
|
5
|
+
<% end %>
|
6
|
+
<% end %>
|
7
|
+
|
8
|
+
<div class="page-body">
|
9
|
+
<div class="container-fluid">
|
10
|
+
<div class="card">
|
11
|
+
<div class="card-body">
|
12
|
+
<%= render "form", admin_user: @admin_user %>
|
13
|
+
</div>
|
14
|
+
</div>
|
15
|
+
</div>
|
16
|
+
</div>
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<%= render "page_header" do %>
|
2
|
+
<%= render "page_header_breadcrumb", title: @admin_user.email do %>
|
3
|
+
<li class="breadcrumb-item"><%= link_to "Admin", admin_path %></li>
|
4
|
+
<li class="breadcrumb-item"><%= link_to "Admin users", admin_users_path %></li>
|
5
|
+
<% end %>
|
6
|
+
|
7
|
+
<%= render "page_header_actions" do %>
|
8
|
+
<%= link_to "Edit admin user", edit_admin_user_path(@admin_user), class: "btn btn-primary" %>
|
9
|
+
<%= button_to "Delete admin user", @admin_user, method: :delete, data: { confirm: "Are you sure ?" }, form_class: "d-inline", class: "btn btn-light" %>
|
10
|
+
<% end %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
<div class="page-body">
|
14
|
+
<div class="container-fluid">
|
15
|
+
<div class="card">
|
16
|
+
<div class="card-header">
|
17
|
+
<h3 class="card-title">Admin user details</h3>
|
18
|
+
</div>
|
19
|
+
<div class="card-body">
|
20
|
+
<dl class="row">
|
21
|
+
<dt class="col-md-3">Email</dt>
|
22
|
+
<dd class="col-md-9"><%= @admin_user.email %></dd>
|
23
|
+
|
24
|
+
<dt class="col-md-3">Created at</dt>
|
25
|
+
<dd class="col-md-9"><%= l(@admin_user.created_at, format: :long) %></dd>
|
26
|
+
|
27
|
+
<dt class="col-md-3">Updated at</dt>
|
28
|
+
<dd class="col-md-9"><%= l(@admin_user.updated_at, format: :long) %></dd>
|
29
|
+
</dl>
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
</div>
|
@@ -0,0 +1,28 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head lang="en">
|
4
|
+
<meta charset="utf-8"/>
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/>
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
|
7
|
+
<title><%= title %></title>
|
8
|
+
|
9
|
+
<%= csrf_meta_tags %>
|
10
|
+
<%= csp_meta_tag %>
|
11
|
+
|
12
|
+
<%= render "stylesheet_link_tags" %>
|
13
|
+
</head>
|
14
|
+
|
15
|
+
<body>
|
16
|
+
<%= render "primary_navbar" %>
|
17
|
+
<%= render "secondary_navbar" %>
|
18
|
+
|
19
|
+
<div class="page">
|
20
|
+
<div class="page-wrapper">
|
21
|
+
<%= yield %>
|
22
|
+
<%= render "footer" %>
|
23
|
+
</div>
|
24
|
+
</div>
|
25
|
+
|
26
|
+
<%= render "javascript_tags" %>
|
27
|
+
</body>
|
28
|
+
</html>
|
@@ -0,0 +1,34 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head lang="en">
|
4
|
+
<meta charset="utf-8"/>
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/>
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
|
7
|
+
<title>Authentication Zero</title>
|
8
|
+
|
9
|
+
<%= csrf_meta_tags %>
|
10
|
+
<%= csp_meta_tag %>
|
11
|
+
|
12
|
+
<%= render "stylesheet_link_tags" %>
|
13
|
+
</head>
|
14
|
+
|
15
|
+
<body class="border-top-wide border-primary d-flex flex-column">
|
16
|
+
<div class="page page-center">
|
17
|
+
<div class="page page-center">
|
18
|
+
<div class="container-tight py-4">
|
19
|
+
<div class="text-center mb-4">
|
20
|
+
<%= link_to admin_sign_in_path, class: "navbar-brand navbar-brand-autodark" do %>
|
21
|
+
<%= image_tag "admin/logo.svg", height: 36 %>
|
22
|
+
<% end %>
|
23
|
+
</div>
|
24
|
+
<div class="text-center mb-2">
|
25
|
+
<%= render "flash_messages" %>
|
26
|
+
</div>
|
27
|
+
<%= yield %>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
</div>
|
31
|
+
|
32
|
+
<%= render "javascript_tags" %>
|
33
|
+
</body>
|
34
|
+
</html>
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Admin::ApplicationHelper
|
2
|
+
include Pagy::Frontend
|
3
|
+
|
4
|
+
def title
|
5
|
+
content_for(:title) || Rails.application.class.to_s.split('::').first
|
6
|
+
end
|
7
|
+
|
8
|
+
def active_nav_item(controller, actions = %w( index show new edit create update))
|
9
|
+
"active" if active_actions?(controller, actions)
|
10
|
+
end
|
11
|
+
|
12
|
+
def np(number, options = {})
|
13
|
+
number_with_precision number, options
|
14
|
+
end
|
15
|
+
|
16
|
+
def nd(number, options = {})
|
17
|
+
number_with_delimiter number, options
|
18
|
+
end
|
19
|
+
|
20
|
+
def localize(object, **options)
|
21
|
+
super(object, **options) if object
|
22
|
+
end
|
23
|
+
|
24
|
+
alias :l :localize
|
25
|
+
|
26
|
+
private
|
27
|
+
def active_actions?(controller, actions)
|
28
|
+
params[:controller].include?(controller) && actions.include?(params[:action])
|
29
|
+
end
|
30
|
+
end
|