├── spec
├── dummy
│ ├── app
│ │ ├── mailers
│ │ │ └── .keep
│ │ ├── models
│ │ │ ├── .keep
│ │ │ └── concerns
│ │ │ │ └── .keep
│ │ ├── assets
│ │ │ ├── images
│ │ │ │ └── .keep
│ │ │ ├── config
│ │ │ │ └── manifest.js
│ │ │ ├── stylesheets
│ │ │ │ └── application.css
│ │ │ └── javascripts
│ │ │ │ └── application.js
│ │ ├── controllers
│ │ │ ├── concerns
│ │ │ │ └── .keep
│ │ │ └── application_controller.rb
│ │ ├── helpers
│ │ │ └── application_helper.rb
│ │ └── views
│ │ │ └── layouts
│ │ │ └── application.html.erb
│ ├── lib
│ │ └── assets
│ │ │ └── .keep
│ ├── .rspec
│ ├── public
│ │ └── favicon.ico
│ ├── .browserslistrc
│ ├── bin
│ │ ├── rake
│ │ ├── bundle
│ │ ├── rails
│ │ ├── webpack
│ │ └── webpack-dev-server
│ ├── config
│ │ ├── routes.rb
│ │ ├── webpack
│ │ │ ├── environment.js
│ │ │ ├── test.js
│ │ │ ├── production.js
│ │ │ └── development.js
│ │ ├── environment.rb
│ │ ├── initializers
│ │ │ ├── session_store.rb
│ │ │ ├── filter_parameter_logging.rb
│ │ │ ├── mime_types.rb
│ │ │ ├── backtrace_silencers.rb
│ │ │ ├── wrap_parameters.rb
│ │ │ ├── secret_token.rb
│ │ │ └── inflections.rb
│ │ ├── boot.rb
│ │ ├── locales
│ │ │ └── en.yml
│ │ └── application.rb
│ ├── config.ru
│ ├── package.json
│ ├── .sample.env
│ ├── Rakefile
│ └── postcss.config.js
├── fixtures
│ └── files
│ │ └── sample_image.jpg
├── mokio_test.rb
├── factories
│ ├── content_links_factory.rb
│ ├── files.rb
│ ├── users.rb
│ ├── contact_templates.rb
│ ├── selected_modules.rb
│ ├── recipients.rb
│ ├── common_factory.rb
│ ├── langs.rb
│ └── static_modules_factory.rb
├── integration
│ └── navigation_test.rb
├── models
│ ├── content_link_spec.rb
│ ├── contact_template_spec.rb
│ ├── lang_spec.rb
│ ├── recipient_spec.rb
│ └── module_position_spec.rb
└── test_helper.rb
├── lib
├── mokio
│ ├── uploader.rb
│ ├── common.rb
│ ├── version.rb
│ ├── concerns
│ │ ├── models
│ │ │ ├── history.rb
│ │ │ ├── article.rb
│ │ │ ├── recipient.rb
│ │ │ ├── mov_gallery.rb
│ │ │ ├── selected_module.rb
│ │ │ ├── content_link.rb
│ │ │ ├── pic_gallery.rb
│ │ │ ├── contact_template.rb
│ │ │ └── youtube.rb
│ │ └── controllers
│ │ │ ├── contents.rb
│ │ │ ├── langs.rb
│ │ │ ├── main_pics.rb
│ │ │ ├── module_positions.rb
│ │ │ └── external_scripts.rb
│ ├── frontend_helpers.rb
│ ├── headers_helper.rb
│ ├── slugged.rb
│ ├── core_extension.rb
│ ├── custom_gallery.rb
│ ├── logger.rb
│ ├── solr_config.rb
│ └── sluglize.rb
├── generators
│ └── mokio
│ │ ├── templates
│ │ ├── contents
│ │ │ ├── _sidebar_btn.html.slim
│ │ │ ├── views_template.yml
│ │ │ └── model.rb
│ │ └── _google_analytics.html.slim
│ │ ├── copy
│ │ ├── views_generator.rb
│ │ └── assets_generator.rb
│ │ ├── positions_generator.rb
│ │ ├── btr_generator.rb
│ │ └── install_generator.rb
└── tasks
│ ├── create_editable_blocks_ids.rake
│ ├── mokio_rollback.rake
│ ├── mokio_install
│ ├── reset_pg_sequence.rake
│ ├── install_webpack.rake
│ ├── create_configuration_file.rake
│ ├── create_module_positions.rake
│ ├── install_routes.rake
│ └── create_langs.rake
│ ├── sitemap.rake
│ ├── refresh_static_pages.rake
│ ├── add_custom_js.rake
│ └── ckeditor_create_nondigest_assets.rake
├── app
├── assets
│ ├── images
│ │ └── backend
│ │ │ ├── watermark.png.BASE.21459.png
│ │ │ ├── watermark.png.BASE.21617.png
│ │ │ ├── icons
│ │ │ ├── index.html
│ │ │ ├── minus.png
│ │ │ ├── plus.png
│ │ │ ├── external.png
│ │ │ ├── arrow-left.png
│ │ │ ├── arrow-right.png
│ │ │ ├── left-arrow.png
│ │ │ └── right-arrow.png
│ │ │ ├── logo.png
│ │ │ ├── arrowup.png
│ │ │ ├── favicon.ico
│ │ │ ├── handle.png
│ │ │ ├── handle1.png
│ │ │ ├── loader.png
│ │ │ ├── search.png
│ │ │ ├── select.png
│ │ │ ├── spinner.png
│ │ │ ├── arrowdown.png
│ │ │ ├── checkbox.png
│ │ │ ├── sidebarbg.png
│ │ │ ├── ui.totop.png
│ │ │ ├── watermark.png
│ │ │ ├── ajax-loader.gif
│ │ │ ├── choose-file.png
│ │ │ ├── logo_bloom.png
│ │ │ ├── patterns
│ │ │ ├── 1.png
│ │ │ ├── 2-1.png
│ │ │ ├── 2-2.png
│ │ │ ├── 2.png
│ │ │ ├── 3-1.png
│ │ │ ├── 3.png
│ │ │ ├── 4-1.png
│ │ │ ├── 4-2.png
│ │ │ ├── 4.png
│ │ │ ├── 5.png
│ │ │ ├── 6.png
│ │ │ ├── 7.png
│ │ │ ├── 8.png
│ │ │ ├── body
│ │ │ │ ├── 1.png
│ │ │ │ ├── 2.png
│ │ │ │ ├── 3.png
│ │ │ │ ├── 4.png
│ │ │ │ ├── dust.png
│ │ │ │ ├── grey.png
│ │ │ │ ├── dust_@2X.png
│ │ │ │ ├── grey_@2X.png
│ │ │ │ ├── cream_dust.png
│ │ │ │ ├── subtle_dots.png
│ │ │ │ ├── cream_dust_@2X.png
│ │ │ │ └── subtle_dots_@2X.png
│ │ │ ├── header.png
│ │ │ ├── header
│ │ │ │ ├── 1.png
│ │ │ │ ├── 2.png
│ │ │ │ ├── 3.png
│ │ │ │ ├── 4.png
│ │ │ │ ├── grid.png
│ │ │ │ ├── grid_@2X.png
│ │ │ │ ├── bedge_grunge.png
│ │ │ │ ├── nasty_fabric.png
│ │ │ │ ├── natural_paper.png
│ │ │ │ ├── bedge_grunge_@2X.png
│ │ │ │ ├── nasty_fabric_@2X.png
│ │ │ │ └── natural_paper_@2X.png
│ │ │ ├── topbarbg.png
│ │ │ ├── sidebar
│ │ │ │ ├── 1.png
│ │ │ │ ├── 2.png
│ │ │ │ ├── 3.png
│ │ │ │ ├── 4.png
│ │ │ │ ├── grey.png
│ │ │ │ ├── az_subtle.png
│ │ │ │ ├── grey_@2X.png
│ │ │ │ ├── noise_lines.png
│ │ │ │ ├── az_subtle_@2X.png
│ │ │ │ ├── billie_holiday.png
│ │ │ │ ├── noise_lines_@2X.png
│ │ │ │ └── billie_holiday_@2X.png
│ │ │ ├── sidebarbg1.png
│ │ │ └── sidebarbg2.png
│ │ │ ├── fonts
│ │ │ ├── icomoon.eot
│ │ │ ├── icomoon.ttf
│ │ │ └── icomoon.woff
│ │ │ ├── loaders
│ │ │ ├── 3d
│ │ │ │ ├── 015.gif
│ │ │ │ ├── 019.gif
│ │ │ │ ├── 026.gif
│ │ │ │ ├── 028.gif
│ │ │ │ ├── 039.gif
│ │ │ │ ├── 067.gif
│ │ │ │ └── 071.gif
│ │ │ ├── circular
│ │ │ │ ├── 001.gif
│ │ │ │ ├── 002.gif
│ │ │ │ ├── 003.gif
│ │ │ │ ├── 007.gif
│ │ │ │ ├── 008.gif
│ │ │ │ ├── 010.gif
│ │ │ │ ├── 011.gif
│ │ │ │ ├── 012.gif
│ │ │ │ ├── 013.gif
│ │ │ │ ├── 016.gif
│ │ │ │ ├── 017.gif
│ │ │ │ ├── 020.gif
│ │ │ │ ├── 021.gif
│ │ │ │ ├── 022.gif
│ │ │ │ ├── 023.gif
│ │ │ │ ├── 025.gif
│ │ │ │ ├── 027.gif
│ │ │ │ ├── 029.gif
│ │ │ │ ├── 030.gif
│ │ │ │ ├── 033.gif
│ │ │ │ ├── 034.gif
│ │ │ │ ├── 035.gif
│ │ │ │ ├── 038.gif
│ │ │ │ ├── 040.gif
│ │ │ │ ├── 041.gif
│ │ │ │ ├── 042.gif
│ │ │ │ ├── 044.gif
│ │ │ │ ├── 046.gif
│ │ │ │ ├── 047.gif
│ │ │ │ ├── 049.gif
│ │ │ │ ├── 050.gif
│ │ │ │ ├── 051.gif
│ │ │ │ ├── 052.gif
│ │ │ │ ├── 054.gif
│ │ │ │ ├── 055.gif
│ │ │ │ ├── 056.gif
│ │ │ │ ├── 059.gif
│ │ │ │ ├── 060.gif
│ │ │ │ ├── 061.gif
│ │ │ │ ├── 064.gif
│ │ │ │ ├── 065.gif
│ │ │ │ ├── 066.gif
│ │ │ │ ├── 068.gif
│ │ │ │ ├── 069.gif
│ │ │ │ ├── 070.gif
│ │ │ │ └── 072.gif
│ │ │ └── horizontal
│ │ │ │ ├── 004.gif
│ │ │ │ ├── 005.gif
│ │ │ │ ├── 006.gif
│ │ │ │ ├── 009.gif
│ │ │ │ ├── 014.gif
│ │ │ │ ├── 018.gif
│ │ │ │ ├── 024.gif
│ │ │ │ ├── 031.gif
│ │ │ │ ├── 032.gif
│ │ │ │ ├── 036.gif
│ │ │ │ ├── 037.gif
│ │ │ │ ├── 043.gif
│ │ │ │ ├── 045.gif
│ │ │ │ ├── 048.gif
│ │ │ │ ├── 053.gif
│ │ │ │ ├── 057.gif
│ │ │ │ ├── 058.gif
│ │ │ │ ├── 062.gif
│ │ │ │ └── 063.gif
│ │ │ ├── uniform
│ │ │ ├── radio.png
│ │ │ ├── select.png
│ │ │ ├── checkbox.png
│ │ │ ├── select1.png
│ │ │ ├── select2.png
│ │ │ └── choose-file.png
│ │ │ ├── gallery
│ │ │ ├── preload.png
│ │ │ ├── default
│ │ │ │ ├── loader.gif
│ │ │ │ ├── sprite.png
│ │ │ │ ├── sprite_x.png
│ │ │ │ ├── sprite_y.png
│ │ │ │ ├── sprite_next.png
│ │ │ │ ├── sprite_prev.png
│ │ │ │ └── default_thumb.png
│ │ │ ├── facebook
│ │ │ │ ├── btnNext.png
│ │ │ │ ├── loader.gif
│ │ │ │ ├── sprite.png
│ │ │ │ ├── btnPrevious.png
│ │ │ │ ├── contentPatternTop.png
│ │ │ │ ├── default_thumbnail.gif
│ │ │ │ ├── contentPatternBottom.png
│ │ │ │ ├── contentPatternLeft.png
│ │ │ │ └── contentPatternRight.png
│ │ │ ├── dark_rounded
│ │ │ │ ├── loader.gif
│ │ │ │ ├── sprite.png
│ │ │ │ ├── btnNext.png
│ │ │ │ ├── btnPrevious.png
│ │ │ │ ├── contentPattern.png
│ │ │ │ └── default_thumbnail.gif
│ │ │ ├── dark_square
│ │ │ │ ├── btnNext.png
│ │ │ │ ├── loader.gif
│ │ │ │ ├── sprite.png
│ │ │ │ ├── btnPrevious.png
│ │ │ │ ├── contentPattern.png
│ │ │ │ └── default_thumbnail.gif
│ │ │ ├── light_square
│ │ │ │ ├── loader.gif
│ │ │ │ ├── sprite.png
│ │ │ │ ├── btnNext.png
│ │ │ │ ├── btnPrevious.png
│ │ │ │ └── default_thumbnail.gif
│ │ │ └── light_rounded
│ │ │ │ ├── btnNext.png
│ │ │ │ ├── loader.gif
│ │ │ │ ├── sprite.png
│ │ │ │ ├── btnPrevious.png
│ │ │ │ └── default_thumbnail.gif
│ │ │ ├── glyphicons-halflings.png
│ │ │ ├── glyphicons-halflings-white.png
│ │ │ ├── plugins
│ │ │ ├── data_tables
│ │ │ │ ├── search.png
│ │ │ │ ├── sort_asc.png
│ │ │ │ ├── sort_both.png
│ │ │ │ ├── sort_desc.png
│ │ │ │ ├── sort_asc_disabled.png
│ │ │ │ └── sort_desc_disabled.png
│ │ │ └── forms
│ │ │ │ └── select2
│ │ │ │ ├── select2.png
│ │ │ │ └── spinner.gif
│ │ │ ├── ui-bg_flat_75_ffffff_40x100.png
│ │ │ ├── watermark.png.BACKUP.21459.png
│ │ │ ├── watermark.png.BACKUP.21617.png
│ │ │ ├── watermark.png.LOCAL.21459.png
│ │ │ ├── watermark.png.LOCAL.21617.png
│ │ │ ├── watermark.png.REMOTE.21459.png
│ │ │ └── watermark.png.REMOTE.21617.png
│ ├── javascripts
│ │ ├── backend
│ │ │ ├── ckeditor4.js
│ │ │ ├── errors.js
│ │ │ ├── help-engine
│ │ │ │ └── help-engine.js
│ │ │ ├── index_filter_fields.js
│ │ │ ├── comments.js.coffee
│ │ │ ├── custom.js
│ │ │ ├── galleries.js
│ │ │ ├── custom_tabs.js
│ │ │ ├── plugins
│ │ │ │ └── files
│ │ │ │ │ └── plupload
│ │ │ │ │ └── i18n
│ │ │ │ │ ├── da.js
│ │ │ │ │ ├── sv.js
│ │ │ │ │ ├── sr.js
│ │ │ │ │ ├── cs.js
│ │ │ │ │ └── el.js
│ │ │ ├── head.js
│ │ │ ├── load_histories.js.erb
│ │ │ └── mokio_dynamic_fields.js
│ │ └── mokio.js.erb
│ ├── fonts
│ │ └── backend
│ │ │ ├── index.html
│ │ │ ├── minia.eot
│ │ │ ├── minia.ttf
│ │ │ ├── cuticons.eot
│ │ │ ├── cuticons.ttf
│ │ │ ├── ecoico.eot
│ │ │ ├── ecoico.ttf
│ │ │ ├── ecoico.woff
│ │ │ ├── entypo.eot
│ │ │ ├── entypo.ttf
│ │ │ ├── entypo.woff
│ │ │ ├── icomoon.eot
│ │ │ ├── icomoon.ttf
│ │ │ ├── icomoon.woff
│ │ │ ├── iconic.eot
│ │ │ ├── iconic.ttf
│ │ │ ├── iconic.woff
│ │ │ ├── minia.woff
│ │ │ ├── silkcons.eot
│ │ │ ├── silkcons.ttf
│ │ │ ├── typicons.eot
│ │ │ ├── typicons.ttf
│ │ │ ├── wpzoom.eot
│ │ │ ├── wpzoom.ttf
│ │ │ ├── wpzoom.woff
│ │ │ ├── cuticons.woff
│ │ │ ├── meteocons.eot
│ │ │ ├── meteocons.ttf
│ │ │ ├── meteocons.woff
│ │ │ ├── silkcons.woff
│ │ │ ├── typicons.woff
│ │ │ ├── broccolidry.eot
│ │ │ ├── broccolidry.ttf
│ │ │ ├── broccolidry.woff
│ │ │ ├── moxieplayer.swf
│ │ │ └── plupload.flash.swf
│ └── stylesheets
│ │ ├── dashboard.scss
│ │ ├── backend
│ │ ├── plugins
│ │ │ ├── forms
│ │ │ │ ├── uniform
│ │ │ │ │ ├── radio.png
│ │ │ │ │ ├── select.png
│ │ │ │ │ ├── select1.png
│ │ │ │ │ ├── select2.png
│ │ │ │ │ ├── checkbox.png
│ │ │ │ │ └── choose-file.png
│ │ │ │ ├── color-picker
│ │ │ │ │ ├── mask.png
│ │ │ │ │ ├── wheel.png
│ │ │ │ │ └── marker.png
│ │ │ │ └── validate
│ │ │ │ │ └── validate.css
│ │ │ ├── misc
│ │ │ │ └── search
│ │ │ │ │ ├── loader.gif
│ │ │ │ │ └── search.gif
│ │ │ └── tables
│ │ │ │ └── dataTables
│ │ │ │ └── images
│ │ │ │ ├── sort_asc.png
│ │ │ │ ├── sort_both.png
│ │ │ │ ├── sort_desc.png
│ │ │ │ ├── back_disabled.png
│ │ │ │ ├── back_enabled.png
│ │ │ │ ├── forward_disabled.png
│ │ │ │ ├── forward_enabled.png
│ │ │ │ ├── back_enabled_hover.png
│ │ │ │ ├── sort_asc_disabled.png
│ │ │ │ ├── sort_desc_disabled.png
│ │ │ │ └── forward_enabled_hover.png
│ │ ├── supr-theme
│ │ │ ├── images
│ │ │ │ ├── ui-icons_2e83ff_256x240.png
│ │ │ │ ├── ui-icons_353535_256x240.png
│ │ │ │ ├── ui-icons_454545_256x240.png
│ │ │ │ ├── ui-icons_ed7a53_256x240.png
│ │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png
│ │ │ │ ├── ui-bg_flat_75_ffffff_40x100.png
│ │ │ │ ├── ui-bg_glass_55_9fc569_1x400.png
│ │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png
│ │ │ │ ├── ui-bg_glass_95_fef1ec_1x400.png
│ │ │ │ ├── ui-bg_dots-small_75_dedede_2x2.png
│ │ │ │ ├── ui-bg_dots-small_75_f7f7f7_2x2.png
│ │ │ │ └── ui-bg_diagonals-small_100_f4f4f4_40x40.png
│ │ │ ├── jquery.ui.supr.scss
│ │ │ ├── jquery.ui.combobox.css
│ │ │ └── jquery-ui-timepicker-addon.scss
│ │ ├── errors.scss
│ │ ├── dashboard.scss
│ │ ├── new.scss
│ │ ├── theme
│ │ │ └── nice-select
│ │ │ │ └── style.scss
│ │ └── comments.scss
│ │ └── mokio
│ │ └── application.css
├── views
│ ├── mokio
│ │ ├── application_settings_groups
│ │ │ └── _form.html.slim
│ │ ├── external_scripts
│ │ │ └── _form.html.slim
│ │ ├── module_positions
│ │ │ └── _form.html.slim
│ │ ├── pic_galleries
│ │ │ └── _form.html.slim
│ │ ├── contents
│ │ │ ├── delete_main_pic.js.slim
│ │ │ ├── _common.slim
│ │ │ └── _content_info_widget.html.slim
│ │ ├── menus
│ │ │ ├── update_menu_breadcrumps.js.slim
│ │ │ ├── lang_changed.js.slim
│ │ │ └── new_menu_position.slim
│ │ ├── mov_galleries
│ │ │ └── _form.html.slim
│ │ ├── common
│ │ │ ├── _notice.html.slim
│ │ │ ├── copy.html.slim
│ │ │ ├── filters
│ │ │ │ ├── _text.html.slim
│ │ │ │ ├── _date.html.slim
│ │ │ │ └── _select.html.slim
│ │ │ ├── modals
│ │ │ │ └── _modal_histories.html.slim
│ │ │ ├── _main_pic.html.slim
│ │ │ ├── new.html.slim
│ │ │ ├── edit.html.slim
│ │ │ ├── _mokio_filters.html.slim
│ │ │ └── _obj.html.slim
│ │ ├── youtubes
│ │ │ ├── find.js.slim
│ │ │ ├── _preview_movie.html.slim
│ │ │ ├── _new.html.slim
│ │ │ ├── preview_movie.js.slim
│ │ │ ├── _search_yt.html.slim
│ │ │ ├── _search_yt_body.html.slim
│ │ │ ├── uploader.html.slim
│ │ │ └── thumb.html.slim
│ │ ├── histories
│ │ │ ├── get_n_more.js.slim
│ │ │ └── elements
│ │ │ │ └── _histories_list.html.slim
│ │ ├── photos
│ │ │ ├── get_photo.js.slim
│ │ │ ├── get_thumb.js.slim
│ │ │ ├── _data_file_info.html.slim
│ │ │ ├── update.js.slim
│ │ │ ├── destroy.js.slim
│ │ │ ├── _edit_photo_form.html.slim
│ │ │ ├── create.js.slim
│ │ │ ├── upload_external_links.js.slim
│ │ │ ├── thumb.html.slim
│ │ │ ├── crop_thumb.js.slim
│ │ │ ├── rotate_thumb.js.slim
│ │ │ ├── crop_photo.js.slim
│ │ │ ├── rotate_photo.js.slim
│ │ │ ├── remove_thumb.js.slim
│ │ │ └── update_thumb.js.slim
│ │ ├── layout
│ │ │ ├── sidebar_support.html.slim
│ │ │ ├── _user_widget.html.slim
│ │ │ └── header.html.slim
│ │ ├── langs
│ │ │ └── _form.html.slim
│ │ ├── default_mailer
│ │ │ ├── msg.html.haml
│ │ │ └── msg.html.slim
│ │ ├── registration_mailer
│ │ │ └── send_pass_setup_instruction.html.slim
│ │ ├── users
│ │ │ ├── _generate_pass_change_link.html.slim
│ │ │ └── edit_password.html.slim
│ │ ├── errors
│ │ │ └── unauthorized.html.slim
│ │ ├── static_pages
│ │ │ └── _form.html.slim
│ │ ├── support
│ │ │ └── index.html.slim
│ │ ├── dashboard
│ │ │ ├── _content.html.slim
│ │ │ └── tbl_content.html.slim
│ │ ├── application_settings
│ │ │ └── _form.html.slim
│ │ ├── editor_panel
│ │ │ └── panel.html.erb
│ │ └── data_files
│ │ │ └── uploader.html.slim
│ └── devise
│ │ └── mailer
│ │ └── reset_password_instructions.html.slim
├── models
│ ├── mokio
│ │ ├── mailer.rb
│ │ ├── seo_tag.rb
│ │ ├── backend_search.rb
│ │ ├── history.rb
│ │ ├── static_page.rb
│ │ ├── editable_block.rb
│ │ ├── external_script.rb
│ │ ├── application_setting.rb
│ │ ├── application_settings_group.rb
│ │ ├── sitemap_external_logic.rb
│ │ ├── content_link.rb
│ │ ├── contact_template.rb
│ │ ├── module_position.rb
│ │ ├── lang.rb
│ │ ├── available_module.rb
│ │ ├── recipient.rb
│ │ ├── selected_module.rb
│ │ └── support.rb
│ ├── devise_custom_failure.rb
│ └── ckeditor
│ │ ├── picture.rb
│ │ ├── asset.rb
│ │ └── attachment_file.rb
├── controllers
│ └── mokio
│ │ ├── langs_controller.rb
│ │ ├── menus_controller.rb
│ │ ├── users_controller.rb
│ │ ├── articles_controller.rb
│ │ ├── contents_controller.rb
│ │ ├── photos_controller.rb
│ │ ├── histories_controller.rb
│ │ ├── youtubes_controller.rb
│ │ ├── contacts_controller.rb
│ │ ├── data_files_controller.rb
│ │ ├── sessions_controller.rb
│ │ ├── static_pages_controller.rb
│ │ ├── backend_search_controller.rb
│ │ ├── cke_file_browser_controller.rb
│ │ ├── editable_blocks_controller.rb
│ │ ├── mov_galleries_controller.rb
│ │ ├── pic_galleries_controller.rb
│ │ ├── static_modules_controller.rb
│ │ ├── base_controller.rb
│ │ ├── external_scripts_controller.rb
│ │ ├── module_positions_controller.rb
│ │ ├── dashboard_controller.rb
│ │ ├── application_controller.rb
│ │ ├── support_controller.rb
│ │ ├── application_settings_groups_controller.rb
│ │ └── common_controller.rb
├── mailers
│ └── mokio
│ │ ├── default_mailer.rb
│ │ └── registration_mailer.rb
├── helpers
│ └── mokio
│ │ └── backend
│ │ ├── application_helper.rb
│ │ └── user_helper.rb
├── uploaders
│ └── mokio
│ │ ├── thumb_uploader.rb
│ │ ├── main_pic_uploader.rb
│ │ └── data_file_uploader.rb
└── datatables
│ └── datatable_backend_search.rb
├── config
├── initializers
│ ├── logs.rb
│ ├── frontend.rb
│ ├── renderer.rb
│ └── sessions.rb
└── views.yml
├── .rspec
├── db
└── migrate
│ ├── 20200813083824_add_slug_to_mokio_contents.rb
│ ├── 20200216211300_add_session_token_to_mokio_users.rb
│ ├── 20220113134531_create_mokio_application_settings_groups.rb
│ ├── 20200311015923_add_imageable_to_data_files.rb
│ ├── 20200218022320_add_lockable_to_mokio_users.rb
│ ├── 20191217135611_create_mokio_seo_tags.rb
│ ├── 20200303101501_create_mokio_histories.rb
│ ├── 20210414105700_create_editable_blocks.rb
│ └── 20220113135021_create_mokio_application_settings.rb
├── docs
└── backend_search.md
├── bin
└── rails
└── .gitignore
/spec/dummy/app/mailers/.keep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/spec/dummy/app/models/.keep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/spec/dummy/lib/assets/.keep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/spec/dummy/.rspec:
--------------------------------------------------------------------------------
1 | --color
2 |
--------------------------------------------------------------------------------
/spec/dummy/public/favicon.ico:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/spec/dummy/app/assets/images/.keep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/spec/dummy/app/models/concerns/.keep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/spec/dummy/.browserslistrc:
--------------------------------------------------------------------------------
1 | defaults
2 |
--------------------------------------------------------------------------------
/spec/dummy/app/assets/config/manifest.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/spec/dummy/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/lib/mokio/uploader.rb:
--------------------------------------------------------------------------------
1 | require "mokio/uploader/asset"
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.BASE.21459.png:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.BASE.21617.png:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/config/initializers/logs.rb:
--------------------------------------------------------------------------------
1 | MOKIO_LOG = Mokio::Logger.new
2 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/ckeditor4.js:
--------------------------------------------------------------------------------
1 | //= require ckeditor/init
2 |
--------------------------------------------------------------------------------
/app/assets/fonts/backend/index.html:
--------------------------------------------------------------------------------
1 |
Direct access to directory is forbiden!
--------------------------------------------------------------------------------
/app/views/mokio/application_settings_groups/_form.html.slim:
--------------------------------------------------------------------------------
1 | = f.input :name
2 |
--------------------------------------------------------------------------------
/spec/dummy/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/app/views/mokio/external_scripts/_form.html.slim:
--------------------------------------------------------------------------------
1 | = f.input :name
2 | = f.input :script
--------------------------------------------------------------------------------
/app/views/mokio/module_positions/_form.html.slim:
--------------------------------------------------------------------------------
1 | = f.input :name
2 | = f.input :tpl
3 |
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/index.html:
--------------------------------------------------------------------------------
1 | Direct access to directory is forbiden!
--------------------------------------------------------------------------------
/lib/mokio/common.rb:
--------------------------------------------------------------------------------
1 | require "mokio/common/model.rb"
2 | require "mokio/common/controller.rb"
--------------------------------------------------------------------------------
/.rspec:
--------------------------------------------------------------------------------
1 | --color
2 |
3 | # Comment it out if you prefer dotted test output
4 | --format documentation
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/errors.js:
--------------------------------------------------------------------------------
1 | //= require jquery
2 | //= require backend/bootstrap/bootstrap
--------------------------------------------------------------------------------
/app/assets/stylesheets/dashboard.scss:
--------------------------------------------------------------------------------
1 | .dashboard-box {
2 | height: 300px;
3 | overflow: auto;
4 |
5 | }
--------------------------------------------------------------------------------
/app/assets/fonts/backend/minia.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/minia.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/minia.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/minia.ttf
--------------------------------------------------------------------------------
/app/assets/images/backend/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/logo.png
--------------------------------------------------------------------------------
/app/views/mokio/pic_galleries/_form.html.slim:
--------------------------------------------------------------------------------
1 | = render :partial => "mokio/pic_galleries/form_inputs", locals: {f:f}
--------------------------------------------------------------------------------
/lib/mokio/version.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | #
3 | # Actual Mokio version
4 | #
5 | VERSION = '2.14.2'
6 | end
7 |
--------------------------------------------------------------------------------
/app/assets/fonts/backend/cuticons.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/cuticons.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/cuticons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/cuticons.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/ecoico.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/ecoico.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/ecoico.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/ecoico.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/ecoico.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/ecoico.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/entypo.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/entypo.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/entypo.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/entypo.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/entypo.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/entypo.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/icomoon.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/icomoon.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/icomoon.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/icomoon.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/icomoon.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/icomoon.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/iconic.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/iconic.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/iconic.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/minia.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/minia.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/silkcons.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/silkcons.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/silkcons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/silkcons.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/typicons.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/typicons.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/typicons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/typicons.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/wpzoom.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/wpzoom.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/wpzoom.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/wpzoom.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/wpzoom.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/wpzoom.woff
--------------------------------------------------------------------------------
/app/assets/images/backend/arrowup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/arrowup.png
--------------------------------------------------------------------------------
/app/assets/images/backend/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/favicon.ico
--------------------------------------------------------------------------------
/app/assets/images/backend/handle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/handle.png
--------------------------------------------------------------------------------
/app/assets/images/backend/handle1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/handle1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/loader.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loader.png
--------------------------------------------------------------------------------
/app/assets/images/backend/search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/search.png
--------------------------------------------------------------------------------
/app/assets/images/backend/select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/select.png
--------------------------------------------------------------------------------
/app/assets/images/backend/spinner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/spinner.png
--------------------------------------------------------------------------------
/app/models/mokio/mailer.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class Mailer
3 | include Mokio::Concerns::Models::Mailer
4 | end
5 | end
--------------------------------------------------------------------------------
/app/views/mokio/contents/delete_main_pic.js.slim:
--------------------------------------------------------------------------------
1 | | $(".article-mainpic, .delete-mainpic-button").css("display", "none");
--------------------------------------------------------------------------------
/app/views/mokio/menus/update_menu_breadcrumps.js.slim:
--------------------------------------------------------------------------------
1 | | $('#menu_breadcrumps').html('#{tree_menu_breadcrumbs(@menu)}')
2 |
--------------------------------------------------------------------------------
/app/views/mokio/mov_galleries/_form.html.slim:
--------------------------------------------------------------------------------
1 | = render :partial => "mokio/mov_galleries/form_inputs", locals: {f:f}
2 |
--------------------------------------------------------------------------------
/lib/generators/mokio/templates/contents/_sidebar_btn.html.slim:
--------------------------------------------------------------------------------
1 | =sidebar_btn Mokio::<%=class_name%>, "icomoon-icon-blogger"
--------------------------------------------------------------------------------
/spec/fixtures/files/sample_image.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/spec/fixtures/files/sample_image.jpg
--------------------------------------------------------------------------------
/app/assets/fonts/backend/cuticons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/cuticons.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/meteocons.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/meteocons.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/meteocons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/meteocons.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/meteocons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/meteocons.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/silkcons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/silkcons.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/typicons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/typicons.woff
--------------------------------------------------------------------------------
/app/assets/images/backend/arrowdown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/arrowdown.png
--------------------------------------------------------------------------------
/app/assets/images/backend/checkbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/checkbox.png
--------------------------------------------------------------------------------
/app/assets/images/backend/sidebarbg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/sidebarbg.png
--------------------------------------------------------------------------------
/app/assets/images/backend/ui.totop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/ui.totop.png
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/watermark.png
--------------------------------------------------------------------------------
/app/views/mokio/common/_notice.html.slim:
--------------------------------------------------------------------------------
1 | - content_for :js do
2 | - flash.each do |key, msg|
3 | = flash_message(msg)
4 |
--------------------------------------------------------------------------------
/spec/dummy/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require_relative '../config/boot'
3 | require 'rake'
4 | Rake.application.run
5 |
--------------------------------------------------------------------------------
/spec/dummy/config/routes.rb:
--------------------------------------------------------------------------------
1 | Rails.application.routes.draw do
2 | mount Mokio::Engine, at: "/backend"
3 | end
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/assets/fonts/backend/broccolidry.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/broccolidry.eot
--------------------------------------------------------------------------------
/app/assets/fonts/backend/broccolidry.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/broccolidry.ttf
--------------------------------------------------------------------------------
/app/assets/fonts/backend/broccolidry.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/broccolidry.woff
--------------------------------------------------------------------------------
/app/assets/fonts/backend/moxieplayer.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/moxieplayer.swf
--------------------------------------------------------------------------------
/app/assets/images/backend/ajax-loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/ajax-loader.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/choose-file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/choose-file.png
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/minus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/icons/minus.png
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/icons/plus.png
--------------------------------------------------------------------------------
/app/assets/images/backend/logo_bloom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/logo_bloom.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/2-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/2-1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/2-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/2-2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/3-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/3-1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/3.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/4-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/4-1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/4-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/4-2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/4.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/5.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/6.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/7.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/8.png
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/find.js.slim:
--------------------------------------------------------------------------------
1 | | $("#yt-uploader-content").html("#{j render :template => 'mokio/youtubes/preview' }");
2 |
--------------------------------------------------------------------------------
/app/assets/fonts/backend/plupload.flash.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/fonts/backend/plupload.flash.swf
--------------------------------------------------------------------------------
/app/assets/images/backend/fonts/icomoon.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/fonts/icomoon.eot
--------------------------------------------------------------------------------
/app/assets/images/backend/fonts/icomoon.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/fonts/icomoon.ttf
--------------------------------------------------------------------------------
/app/assets/images/backend/fonts/icomoon.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/fonts/icomoon.woff
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/external.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/icons/external.png
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/3d/015.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/3d/015.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/3d/019.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/3d/019.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/3d/026.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/3d/026.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/3d/028.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/3d/028.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/3d/039.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/3d/039.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/3d/067.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/3d/067.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/3d/071.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/3d/071.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/uniform/radio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/uniform/radio.png
--------------------------------------------------------------------------------
/app/assets/images/backend/uniform/select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/uniform/select.png
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/_preview_movie.html.slim:
--------------------------------------------------------------------------------
1 | iframe frameborder="0" height="500" src="http://#{@video.embed_url}" width="700"
2 |
--------------------------------------------------------------------------------
/spec/dummy/config/webpack/environment.js:
--------------------------------------------------------------------------------
1 | const { environment } = require('@rails/webpacker')
2 |
3 | module.exports = environment
4 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/preload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/preload.png
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/arrow-left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/icons/arrow-left.png
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/arrow-right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/icons/arrow-right.png
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/left-arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/icons/left-arrow.png
--------------------------------------------------------------------------------
/app/assets/images/backend/icons/right-arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/icons/right-arrow.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/3.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/4.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/3.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/4.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/topbarbg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/topbarbg.png
--------------------------------------------------------------------------------
/app/assets/images/backend/uniform/checkbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/uniform/checkbox.png
--------------------------------------------------------------------------------
/app/assets/images/backend/uniform/select1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/uniform/select1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/uniform/select2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/uniform/select2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/dust.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/dust.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/grey.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/3.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/4.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebarbg1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebarbg1.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebarbg2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebarbg2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/uniform/choose-file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/uniform/choose-file.png
--------------------------------------------------------------------------------
/app/models/mokio/seo_tag.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class SeoTag < ActiveRecord::Base
3 | include Mokio::Concerns::Models::SeoTag
4 | end
5 | end
--------------------------------------------------------------------------------
/lib/generators/mokio/templates/_google_analytics.html.slim:
--------------------------------------------------------------------------------
1 | - content_for :js do
2 | javascript:
3 | #{build_external_script "Google Analytics"}
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/default/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/default/loader.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/default/sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/default/sprite.png
--------------------------------------------------------------------------------
/app/assets/images/backend/glyphicons-halflings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/glyphicons-halflings.png
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/001.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/001.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/002.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/002.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/003.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/003.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/007.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/007.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/008.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/008.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/010.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/010.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/011.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/011.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/012.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/012.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/013.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/013.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/016.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/016.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/017.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/017.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/020.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/020.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/021.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/021.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/022.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/022.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/023.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/023.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/025.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/025.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/027.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/027.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/029.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/029.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/030.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/030.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/033.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/033.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/034.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/034.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/035.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/035.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/038.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/038.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/040.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/040.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/041.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/041.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/042.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/042.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/044.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/044.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/046.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/046.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/047.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/047.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/049.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/049.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/050.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/050.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/051.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/051.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/052.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/052.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/054.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/054.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/055.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/055.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/056.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/056.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/059.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/059.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/060.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/060.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/061.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/061.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/064.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/064.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/065.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/065.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/066.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/066.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/068.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/068.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/069.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/069.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/070.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/070.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/circular/072.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/circular/072.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/004.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/004.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/005.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/005.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/006.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/006.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/009.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/009.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/014.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/014.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/018.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/018.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/024.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/024.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/031.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/031.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/032.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/032.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/036.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/036.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/037.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/037.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/043.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/043.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/045.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/045.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/048.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/048.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/053.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/053.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/057.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/057.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/058.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/058.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/062.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/062.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/loaders/horizontal/063.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/loaders/horizontal/063.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/dust_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/dust_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/grey_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/grey_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/grid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/grid.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/grey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/grey.png
--------------------------------------------------------------------------------
/app/models/mokio/backend_search.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class BackendSearch
3 | include Mokio::Concerns::Models::BackendSearch
4 | end
5 | end
--------------------------------------------------------------------------------
/app/models/mokio/history.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class History < ActiveRecord::Base
3 | include Mokio::Concerns::Models::History
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/app/views/mokio/histories/get_n_more.js.slim:
--------------------------------------------------------------------------------
1 | | $('#histories').append("#{escape_javascript(render partial: 'mokio/histories/elements/histories_list')}")
--------------------------------------------------------------------------------
/app/views/mokio/photos/get_photo.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html('
');
2 |
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/_new.html.slim:
--------------------------------------------------------------------------------
1 | .modal-dialog
2 | .modal-content
3 | #yt-uploader-content
4 | = render :partial => 'search_yt'
5 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/default/sprite_x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/default/sprite_x.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/default/sprite_y.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/default/sprite_y.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/btnNext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/btnNext.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/loader.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/sprite.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/cream_dust.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/cream_dust.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/grid_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/grid_@2X.png
--------------------------------------------------------------------------------
/app/controllers/mokio/langs_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::LangsController < Mokio::CommonController
2 | include Mokio::Concerns::Controllers::Langs
3 | end
4 |
--------------------------------------------------------------------------------
/app/views/mokio/layout/sidebar_support.html.slim:
--------------------------------------------------------------------------------
1 | /li.support_nav
2 | / a href=support_path
3 | / span.icon16.entypo-icon-help
4 | / = bts("support")
--------------------------------------------------------------------------------
/app/views/mokio/photos/get_thumb.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html("#{j render :template => 'mokio/photos/thumb', :locals => {photo: @edited_photo} }");
2 |
--------------------------------------------------------------------------------
/config/initializers/frontend.rb:
--------------------------------------------------------------------------------
1 | Rails.application.configure do |conf|
2 | conf.default_url_options = {host: ENV['APP_HOST'] || "localhost:3000"}
3 | end
4 |
--------------------------------------------------------------------------------
/config/views.yml:
--------------------------------------------------------------------------------
1 | -
2 | original_view: "mokio/layout/sidebar"
3 | override_path: "mokio/layout/sidebar_support"
4 | html_element_id: "#sidebar-ul"
5 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_rounded/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_rounded/loader.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_rounded/sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_rounded/sprite.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_square/btnNext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_square/btnNext.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_square/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_square/loader.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_square/sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_square/sprite.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/default/sprite_next.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/default/sprite_next.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/default/sprite_prev.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/default/sprite_prev.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_square/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_square/loader.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_square/sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_square/sprite.png
--------------------------------------------------------------------------------
/app/assets/images/backend/glyphicons-halflings-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/glyphicons-halflings-white.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/subtle_dots.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/subtle_dots.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/az_subtle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/az_subtle.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/grey_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/grey_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/data_tables/search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/data_tables/search.png
--------------------------------------------------------------------------------
/app/assets/images/backend/ui-bg_flat_75_ffffff_40x100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/ui-bg_flat_75_ffffff_40x100.png
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.BACKUP.21459.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/watermark.png.BACKUP.21459.png
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.BACKUP.21617.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/watermark.png.BACKUP.21617.png
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.LOCAL.21459.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/watermark.png.LOCAL.21459.png
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.LOCAL.21617.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/watermark.png.LOCAL.21617.png
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.REMOTE.21459.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/watermark.png.REMOTE.21459.png
--------------------------------------------------------------------------------
/app/assets/images/backend/watermark.png.REMOTE.21617.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/watermark.png.REMOTE.21617.png
--------------------------------------------------------------------------------
/app/controllers/mokio/menus_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::MenusController < Mokio::CommonController
2 | include Mokio::Concerns::Controllers::Menus
3 | end
4 |
5 |
--------------------------------------------------------------------------------
/app/controllers/mokio/users_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::UsersController < Mokio::CommonController
3 | include Mokio::Concerns::Controllers::Users
4 | end
5 |
--------------------------------------------------------------------------------
/app/models/mokio/static_page.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class StaticPage < ActiveRecord::Base
3 | include Mokio::Concerns::Models::StaticPage
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/spec/dummy/bin/bundle:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
3 | load Gem.bin_path('bundler', 'bundle')
4 |
--------------------------------------------------------------------------------
/spec/dummy/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 | require_relative 'config/environment'
3 | run Rails.application
4 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_rounded/btnNext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_rounded/btnNext.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/default/default_thumb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/default/default_thumb.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/btnPrevious.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/btnPrevious.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_rounded/btnNext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_rounded/btnNext.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_rounded/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_rounded/loader.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_rounded/sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_rounded/sprite.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_square/btnNext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_square/btnNext.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/cream_dust_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/cream_dust_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/body/subtle_dots_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/body/subtle_dots_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/bedge_grunge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/bedge_grunge.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/nasty_fabric.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/nasty_fabric.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/natural_paper.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/natural_paper.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/noise_lines.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/noise_lines.png
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/data_tables/sort_asc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/data_tables/sort_asc.png
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/data_tables/sort_both.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/data_tables/sort_both.png
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/data_tables/sort_desc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/data_tables/sort_desc.png
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/forms/select2/select2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/forms/select2/select2.png
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/forms/select2/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/forms/select2/spinner.gif
--------------------------------------------------------------------------------
/app/controllers/mokio/articles_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::ArticlesController < Mokio::CommonController
2 | include Mokio::Concerns::Controllers::Articles
3 | end
4 |
--------------------------------------------------------------------------------
/app/controllers/mokio/contents_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::ContentsController < Mokio::CommonController
2 | include Mokio::Concerns::Controllers::Contents
3 | end
4 |
--------------------------------------------------------------------------------
/app/controllers/mokio/photos_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::PhotosController < Mokio::BaseController
3 | include Mokio::Concerns::Controllers::Photos
4 | end
5 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_rounded/btnPrevious.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_rounded/btnPrevious.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_square/btnPrevious.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_square/btnPrevious.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_square/btnPrevious.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_square/btnPrevious.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/bedge_grunge_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/bedge_grunge_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/nasty_fabric_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/nasty_fabric_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/az_subtle_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/az_subtle_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/billie_holiday.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/billie_holiday.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/noise_lines_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/noise_lines_@2X.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/uniform/radio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/uniform/radio.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/misc/search/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/misc/search/loader.gif
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/misc/search/search.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/misc/search/search.gif
--------------------------------------------------------------------------------
/app/controllers/mokio/histories_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::HistoriesController < Mokio::ApplicationController
2 | include Mokio::Concerns::Controllers::Histories
3 | end
--------------------------------------------------------------------------------
/app/controllers/mokio/youtubes_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::YoutubesController < Mokio::BaseController
3 | include Mokio::Concerns::Controllers::Youtubes
4 | end
5 |
--------------------------------------------------------------------------------
/app/models/mokio/editable_block.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class EditableBlock < ActiveRecord::Base
3 | include Mokio::Concerns::Models::EditableBlock
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/spec/mokio_test.rb:
--------------------------------------------------------------------------------
1 | require 'test_helper'
2 |
3 | class MokioTest < ActiveSupport::TestCase
4 | test "truth" do
5 | assert_kind_of Module, Mokio
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_square/contentPattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_square/contentPattern.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/contentPatternTop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/contentPatternTop.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/default_thumbnail.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/default_thumbnail.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_rounded/btnPrevious.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_rounded/btnPrevious.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/header/natural_paper_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/header/natural_paper_@2X.png
--------------------------------------------------------------------------------
/app/assets/javascripts/mokio.js.erb:
--------------------------------------------------------------------------------
1 | var Mokio = {
2 | engine_root: function() {
3 | return "<%= Mokio::Engine.routes.url_helpers.root_path.gsub('/', '') %>";
4 | }
5 | }
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/uniform/select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/uniform/select.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/uniform/select1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/uniform/select1.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/uniform/select2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/uniform/select2.png
--------------------------------------------------------------------------------
/app/controllers/mokio/contacts_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::ContactsController < Mokio::CommonController
3 | include Mokio::Concerns::Controllers::Contacts
4 | end
5 |
6 |
--------------------------------------------------------------------------------
/app/controllers/mokio/data_files_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::DataFilesController < Mokio::BaseController
3 | include Mokio::Concerns::Controllers::DataFiles
4 | end
5 |
--------------------------------------------------------------------------------
/app/controllers/mokio/sessions_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::SessionsController < Devise::SessionsController
3 | include Mokio::Concerns::Controllers::Sessions
4 | end
5 |
--------------------------------------------------------------------------------
/app/controllers/mokio/static_pages_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::StaticPagesController < Mokio::CommonController
2 | include Mokio::Concerns::Controllers::StaticPages
3 | end
4 |
--------------------------------------------------------------------------------
/app/models/mokio/external_script.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class ExternalScript < ActiveRecord::Base
3 | include Mokio::Concerns::Models::ExternalScript
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_rounded/contentPattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_rounded/contentPattern.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_square/default_thumbnail.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_square/default_thumbnail.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/contentPatternBottom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/contentPatternBottom.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/contentPatternLeft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/contentPatternLeft.png
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/facebook/contentPatternRight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/facebook/contentPatternRight.png
--------------------------------------------------------------------------------
/app/assets/images/backend/patterns/sidebar/billie_holiday_@2X.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/patterns/sidebar/billie_holiday_@2X.png
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/data_tables/sort_asc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/data_tables/sort_asc_disabled.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/color-picker/mask.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/color-picker/mask.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/color-picker/wheel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/color-picker/wheel.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/uniform/checkbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/uniform/checkbox.png
--------------------------------------------------------------------------------
/spec/dummy/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_PATH = File.expand_path('../../config/application', __FILE__)
3 | require_relative '../config/boot'
4 | require 'rails/commands'
5 |
--------------------------------------------------------------------------------
/spec/dummy/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require_relative 'application'
3 |
4 | # Initialize the Rails application.
5 | Dummy::Application.initialize!
6 |
--------------------------------------------------------------------------------
/spec/dummy/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "@rails/webpacker": "4.2.2"
4 | },
5 | "devDependencies": {
6 | "webpack-dev-server": "^3.10.3"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/dark_rounded/default_thumbnail.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/dark_rounded/default_thumbnail.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_rounded/default_thumbnail.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_rounded/default_thumbnail.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/gallery/light_square/default_thumbnail.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/gallery/light_square/default_thumbnail.gif
--------------------------------------------------------------------------------
/app/assets/images/backend/plugins/data_tables/sort_desc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/images/backend/plugins/data_tables/sort_desc_disabled.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/color-picker/marker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/color-picker/marker.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/uniform/choose-file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/forms/uniform/choose-file.png
--------------------------------------------------------------------------------
/app/controllers/mokio/backend_search_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::BackendSearchController < Mokio::CommonController
2 | include Mokio::Concerns::Controllers::BackendSearch
3 | end
4 |
--------------------------------------------------------------------------------
/app/controllers/mokio/cke_file_browser_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::CkeFileBrowserController < Mokio::BaseController
2 | include Mokio::Concerns::Controllers::CkeFileBrowser
3 | end
4 |
--------------------------------------------------------------------------------
/app/controllers/mokio/editable_blocks_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::EditableBlocksController < Mokio::CommonController
2 | include Mokio::Concerns::Controllers::EditableBlocks
3 | end
4 |
--------------------------------------------------------------------------------
/app/controllers/mokio/mov_galleries_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::MovGalleriesController < Mokio::CommonController
3 | include Mokio::Concerns::Controllers::MovGalleries
4 | end
5 |
--------------------------------------------------------------------------------
/app/controllers/mokio/pic_galleries_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::PicGalleriesController < Mokio::CommonController
3 | include Mokio::Concerns::Controllers::PicGalleries
4 | end
5 |
--------------------------------------------------------------------------------
/app/controllers/mokio/static_modules_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::StaticModulesController < Mokio::CommonController
3 | include Mokio::Concerns::Controllers::StaticModules
4 | end
5 |
--------------------------------------------------------------------------------
/app/controllers/mokio/base_controller.rb:
--------------------------------------------------------------------------------
1 | # -*- encoding : utf-8 -*-
2 | class Mokio::BaseController < Mokio::ApplicationController
3 | include Mokio::Concerns::Controllers::Base
4 | end
5 |
--------------------------------------------------------------------------------
/app/models/mokio/application_setting.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class ApplicationSetting < ActiveRecord::Base
3 | include Mokio::Concerns::Models::ApplicationSetting
4 | end
5 | end
6 |
7 |
--------------------------------------------------------------------------------
/app/controllers/mokio/external_scripts_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::ExternalScriptsController < Mokio::CommonController
3 | include Mokio::Concerns::Controllers::ExternalScripts
4 | end
5 |
--------------------------------------------------------------------------------
/app/controllers/mokio/module_positions_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | class Mokio::ModulePositionsController < Mokio::CommonController
3 | include Mokio::Concerns::Controllers::ModulePositions
4 | end
5 |
--------------------------------------------------------------------------------
/app/views/mokio/photos/_data_file_info.html.slim:
--------------------------------------------------------------------------------
1 | javascript:
2 | var data_file_model = "#{data_file_model obj}";
3 | var default_data_file = "#{obj.default_data_file.to_s.demodulize.tableize}";
--------------------------------------------------------------------------------
/app/views/mokio/photos/update.js.slim:
--------------------------------------------------------------------------------
1 | - if @photo.active
2 | | $("#photo_#{@photo.id}").removeClass('photo_not_active');
3 | - else
4 | | $("#photo_#{@photo.id}").addClass('photo_not_active');
--------------------------------------------------------------------------------
/spec/dummy/config/initializers/session_store.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | Dummy::Application.config.session_store :cookie_store, key: '_dummy_session'
4 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_asc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_asc.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_both.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_both.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_desc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_desc.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-icons_2e83ff_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-icons_2e83ff_256x240.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-icons_353535_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-icons_353535_256x240.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-icons_454545_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-icons_454545_256x240.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-icons_ed7a53_256x240.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-icons_ed7a53_256x240.png
--------------------------------------------------------------------------------
/app/views/mokio/photos/destroy.js.slim:
--------------------------------------------------------------------------------
1 | | $("#itemContainer").find("#modaledit_#{@id}").remove();
2 | | var photoCount = parseInt($("#photoCount").text()) - 1;
3 | | $('#photoCount').text(photoCount);
4 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_flat_0_aaaaaa_40x100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_flat_0_aaaaaa_40x100.png
--------------------------------------------------------------------------------
/app/controllers/mokio/dashboard_controller.rb:
--------------------------------------------------------------------------------
1 | # -*- encoding : utf-8 -*-
2 |
3 | class Mokio::DashboardController < Mokio::BaseController
4 | include Mokio::Concerns::Controllers::Dashboard
5 | end
6 |
--------------------------------------------------------------------------------
/app/models/mokio/application_settings_group.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class ApplicationSettingsGroup < ActiveRecord::Base
3 | include Mokio::Concerns::Models::ApplicationSettingsGroup
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/db/migrate/20200813083824_add_slug_to_mokio_contents.rb:
--------------------------------------------------------------------------------
1 | class AddSlugToMokioContents < ActiveRecord::Migration[6.0]
2 | def change
3 | add_column :mokio_contents, :slug, :string
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/spec/dummy/config/webpack/test.js:
--------------------------------------------------------------------------------
1 | process.env.NODE_ENV = process.env.NODE_ENV || 'development'
2 |
3 | const environment = require('./environment')
4 |
5 | module.exports = environment.toWebpackConfig()
6 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/help-engine/help-engine.js:
--------------------------------------------------------------------------------
1 | $(window).load(function() {
2 | $('#joyRideTipContent').joyride({
3 | autoStart : true,
4 | modal:true,
5 | expose: true
6 | });
7 | });
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/back_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/back_disabled.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/back_enabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/back_enabled.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_flat_75_ffffff_40x100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_flat_75_ffffff_40x100.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_glass_55_9fc569_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_glass_55_9fc569_1x400.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_glass_65_ffffff_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_glass_65_ffffff_1x400.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_glass_95_fef1ec_1x400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_glass_95_fef1ec_1x400.png
--------------------------------------------------------------------------------
/spec/dummy/config/webpack/production.js:
--------------------------------------------------------------------------------
1 | process.env.NODE_ENV = process.env.NODE_ENV || 'production'
2 |
3 | const environment = require('./environment')
4 |
5 | module.exports = environment.toWebpackConfig()
6 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/forward_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/forward_disabled.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/forward_enabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/forward_enabled.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_dots-small_75_dedede_2x2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_dots-small_75_dedede_2x2.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_dots-small_75_f7f7f7_2x2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_dots-small_75_f7f7f7_2x2.png
--------------------------------------------------------------------------------
/app/views/mokio/langs/_form.html.slim:
--------------------------------------------------------------------------------
1 | = f.input :name
2 | = f.input :shortname
3 | = f.input :active, :wrapper => :active_checkbox,:input_html => { :checked => true }, disabled: !obj.display_editable_field?('active')
--------------------------------------------------------------------------------
/app/views/mokio/photos/_edit_photo_form.html.slim:
--------------------------------------------------------------------------------
1 | .photo_fields
2 | = f.input :name
3 | = f.input :subtitle
4 | = f.input :intro
5 | = f.input :external_link
6 | = f.input :active, :wrapper => :active_checkbox
--------------------------------------------------------------------------------
/spec/dummy/config/webpack/development.js:
--------------------------------------------------------------------------------
1 | process.env.NODE_ENV = process.env.NODE_ENV || 'development'
2 |
3 | const environment = require('./environment')
4 |
5 | module.exports = environment.toWebpackConfig()
6 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/back_enabled_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/back_enabled_hover.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_asc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_asc_disabled.png
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_desc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/sort_desc_disabled.png
--------------------------------------------------------------------------------
/db/migrate/20200216211300_add_session_token_to_mokio_users.rb:
--------------------------------------------------------------------------------
1 | class AddSessionTokenToMokioUsers < ActiveRecord::Migration[6.0]
2 | def change
3 | add_column :mokio_users, :session_token, :string
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/spec/dummy/.sample.env:
--------------------------------------------------------------------------------
1 | TEST_DATABASE_NAME="mokio_test"
2 | TEST_DATABASE_USERNAME="user"
3 | TEST_DATABASE_PASSWORD="pass"
4 |
5 | DATABASE_NAME="mokio_dev"
6 | DATABASE_USERNAME="user"
7 | DATABASE_PASSWORD="pass"
8 |
--------------------------------------------------------------------------------
/spec/factories/content_links_factory.rb:
--------------------------------------------------------------------------------
1 | # Read about factories at https://github.com/thoughtbot/factory_bot
2 |
3 | FactoryBot.define do
4 | factory :content_link, :class => Mokio::ContentLink do
5 | end
6 | end
7 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/tables/dataTables/images/forward_enabled_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/plugins/tables/dataTables/images/forward_enabled_hover.png
--------------------------------------------------------------------------------
/spec/factories/files.rb:
--------------------------------------------------------------------------------
1 | FactoryBot.define do
2 | factory :sample_image do
3 | data_file { Rack::Test::UploadedFile.new(File.open(File.expand_path('../../fixtures/files/sample_image.jpg', __FILE__))) }
4 | end
5 | end
6 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/index_filter_fields.js:
--------------------------------------------------------------------------------
1 | $(document).ready(function(){
2 | $('.mokio-filter-form select, .mokio-filter-form input').change(function(){
3 | $('.mokio-filter-form').submit();
4 | });
5 | });
6 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/images/ui-bg_diagonals-small_100_f4f4f4_40x40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/versoft/mokio/HEAD/app/assets/stylesheets/backend/supr-theme/images/ui-bg_diagonals-small_100_f4f4f4_40x40.png
--------------------------------------------------------------------------------
/app/views/mokio/default_mailer/msg.html.haml:
--------------------------------------------------------------------------------
1 | !!!
2 | %html
3 | %head
4 | %meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/
5 | %body{:style => "font-size: 15px;"}
6 | = @mailer.template_msg
--------------------------------------------------------------------------------
/app/views/mokio/default_mailer/msg.html.slim:
--------------------------------------------------------------------------------
1 | doctype html
2 | html
3 | head
4 | meta content=("text/html; charset=UTF-8") http-equiv="Content-Type" /
5 | body style=("font-size: 15px;")
6 | = @mailer.template_msg
7 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/errors.scss:
--------------------------------------------------------------------------------
1 | // Core stylesheets do not remove
2 | @import "backend/bootstrap/bootstrap";
3 | @import "backend/bootstrap/bootstrap-responsive";
4 | @import "backend/icons";
5 | @import "backend/main";
6 |
--------------------------------------------------------------------------------
/app/views/mokio/common/copy.html.slim:
--------------------------------------------------------------------------------
1 | .span12
2 | = render :partial => "mokio/common/notice"
3 | .box
4 | = box_title bt("copy_title", @obj_class)
5 | = render :partial => "mokio/common/form_content", locals: {obj: obj}
6 |
--------------------------------------------------------------------------------
/spec/integration/navigation_test.rb:
--------------------------------------------------------------------------------
1 | require 'test_helper'
2 |
3 | class NavigationTest < ActionDispatch::IntegrationTest
4 | fixtures :all
5 |
6 | # test "the truth" do
7 | # assert true
8 | # end
9 | end
10 |
11 |
--------------------------------------------------------------------------------
/app/controllers/mokio/application_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::ApplicationController < ActionController::Base
2 | include Mokio::Concerns::Controllers::Application
3 | include Mokio::HeadersHelper
4 |
5 | before_action :set_no_cache_headers
6 | end
--------------------------------------------------------------------------------
/lib/generators/mokio/templates/contents/views_template.yml:
--------------------------------------------------------------------------------
1 | -
2 | original_view: "mokio/layout/sidebar"
3 | override_path: "mokio/overrides/<%=file_name%>_sidebar_btn"
4 | html_element_id: ".article_nav"
5 | position: "after"
6 | type: "css"
7 |
--------------------------------------------------------------------------------
/spec/dummy/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 | require_relative 'config/application'
4 | Dummy::Application.load_tasks
5 |
--------------------------------------------------------------------------------
/spec/dummy/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [:password]
5 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/comments.js.coffee:
--------------------------------------------------------------------------------
1 | # Place all the behaviors and hooks related to the matching controller here.
2 | # All this logic will automatically be available in application.js.
3 | # You can use CoffeeScript in this file: http://coffeescript.org/
4 |
--------------------------------------------------------------------------------
/spec/dummy/config/initializers/mime_types.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new mime types for use in respond_to blocks:
4 | # Mime::Type.register "text/richtext", :rtf
5 | # Mime::Type.register_alias "text/html", :iphone
6 |
--------------------------------------------------------------------------------
/app/mailers/mokio/default_mailer.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class DefaultMailer < ActionMailer::Base
3 | default from: "from@example.com"
4 |
5 | def msg(obj)
6 | @mailer = obj
7 |
8 | mail(to: @mailer.recipients)
9 | end
10 | end
11 | end
12 |
--------------------------------------------------------------------------------
/lib/tasks/create_editable_blocks_ids.rake:
--------------------------------------------------------------------------------
1 | namespace :mokio do
2 | desc 'Create hashes for editable blocks'
3 |
4 | task editable_blocks_ids: :environment do |t, args|
5 | 40.times do
6 | puts SecureRandom.hex(12)
7 | end
8 | end
9 |
10 | end
11 |
--------------------------------------------------------------------------------
/db/migrate/20220113134531_create_mokio_application_settings_groups.rb:
--------------------------------------------------------------------------------
1 | class CreateMokioApplicationSettingsGroups < ActiveRecord::Migration[6.0]
2 | def change
3 | create_table :mokio_application_settings_groups do |t|
4 | t.string :name
5 | end
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/spec/dummy/config/boot.rb:
--------------------------------------------------------------------------------
1 | # Set up gems listed in the Gemfile.
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../../Gemfile', __FILE__)
3 |
4 | require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
5 | $LOAD_PATH.unshift File.expand_path('../../../../lib', __FILE__)
6 |
--------------------------------------------------------------------------------
/app/controllers/mokio/support_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::SupportController < Mokio::CommonController
2 | layout "mokio/backend"
3 | helper :application
4 |
5 | def index
6 | respond_to do |format|
7 | format.html
8 | end
9 | end
10 |
11 |
12 | end
13 |
14 |
--------------------------------------------------------------------------------
/db/migrate/20200311015923_add_imageable_to_data_files.rb:
--------------------------------------------------------------------------------
1 | class AddImageableToDataFiles < ActiveRecord::Migration[6.0]
2 | def change
3 | add_reference :mokio_data_files, :imageable, polymorphic: true
4 | remove_column :mokio_data_files, :content_id, :integer
5 | end
6 | end
7 |
--------------------------------------------------------------------------------
/lib/tasks/mokio_rollback.rake:
--------------------------------------------------------------------------------
1 | require 'rake'
2 |
3 | namespace :mokio do
4 | desc "Rollbacks rake mokio:install"
5 |
6 | task :rollback do
7 | Thread.new do
8 | %x{ rails d mokio:install }
9 | end
10 |
11 | Rake::Task["db:rollback"].execute
12 | end
13 | end
--------------------------------------------------------------------------------
/spec/dummy/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | # Prevent CSRF attacks by raising an exception.
3 | # For APIs, you may want to use :null_session instead.
4 | protect_from_forgery prepend: true, with: :exception
5 | end
6 |
--------------------------------------------------------------------------------
/app/helpers/mokio/backend/application_helper.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Backend
3 | module ApplicationHelper
4 | def show_index_table_actions(obj_class)
5 | true unless obj_class.try(:show_index_table_actions?) == false
6 | end
7 | end
8 | end
9 | end
10 |
--------------------------------------------------------------------------------
/db/migrate/20200218022320_add_lockable_to_mokio_users.rb:
--------------------------------------------------------------------------------
1 | class AddLockableToMokioUsers < ActiveRecord::Migration[6.0]
2 | def change
3 | add_column :mokio_users, :failed_attempts, :integer, default: 0, null: false
4 | add_column :mokio_users, :locked_at, :datetime
5 | end
6 | end
7 |
--------------------------------------------------------------------------------
/app/controllers/mokio/application_settings_groups_controller.rb:
--------------------------------------------------------------------------------
1 | class Mokio::ApplicationSettingsGroupsController < Mokio::CommonController
2 |
3 | def application_settings_group_params
4 | params.require(:application_settings_group).permit(extended_parameters, :name)
5 | end
6 |
7 | end
8 |
--------------------------------------------------------------------------------
/config/initializers/renderer.rb:
--------------------------------------------------------------------------------
1 | ActionView::Renderer.class_eval do
2 | def render(context, options)
3 | content = options.key?(:partial) ? render_partial(context, options) : render_template(context, options)
4 | Mokio::TemplateRenderer.render content, context, options, self
5 | end
6 | end
--------------------------------------------------------------------------------
/app/models/mokio/sitemap_external_logic.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class SitemapExternalLogic
3 | def self.data_for_xml
4 | # [
5 | # { loc: 'url', lastmod: date, priority: 1, changefreq: 'monthly' },
6 | # ...
7 | # ]
8 | nil
9 | end
10 | end
11 | end
12 |
--------------------------------------------------------------------------------
/app/views/mokio/contents/_common.slim:
--------------------------------------------------------------------------------
1 | = f.input :author_name, :disabled => true if params[:action] == "edit"
2 | = f.input :editor_name, \
3 | :disabled => true, \
4 | :input_html => {:value => params[:action] == "edit" ? current_user.name_view : obj.editor_name} \
5 | if params[:action] == "edit"
6 |
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/preview_movie.js.slim:
--------------------------------------------------------------------------------
1 | | $('#video-preview-wrapper').css('width','100%');
2 | | $('#video-preview-wrapper').height($(document).height());
3 | | $('#video-preview').html("#{ j render :partial => "preview_movie" }");
4 | | $('#video-preview-wrapper').css('display','block');
5 |
6 |
--------------------------------------------------------------------------------
/lib/tasks/mokio_install/reset_pg_sequence.rake:
--------------------------------------------------------------------------------
1 | namespace :mokio_install do
2 | desc 'Reset pg columns sequence'
3 | task reset_pg_sequence: :environment do
4 | ActiveRecord::Base.connection.tables.each do |t|
5 | ActiveRecord::Base.connection.reset_pk_sequence!(t)
6 | end
7 | end
8 | end
--------------------------------------------------------------------------------
/spec/dummy/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: [
3 | require('postcss-import'),
4 | require('postcss-flexbugs-fixes'),
5 | require('postcss-preset-env')({
6 | autoprefixer: {
7 | flexbox: 'no-2009'
8 | },
9 | stage: 3
10 | })
11 | ]
12 | }
13 |
--------------------------------------------------------------------------------
/app/views/mokio/common/filters/_text.html.slim:
--------------------------------------------------------------------------------
1 | div.holder
2 | - value_text = params[:mokio_filters] ? params[:mokio_filters][field] : nil
3 | = label(:mokio_filters, field, t(object_attribute_trans_key(obj, field)))
4 | = text_field_tag( \
5 | "mokio_filters[#{field}]", \
6 | value_text \
7 | )
8 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/history.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | module History
5 | extend ActiveSupport::Concern
6 | included do
7 | belongs_to :historable, polymorphic: true
8 | end
9 | end
10 | end
11 | end
12 | end
13 |
--------------------------------------------------------------------------------
/lib/tasks/sitemap.rake:
--------------------------------------------------------------------------------
1 | require 'rake'
2 |
3 | namespace :mokio do
4 | desc 'Recreate sitemap.xml'
5 |
6 | task recreate_sitemap: :environment do
7 | puts 'Starting...'
8 | Mokio::Concerns::Common::Services::Sitemap::Service.regenerate_sitemap
9 | puts 'Done.'
10 | end
11 |
12 | end
13 |
--------------------------------------------------------------------------------
/app/views/mokio/common/filters/_date.html.slim:
--------------------------------------------------------------------------------
1 | div.holder
2 | - value = params[:mokio_filters] ? params[:mokio_filters][field] : nil
3 | = label(:mokio_filters, field, t(object_attribute_trans_key(obj, field)))
4 | = date_field( \
5 | :mokio_filters, \
6 | field, \
7 | value: value \
8 | )
9 |
--------------------------------------------------------------------------------
/app/views/mokio/common/modals/_modal_histories.html.slim:
--------------------------------------------------------------------------------
1 | - if history_helper_display(obj)
2 | - @histories = obj.get_first_n_histories(10)
3 | #histories data-obj-id="#{obj.id}" data-obj-type="#{obj.class}"
4 | = render partial: 'mokio/histories/elements/histories_list'
5 |
6 | = javascript_include_tag 'backend/load_histories'
--------------------------------------------------------------------------------
/app/views/mokio/registration_mailer/send_pass_setup_instruction.html.slim:
--------------------------------------------------------------------------------
1 | p = I18n.t('registration_mailer.pass_setup_instruction_1', email: @email)
2 | p = I18n.t('registration_mailer.pass_setup_instruction_2')
3 | p = link_to I18n.t('registration_mailer.pass_setup_instruction_3'), edit_password_url(@obj, reset_password_token: @token)
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/custom.js:
--------------------------------------------------------------------------------
1 | // DO NOT EDIT THIS FILE
2 | // This file is generated solely for adding custom js logic in mokio panel, from
3 | // your application's source code, without having to override mokio's files.
4 | // To add this file to your application, run "rails mokio:add_custom_js"
5 | // in your project's folder.
6 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/dashboard.scss:
--------------------------------------------------------------------------------
1 | .dashboard-box {
2 | .content:after {
3 | clear: both;
4 | content: '';
5 | display: block;
6 | }
7 |
8 | h4 .dashboard_label {
9 | margin-right: 10px;
10 | }
11 |
12 | .title {
13 | height: 48px;
14 | padding-top: 10px;
15 | }
16 | }
17 |
18 |
19 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/article.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models #:nodoc:
4 | #
5 | # Concern for Mokio::Article model
6 | #
7 | module Article
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | end
12 |
13 | end
14 | end
15 | end
16 | end
17 |
--------------------------------------------------------------------------------
/lib/mokio/frontend_helpers.rb:
--------------------------------------------------------------------------------
1 | require 'mokio/frontend_helpers/content_helper'
2 | require 'mokio/frontend_helpers/menu_helper'
3 | require 'mokio/frontend_helpers/static_modules_helper'
4 | require 'mokio/frontend_helpers/external_scripts_helper'
5 | require 'mokio/frontend_helpers/langs_helper'
6 | require 'mokio/frontend_helpers/seo_tag_helper'
7 |
8 |
--------------------------------------------------------------------------------
/app/views/mokio/users/_generate_pass_change_link.html.slim:
--------------------------------------------------------------------------------
1 | = simple_form_for(obj, as: :user, method: :post, url: send_pass_change_link_path) do |f|
2 | = f.input :email, as: :hidden
3 | label.form-label.span4 = bt('reset_password')
4 | = f.button :submit, bt('send_reset_instructions_manually'), class: 'btn btn-info', id: 'send_reset_instructions_manually'
--------------------------------------------------------------------------------
/app/views/mokio/photos/create.js.slim:
--------------------------------------------------------------------------------
1 | | $("#itemContainer").append("#{j render :template => 'mokio/photos/photo', :locals => {photo: @photo} }");
2 | | $("#gallery_content").append("#{j render template: 'mokio/photos/photo_modal', locals: {photo: @photo}}");
3 | | var photoCount = parseInt($("#photoCount").text()) + 1;
4 | | $('#photoCount').text(photoCount);
5 |
--------------------------------------------------------------------------------
/db/migrate/20191217135611_create_mokio_seo_tags.rb:
--------------------------------------------------------------------------------
1 |
2 | class CreateMokioSeoTags < ActiveRecord::Migration[5.0]
3 | def change
4 | create_table :mokio_seo_tags do |t|
5 | t.string :tag_key
6 | t.text :tag_value
7 | t.references :seo_tagable, polymorphic: true, index: true
8 | t.timestamps
9 | end
10 | end
11 | end
12 |
--------------------------------------------------------------------------------
/lib/tasks/mokio_install/install_webpack.rake:
--------------------------------------------------------------------------------
1 | namespace :mokio_install do
2 | desc 'Installs Webpack'
3 | task install_webpack: :environment do
4 | unless File.exist?("#{Rails.root}/config/webpacker.yml")
5 | Rake::Task['webpacker:install'].execute
6 | else
7 | puts "Webpacker is already installed".brown
8 | end
9 | end
10 | end
--------------------------------------------------------------------------------
/lib/tasks/refresh_static_pages.rake:
--------------------------------------------------------------------------------
1 | require 'rake'
2 |
3 | namespace :mokio do
4 | desc 'Refresh static pages records basic on routing'
5 |
6 | task refresh_static_pages: :environment do
7 | puts 'Starting...'
8 | Mokio::Services::StaticPageService.new(disable_sitemap_regenerate: true).call
9 | puts 'Done.'
10 | end
11 |
12 | end
13 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/new.scss:
--------------------------------------------------------------------------------
1 | #article_lang_id {
2 | width: 140px;
3 | }
4 |
5 | #menusList li .sortable_true {
6 | cursor: move;
7 | cursor: grab;
8 | cursor: -moz-grab;
9 | cursor: -webkit-grab;
10 | }
11 |
12 | #menusList li .ui-sortable-helper {
13 | cursor: grabbing;
14 | cursor: -moz-grabbing;
15 | cursor: -webkit-grabbing;
16 | }
--------------------------------------------------------------------------------
/app/models/devise_custom_failure.rb:
--------------------------------------------------------------------------------
1 | class DeviseCustomFailure < Devise::FailureApp
2 | def redirect_url
3 | '/backend/users/sign_in'
4 | end
5 |
6 | def respond
7 | if http_auth?
8 | http_auth
9 | else
10 | flash[:alert] = I18n.t(:invalid, :scope => [ :devise, :failure ])
11 | redirect
12 | end
13 | end
14 | end
15 |
--------------------------------------------------------------------------------
/config/initializers/sessions.rb:
--------------------------------------------------------------------------------
1 | Rails.configuration.to_prepare do
2 | Devise::SessionsController.class_eval do
3 | before_action :invalidate_current_user_session, only: [:destroy]
4 |
5 | private
6 | def invalidate_current_user_session
7 | current_user.invalidate_all_sessions! if current_user.present?
8 | end
9 | end
10 | end
11 |
--------------------------------------------------------------------------------
/app/models/mokio/content_link.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: content_links
4 | #
5 | # content_id :integer
6 | # menu_id :integer
7 | # seq :integer
8 | # id :integer not null, primary key
9 | #
10 | module Mokio
11 | class ContentLink < ActiveRecord::Base
12 | include Mokio::Concerns::Models::ContentLink
13 | end
14 | end
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/_search_yt.html.slim:
--------------------------------------------------------------------------------
1 | .modal-header
2 | h3.modal-title.modal-youtube id="myModalLabel" = bt("add_youtube", Mokio::Youtube)
3 | .modal-body
4 | = render :partial => 'search_yt_body'
5 | - if @error
6 | = bt('no_movie_found', Mokio::Youtube)
7 | #only-close-footer.modal-footer
8 | button.btn.btn-default type="button" data-dismiss="modal" = bt("close")
9 |
--------------------------------------------------------------------------------
/lib/mokio/headers_helper.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module HeadersHelper
3 | # helper made for preventing caching in admin panel
4 | def set_no_cache_headers
5 | response.headers["Expires"] = 'Mon, 01 Jan 2000 00:00:00 GMT'
6 | response.headers["Pragma"] = 'no-cache'
7 | response.headers["Cache-Control"] = 'no-cache, no-store'
8 | end
9 | end
10 | end
11 |
--------------------------------------------------------------------------------
/spec/factories/users.rb:
--------------------------------------------------------------------------------
1 | # Read about factories at https://github.com/thoughtbot/factory_bot
2 |
3 | FactoryBot.define do
4 | factory :user, :class => Mokio::User do
5 | email { 'testtesttest@test.test' }
6 | password { 'Passwor12d01!' }
7 | password_confirmation { 'Passwor12d01!' }
8 | roles_mask { Mokio::User.roles_mask_by_role(:super_admin) }
9 | end
10 | end
11 |
--------------------------------------------------------------------------------
/app/views/devise/mailer/reset_password_instructions.html.slim:
--------------------------------------------------------------------------------
1 | p = "#{t('devise.mailer.hello')} #{@resource.email}!"
2 | p = t('devise.mailer.reset_password_first_paragraph')
3 | p = link_to t('devise.mailer.change_password'), edit_password_url(@resource, reset_password_token: @token)
4 | p = t('devise.mailer.reset_password_second_paragraph')
5 | p = t('devise.mailer.reset_password_third_paragraph')
6 |
--------------------------------------------------------------------------------
/app/views/mokio/common/_main_pic.html.slim:
--------------------------------------------------------------------------------
1 | = f.input :main_pic
2 | #main_pic_view
3 | a.fancybox href=f.object.main_pic.url
4 | img.image.marginR10.article-mainpic alt="" src=f.object.main_pic.url(:main_pic) /
5 | - unless f.object.main_pic.file.nil?
6 | = link_to "", delete_main_pic_content_path, method: :delete, remote: true, class: "delete-mainpic-button icon16 icomoon-icon-remove white"
--------------------------------------------------------------------------------
/app/views/mokio/errors/unauthorized.html.slim:
--------------------------------------------------------------------------------
1 | .errorPage
2 | .container-fluid
3 | .errorContainer#unauth
4 | .page-header
5 | h3.center
6 | = t("errors.messages.unauthorized")
7 |
8 | .center
9 | a.btn href="javascript: history.go(-1)" style="margin-right:10px;"
10 | span.icon16.icomoon-icon-arrow-left-10
11 | = bt("go_back")
12 |
--------------------------------------------------------------------------------
/lib/tasks/mokio_install/create_configuration_file.rake:
--------------------------------------------------------------------------------
1 | namespace :mokio_install do
2 | desc 'Create default Mokio::ModulePositions'
3 | task create_configuration_file: :environment do
4 | unless File.exist?("#{Rails.root}/config/initializers/mokio.rb")
5 | Rails::Generators.invoke('mokio:install')
6 | else
7 | puts "File already exists".brown
8 | end
9 | end
10 | end
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/galleries.js:
--------------------------------------------------------------------------------
1 | // Gallery plugins
2 | //= require backend/plugins/gallery/lazy-load/jquery.lazyload
3 | //= require backend/plugins/gallery/jpages/jPages
4 | //= require backend/plugins/gallery/pretty-photo/jquery.prettyPhoto
5 | //= require backend/plugins/jcrop/jquery.color
6 | //= require backend/plugins/jcrop/jquery.Jcrop
7 | //= require backend/plugins/gallery/rotate/jQueryRotate
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/recipient.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | #
5 | # Concern for Recipient model
6 | #
7 | module Recipient
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | belongs_to :contact
12 | validates :email, :email => true
13 | end
14 | end
15 | end
16 | end
17 | end
--------------------------------------------------------------------------------
/spec/dummy/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dummy
5 | <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %>
6 | <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
7 | <%= csrf_meta_tags %>
8 |
9 |
10 |
11 | <%= yield %>
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/mov_gallery.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | #
5 | # Concern for MovGallery model
6 | #
7 | module MovGallery
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | end
12 |
13 | def default_data_file
14 | Mokio::Youtube
15 | end
16 | end
17 | end
18 | end
19 | end
--------------------------------------------------------------------------------
/spec/models/content_link_spec.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: content_links
4 | #
5 | # content_id :integer
6 | # menu_id :integer
7 | # seq :integer
8 | # id :integer not null, primary key
9 | #
10 |
11 | require 'spec_helper'
12 | module Mokio
13 | describe ContentLink do
14 | pending "add some examples to (or delete) #{__FILE__}"
15 | end
16 | end
--------------------------------------------------------------------------------
/lib/generators/mokio/copy/views_generator.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Copy #:nodoc:all
3 | class ViewsGenerator < Rails::Generators::Base #:nodoc:
4 | source_root File.expand_path('../../../../../app/views/', __FILE__)
5 |
6 | desc "Copy a Mokio views into your application."
7 |
8 | def generate_views
9 | directory "mokio", "app/views/mokio"
10 | end
11 | end
12 | end
13 | end
--------------------------------------------------------------------------------
/app/models/mokio/contact_template.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: contact_templates
4 | #
5 | # id :integer not null, primary key
6 | # tpl :text
7 | # created_at :datetime
8 | # updated_at :datetime
9 | # contact_id :integer
10 | #
11 | module Mokio
12 | class ContactTemplate < ActiveRecord::Base
13 | include Mokio::Concerns::Models::ContactTemplate
14 | end
15 | end
--------------------------------------------------------------------------------
/app/models/mokio/module_position.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: module_positions
4 | #
5 | # id :integer not null, primary key
6 | # name :string(255)
7 | # tpl :string(255)
8 | # created_at :datetime
9 | # updated_at :datetime
10 | #
11 | module Mokio
12 | class ModulePosition < ActiveRecord::Base
13 | include Mokio::Concerns::Models::ModulePosition
14 | end
15 | end
--------------------------------------------------------------------------------
/lib/generators/mokio/positions_generator.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class PositionsGenerator < Rails::Generators::Base #:nodoc:
3 | argument :names, :type => :array
4 |
5 | desc "Creates module positions"
6 | def create_positions
7 | names.each do |name|
8 | Mokio::ModulePosition.create(:name => name)
9 | puts "Successfully created #{name.green} position."
10 | end
11 | end
12 |
13 | end
14 | end
--------------------------------------------------------------------------------
/app/models/mokio/lang.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: langs
4 | #
5 | # id :integer not null, primary key
6 | # name :string(255)
7 | # shortname :string(255)
8 | # active :boolean
9 | # menu_id :integer
10 | # created_at :datetime
11 | # updated_at :datetime
12 | #
13 | module Mokio
14 | class Lang < ActiveRecord::Base
15 | include Mokio::Concerns::Models::Lang
16 | end
17 | end
--------------------------------------------------------------------------------
/lib/tasks/mokio_install/create_module_positions.rake:
--------------------------------------------------------------------------------
1 | namespace :mokio_install do
2 | desc 'Create default Mokio::ModulePositions'
3 | task create_module_positions: :environment do
4 | unless Mokio::ModulePosition.any?
5 | Mokio::ModulePosition.create!(name: 'footer')
6 | puts "Created default module position 'footer'".green
7 | else
8 | puts 'Mokio::ModulePositions already exist'.brown
9 | end
10 | end
11 | end
--------------------------------------------------------------------------------
/db/migrate/20200303101501_create_mokio_histories.rb:
--------------------------------------------------------------------------------
1 | class CreateMokioHistories < ActiveRecord::Migration[6.0]
2 | def change
3 | create_table :mokio_histories do |t|
4 | t.text :before_value
5 | t.text :current_value
6 | t.string :field
7 | t.string :user_email
8 | t.references :historable, polymorphic: true, index: true
9 | t.datetime :changed_at
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/theme/nice-select/style.scss:
--------------------------------------------------------------------------------
1 | $gray_dark: #445870;
2 | $gray: #90a1b5;
3 | $gray_light: #e0e7ee;
4 | $gray_lighter: #f6f7f9;
5 | $blue: #55a1fb;
6 | $blue_light: #88bfff;
7 | $primary: $blue;
8 | $primary_light: $blue_light;
9 |
10 | @import 'nice-select';
11 |
12 | @mixin clearfix() {
13 | &:before, &:after {
14 | content: "";
15 | display: table;
16 | }
17 | &:after {
18 | clear: both;
19 | }
20 | }
--------------------------------------------------------------------------------
/lib/mokio/slugged.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Slugged
3 |
4 | def localized_slug
5 | "/#{I18n.locale.to_s}#{slug}"
6 | end
7 |
8 | def slug
9 | "/#{slug_prefix}/#{id}/#{slug_candidate.parameterize}"
10 | end
11 | def print_slug
12 | "#{slug}/print"
13 | end
14 | protected
15 | def slug_prefix
16 | "content"
17 | end
18 | def slug_candidate
19 | title
20 | end
21 | end
22 | end
--------------------------------------------------------------------------------
/spec/models/contact_template_spec.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: contact_templates
4 | #
5 | # id :integer not null, primary key
6 | # tpl :text
7 | # created_at :datetime
8 | # updated_at :datetime
9 | # contact_id :integer
10 | #
11 |
12 | require 'spec_helper'
13 |
14 | module Mokio
15 | describe ContactTemplate do
16 | pending "add some examples to (or delete) #{__FILE__}"
17 | end
18 | end
--------------------------------------------------------------------------------
/app/uploaders/mokio/thumb_uploader.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class ThumbUploader < CarrierWave::Uploader::Base
3 | include Mokio::Uploader::Asset
4 |
5 | def is_new? image
6 | model.thumb.blank?
7 | end
8 |
9 | # Add a white list of extensions which are allowed to be uploaded.
10 | # For images you might use something like this:
11 | def extension_white_list
12 | %w(jpg jpeg gif png)
13 | end
14 | end
15 | end
16 |
--------------------------------------------------------------------------------
/app/views/mokio/common/new.html.slim:
--------------------------------------------------------------------------------
1 | .span12
2 | = render :partial => "mokio/common/notice"
3 | .box
4 | - h4class = show_tabbed_form?(obj) ? 'tab-header' : nil
5 | = box_title nil, h4class do
6 | = bt("new_title", @obj_class)
7 | - if show_tabbed_form?(obj)
8 | = render :partial => "mokio/common/form_content_tabbed", locals: {obj: obj}
9 | - else
10 | = render :partial => "mokio/common/form_content", locals: {obj: obj}
11 |
--------------------------------------------------------------------------------
/app/views/mokio/static_pages/_form.html.slim:
--------------------------------------------------------------------------------
1 | = render :partial => "mokio/contents/common", locals: {f:f}
2 | = f.input :pathname, disabled: true
3 | = f.input :path, disabled: true
4 | = f.input :system_name, disabled: true
5 | = f.input :sitemap_date, :wrapper => :date, :as => :string, :input_html => { :class => "mask-date display_from", :value => (localize(f.object.sitemap_date, :format => :datepicker) if f.object.sitemap_date) }
6 | = f.input :automatic_date_update
7 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/custom_tabs.js:
--------------------------------------------------------------------------------
1 | // Tabs for form tabbed content
2 |
3 | $('.custom_tab_link').on('click', function() {
4 | $('.single_tab').removeClass('active');
5 |
6 | var activeTab = $(this).find('a').attr('href');
7 | $(activeTab).addClass('active');
8 |
9 | if ($('#gallery_tab').hasClass('active')) {
10 | $('#form_buttons').css('display', 'none');
11 | } else {
12 | $('#form_buttons').css('display', 'block');
13 | }
14 | });
--------------------------------------------------------------------------------
/app/models/mokio/available_module.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: available_modules
4 | #
5 | # id :integer not null, primary key
6 | # created_at :datetime
7 | # updated_at :datetime
8 | # module_position_id :integer
9 | # static_module_id :integer
10 | #
11 | module Mokio
12 | class AvailableModule < ActiveRecord::Base
13 | include Mokio::Concerns::Models::AvailableModule
14 | end
15 | end
16 |
--------------------------------------------------------------------------------
/app/models/mokio/recipient.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: recipients
4 | #
5 | # id :integer not null, primary key
6 | # email :string(255) not null
7 | # active :boolean default(TRUE)
8 | # created_at :datetime
9 | # updated_at :datetime
10 | # contact_id :integer
11 | #
12 | module Mokio
13 | class Recipient < ActiveRecord::Base
14 | include Mokio::Concerns::Models::Recipient
15 | end
16 | end
--------------------------------------------------------------------------------
/lib/generators/mokio/btr_generator.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class BtrGenerator < Rails::Generators::NamedBase
3 | # backend translations generator for mokio content
4 | argument :name, type: :string
5 | source_root File.expand_path("../templates/translations/", __FILE__)
6 |
7 | def create_example_translation_file
8 | template "backend_example.yml", File.join("config/locales/","en_backend_#{self.name.underscore}.yml")
9 | end
10 | end
11 | end
--------------------------------------------------------------------------------
/spec/dummy/config/initializers/backtrace_silencers.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4 | # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5 |
6 | # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7 | # Rails.backtrace_cleaner.remove_silencers!
8 |
--------------------------------------------------------------------------------
/spec/models/lang_spec.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: langs
4 | #
5 | # id :integer not null, primary key
6 | # name :string(255)
7 | # shortname :string(255)
8 | # active :boolean
9 | # menu_id :integer
10 | # created_at :datetime
11 | # updated_at :datetime
12 | #
13 |
14 | require 'spec_helper'
15 | module Mokio
16 | describe Lang do
17 | pending "add some examples to (or delete) #{__FILE__}"
18 | end
19 | end
--------------------------------------------------------------------------------
/app/views/mokio/photos/upload_external_links.js.slim:
--------------------------------------------------------------------------------
1 | - @photos.each do |photo|
2 | | $("#itemContainer").append("#{j render :template => 'mokio/photos/photo', :locals => {photo: photo} }");
3 | | activeButtonForPhoto(#{photo.id});
4 | | $("#gallery_content").append("#{j render template: 'mokio/photos/photo_modal', locals: {photo: photo}}");
5 | | var photoCount = parseInt($("#photoCount").text()) + 1;
6 | | $('#photoCount').text(photoCount);
7 | | $("#myModalLabel2 .loader").remove();
8 |
--------------------------------------------------------------------------------
/app/views/mokio/common/edit.html.slim:
--------------------------------------------------------------------------------
1 | .span12
2 | = render :partial => "mokio/common/notice"
3 | .box
4 | - h4class = show_tabbed_form?(obj) ? 'tab-header' : nil
5 | = box_title nil, h4class do
6 | = bt("edit_title", obj.respond_to?(:type) ? obj.type : @obj_class)
7 | - if show_tabbed_form?(obj)
8 | = render :partial => "mokio/common/form_content_tabbed", locals: {obj: obj}
9 | - else
10 | = render :partial => "mokio/common/form_content", locals: {obj: obj}
11 |
--------------------------------------------------------------------------------
/spec/models/recipient_spec.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: recipients
4 | #
5 | # id :integer not null, primary key
6 | # email :string(255) not null
7 | # active :boolean default(TRUE)
8 | # created_at :datetime
9 | # updated_at :datetime
10 | # contact_id :integer
11 | #
12 |
13 | require 'spec_helper'
14 | module Mokio
15 | describe Recipient do
16 | pending "add some examples to (or delete) #{__FILE__}"
17 | end
18 | end
--------------------------------------------------------------------------------
/app/models/mokio/selected_module.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: selected_modules
4 | #
5 | # id :integer not null, primary key
6 | # available_module_id :integer
7 | # menu_id :integer
8 | # seq :integer
9 | # created_at :datetime
10 | # updated_at :datetime
11 | #
12 | module Mokio
13 | class SelectedModule < ActiveRecord::Base
14 | include Mokio::Concerns::Models::SelectedModule
15 | end
16 | end
--------------------------------------------------------------------------------
/app/views/mokio/support/index.html.slim:
--------------------------------------------------------------------------------
1 | h2
2 | =t("support.support_title")
3 |
4 | a href="http://www.mokio.org/support"
5 | ="http://www.mokio.org/support"
6 | br
7 | br
8 | h2
9 | =t("support.tips_title")
10 | a href="#"
11 | =t("support.tips_title")
12 | br
13 | br
14 | h2
15 | =t("support.terms_title")
16 | a href="http://mokio.org/terms/show"
17 | =t("support.terms_title")
18 | br
19 | br
20 | h2
21 | =t("support.contact_title")
22 | strong
23 | ="email: support@mokio.org"
24 |
--------------------------------------------------------------------------------
/app/mailers/mokio/registration_mailer.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class RegistrationMailer < ActionMailer::Base
3 | default from: Devise.mailer_sender
4 |
5 | def send_pass_setup_instruction(obj, token)
6 | @obj = obj
7 | @email = obj.email
8 | @token = token
9 |
10 | headers = {
11 | subject: I18n.t('registration_mailer.title'),
12 | to: @email,
13 | from: Devise.mailer_sender
14 | }
15 |
16 | mail(headers)
17 | end
18 | end
19 | end
20 |
--------------------------------------------------------------------------------
/spec/factories/contact_templates.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: contact_templates
4 | #
5 | # id :integer not null, primary key
6 | # tpl :text
7 | # created_at :datetime
8 | # updated_at :datetime
9 | # contact_id :integer
10 | #
11 |
12 | # Read about factories at https://github.com/thoughtbot/factory_bot
13 |
14 | FactoryBot.define do
15 | factory :contact_template, class: "Mokio::ContactTemplate" do
16 | tpl { "MyText" }
17 | end
18 | end
19 |
--------------------------------------------------------------------------------
/spec/dummy/bin/webpack:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 |
3 | ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
4 | ENV["NODE_ENV"] ||= "development"
5 |
6 | require "pathname"
7 | ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
8 | Pathname.new(__FILE__).realpath)
9 |
10 | require "bundler/setup"
11 |
12 | require "webpacker"
13 | require "webpacker/webpack_runner"
14 |
15 | APP_ROOT = File.expand_path("..", __dir__)
16 | Dir.chdir(APP_ROOT) do
17 | Webpacker::WebpackRunner.run(ARGV)
18 | end
19 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/selected_module.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | #
5 | # Concern for SelectedModule model
6 | #
7 | module SelectedModule
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | default_scope { order('seq') }
12 | belongs_to :menu
13 | belongs_to :available_module
14 | acts_as_list :column => :seq, :scope => :menu_id
15 | end
16 | end
17 | end
18 | end
19 | end
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/plugins/files/plupload/i18n/da.js:
--------------------------------------------------------------------------------
1 | // .po file like language pack
2 | plupload.addI18n({
3 | 'Select files' : 'Vælg filer',
4 | 'Add files to the upload queue and click the start button.' : 'Tilføj filer til køen, og tryk på start.',
5 | 'Filename' : 'Filnavn',
6 | 'Status' : 'Status',
7 | 'Size' : 'Størrelse',
8 | 'Add files' : 'Tilføj filer',
9 | 'Stop current upload' : 'Stop upload',
10 | 'Start uploading queue' : 'Start upload',
11 | 'Drag files here.' : 'Træk filer her.'
12 | });
--------------------------------------------------------------------------------
/app/views/mokio/layout/_user_widget.html.slim:
--------------------------------------------------------------------------------
1 | - if user_signed_in?
2 | ul.nav.pull-right.usernav
3 | li#username
4 | span.icon16.icomoon-icon-user.white
5 | = current_user.email
6 | li#support
7 | a href="#{support_index_path}"
8 | span.icon16.entypo-icon-help
9 | = bts("support")
10 | li
11 | = link_to bt('change_password'), edit_password_user_path(current_user), :method => :get
12 | li
13 | = link_to bt('logout'), destroy_user_session_path, :method => :delete
14 |
--------------------------------------------------------------------------------
/spec/dummy/bin/webpack-dev-server:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 |
3 | ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
4 | ENV["NODE_ENV"] ||= "development"
5 |
6 | require "pathname"
7 | ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
8 | Pathname.new(__FILE__).realpath)
9 |
10 | require "bundler/setup"
11 |
12 | require "webpacker"
13 | require "webpacker/dev_server_runner"
14 |
15 | APP_ROOT = File.expand_path("..", __dir__)
16 | Dir.chdir(APP_ROOT) do
17 | Webpacker::DevServerRunner.run(ARGV)
18 | end
19 |
--------------------------------------------------------------------------------
/app/views/mokio/dashboard/_content.html.slim:
--------------------------------------------------------------------------------
1 | - cache [:dashboard_content, content] do
2 | tr
3 | td
4 | a href=edit_url(content.class.base_class, content)
5 | = content.title
6 | td
7 | .controls.center
8 | = table_controls_edit_btn( edit_url(content.class.base_class, content) )
9 | = table_controls_delete_btn( obj_url(content.class.base_class, content) ) if content.deletable
10 | = table_controls_copy_btn( copy_url(content.class.base_class, content) ) if content.deletable
11 |
--------------------------------------------------------------------------------
/app/views/mokio/photos/thumb.html.slim:
--------------------------------------------------------------------------------
1 | - cache [:photo_thumb, photo] do
2 | - if photo.thumb.blank?
3 | .thumb_upload
4 | = form_for @edited_photo, :html => { :id => "uploadthumb", :multipart => true }, :remote => true, :url => { :action => "update_thumb" } do |f|
5 | h5= bt("thumb_upload_info", Mokio::Photo)
6 | span#photoinputbtn.btn.fileinput-button
7 | span= bt("add_file", Mokio::Photo)
8 | = f.file_field :thumb
9 | - else
10 | img#photo_edited src=(photo.thumb.url )
11 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/content_link.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | #
5 | # Concern for ContentLink model
6 | #
7 | module ContentLink
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | default_scope { order('seq') }
12 | belongs_to :menu, :touch => true
13 | belongs_to :content, :touch => :etag
14 | acts_as_list :column => :seq, :scope => :menu_id
15 | end
16 | end
17 | end
18 | end
19 | end
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/_search_yt_body.html.slim:
--------------------------------------------------------------------------------
1 | .row-fluid.string.optional.youtube_youtube_id
2 | label.form-label.span2.yt_label= bt("search_movie_url", Mokio::Youtube)
3 | .span10
4 | input#movie_url.string.optional type='text' value=@yt
5 | input#content_id.string.optional type='hidden' value=@content_id
6 | p.desc
7 | = bt('movie_url_desc', Mokio::Youtube)
8 | javascript:
9 | yt_search();
10 | / %button.btn.btn-info.ytfind= btc('search')
11 | / %button#clear-yt.btn.ytclear= btc('clear')
12 |
--------------------------------------------------------------------------------
/docs/backend_search.md:
--------------------------------------------------------------------------------
1 | ## Mokio BackendSearch
2 |
3 | ### Enable search in models
4 |
5 | For enable backend search functionality You should set models array in mokio config.
6 | ```
7 | config.backend_search_enabled = ["Mokio::Content","Mokio::Menu","Mokio::YourModel"]
8 | ```
9 |
10 | ### Columns
11 | It's possible to customize which columns should be included in search results.
12 | This method should be added into custom model:
13 |
14 | ```
15 | def self.backend_search_columns
16 | %w(title content)
17 | end
18 | ```
19 |
--------------------------------------------------------------------------------
/lib/mokio/core_extension.rb:
--------------------------------------------------------------------------------
1 | class String #:nodoc:
2 | #
3 | # For easy colored std:out
4 | #
5 | def black; "\033[30m#{self}\033[0m" end
6 | def red; "\033[31m#{self}\033[0m" end
7 | def green; "\033[32m#{self}\033[0m" end
8 | def brown; "\033[33m#{self}\033[0m" end
9 | def blue; "\033[34m#{self}\033[0m" end
10 | def magenta; "\033[35m#{self}\033[0m" end
11 | def cyan; "\033[36m#{self}\033[0m" end
12 | def gray; "\033[37m#{self}\033[0m" end
13 | end
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/plugins/files/plupload/i18n/sv.js:
--------------------------------------------------------------------------------
1 | // .po file like language pack
2 | plupload.addI18n({
3 | 'Select files' : 'Välj filer',
4 | 'Add files to the upload queue and click the start button.' : 'Lägg till filer till kön och tryck på start.',
5 | 'Filename' : 'Filnamn',
6 | 'Status' : 'Status',
7 | 'Size' : 'Storlek',
8 | 'Add files' : 'Lägg till filer',
9 | 'Stop current upload' : 'Stoppa uppladdningen',
10 | 'Start uploading queue' : 'Starta uppladdningen',
11 | 'Drag files here.' : 'Dra filer hit'
12 | });
--------------------------------------------------------------------------------
/spec/test_helper.rb:
--------------------------------------------------------------------------------
1 | # Configure Rails Environment
2 | ENV["RAILS_ENV"] = "test"
3 |
4 | require File.expand_path("../dummy/config/environment.rb", __FILE__)
5 | require "rails/test_help"
6 |
7 | Rails.backtrace_cleaner.remove_silencers!
8 |
9 | # Load support files
10 | Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
11 |
12 | # Load fixtures from the engine
13 | if ActiveSupport::TestCase.method_defined?(:fixture_path=)
14 | ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
15 | end
16 |
--------------------------------------------------------------------------------
/db/migrate/20210414105700_create_editable_blocks.rb:
--------------------------------------------------------------------------------
1 | class CreateEditableBlocks < ActiveRecord::Migration[6.0]
2 | def change
3 | create_table :mokio_editable_blocks do |t|
4 | t.string :hash_id, index: true
5 | t.string :lang
6 | t.text :content
7 | t.references :author, index: true, foreign_key: { to_table: :mokio_users }, type: :integer
8 | t.references :editor, index: true, foreign_key: { to_table: :mokio_users }, type: :integer
9 | t.text :location
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/lib/mokio/custom_gallery.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module CustomGallery
3 | extend ActiveSupport::Concern
4 |
5 | included do
6 | has_many :data_files, class_name: "Mokio::DataFile", as: :imageable, dependent: :destroy
7 | end
8 |
9 | # Available options: Mokio::Photo, Mokio::Youtube
10 | def default_data_file
11 | Mokio::Photo
12 | end
13 |
14 | def gallery_title
15 | nil
16 | end
17 |
18 | module ClassMethods
19 | def has_gallery_enabled?
20 | true
21 | end
22 | end
23 | end
24 | end
--------------------------------------------------------------------------------
/spec/factories/selected_modules.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: selected_modules
4 | #
5 | # id :integer not null, primary key
6 | # available_module_id :integer
7 | # menu_id :integer
8 | # seq :integer
9 | # created_at :datetime
10 | # updated_at :datetime
11 | #
12 |
13 | # Read about factories at https://github.com/thoughtbot/factory_bot
14 |
15 | FactoryBot.define do
16 | factory :selected_module, :class => Mokio::SelectedModule do
17 | end
18 | end
19 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/comments.scss:
--------------------------------------------------------------------------------
1 | // Place all the styles related to the backend/comments controller here.
2 | // They will automatically be included in application.css.
3 | // You can use Sass (SCSS) here: http://sass-lang.com/
4 |
5 | .comments_buttons {
6 | float: right;
7 | position: absolute;
8 | top: 25px;
9 | right: 0px;
10 | z-index: 10;
11 | div {
12 | float: right;
13 | }
14 | form {
15 | float: right;
16 | }
17 | button {
18 | margin-right: 3px;
19 | }
20 | .white, .white a {
21 | color: #fff;
22 | }
23 | }
--------------------------------------------------------------------------------
/app/views/mokio/common/filters/_select.html.slim:
--------------------------------------------------------------------------------
1 | div.holder
2 | - selected_value = params[:mokio_filters] ? params[:mokio_filters][field] : nil
3 | = label(:mokio_filters, field, t(object_attribute_trans_key(obj, field)))
4 | - if data[:default_value]
5 | - data[:values].prepend(data[:default_value])
6 | - else
7 | - data[:values].prepend([t('backend.default_filter_select_value'), nil])
8 |
9 | = select( \
10 | :mokio_filters, \
11 | field, \
12 | options_for_select(data[:values], selected_value), \
13 | include_blank: false \
14 | )
15 |
--------------------------------------------------------------------------------
/lib/tasks/mokio_install/install_routes.rake:
--------------------------------------------------------------------------------
1 | namespace :mokio_install do
2 | desc 'Add mokio routing to routes.rb'
3 | task install_routes: :environment do |_t|
4 | path = "#{Rails.root}/config/routes.rb"
5 | text = File.read(path)
6 | unless Rails.application.routes.url_helpers.method_defined?(:mokio_url)
7 | File.open(path, 'w') do |file|
8 | file.puts text.gsub(/Rails.application.routes.draw do/, "Rails.application.routes.draw do \n mount Mokio::Engine => '/backend' \n mount Ckeditor::Engine => '/ckeditor'")
9 | end
10 | end
11 | end
12 | end
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/jquery.ui.supr.scss:
--------------------------------------------------------------------------------
1 | @import "backend/supr-theme/jquery.ui.theme";
2 | @import "backend/supr-theme/jquery.ui.core";
3 | @import "backend/supr-theme/jquery.ui.resizable";
4 | @import "backend/supr-theme/jquery.ui.dialog";
5 | @import "backend/supr-theme/jquery.ui.slider";
6 | @import "jquery.ui.datepicker";
7 | @import "backend/supr-theme/jquery.ui.progressbar";
8 | /*@import "jquery-ui-timepicker-addon";*/
9 | @import "backend/supr-theme/jquery.ui.autocomplete";
10 | /*@import "jquery.ui.combobox";*/
11 | @import "backend/supr-theme/jquery.ui.spinner";
--------------------------------------------------------------------------------
/lib/mokio/concerns/controllers/contents.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Controllers
4 | #
5 | # Concern for ContentsController
6 | #
7 | module Contents
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | include Mokio::Concerns::Controllers::MainPics
12 | end
13 |
14 | #
15 | # Overriten CommonController new (Mokio::Concerns::Controllers::Common)
16 | #
17 | def new
18 | redirect_to new_article_path
19 | end
20 | end
21 | end
22 | end
23 | end
--------------------------------------------------------------------------------
/app/views/mokio/layout/header.html.slim:
--------------------------------------------------------------------------------
1 | .navbar
2 |
3 | .navbar-inner
4 | .version-nr
5 | = "#{bt("version")}: "
6 | = Mokio::VERSION
7 | .container-fluid
8 | a.brand#logo href=root_path title="MOKIO - CMS Open Source"
9 | img src=asset_path("backend/mokio-logo.svg") alt="Logo MOKIO"
10 |
11 |
12 | .nav-no-collapse
13 | ul.nav
14 | li
15 | a href="/" target="_blank"
16 | span.icon16.icomoon-icon-home.black
17 | = bt("site_preview")
18 | = render 'mokio/layout/user_widget'
19 |
--------------------------------------------------------------------------------
/app/views/mokio/users/edit_password.html.slim:
--------------------------------------------------------------------------------
1 | .span12
2 | = render :partial => "mokio/common/notice"
3 | .box
4 | - cache :user_box_title do
5 | = box_title do
6 | = bt("edit_password", Mokio::User)
7 | .content
8 | = common_form do
9 | .row-fluid
10 | = simple_form_for @user, :url => update_password_user_path, :html => { :class => 'form-horizontal' } do |f|
11 | = render :partial => "mokio/users/form", :locals => {f: f, obj: @obj}
12 | .form-actions
13 | = btn_submit bt("save")
14 | = btn_cancel "#{engine_root}users"
15 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/pic_gallery.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | #
5 | # Concern for PicGallery model
6 | #
7 | module PicGallery
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | end
12 |
13 | #
14 | # Return constant
15 | #
16 | def default_data_file
17 | Mokio::Photo
18 | end
19 |
20 | module ClassMethods
21 | def has_gallery_enabled?
22 | true
23 | end
24 | end
25 | end
26 | end
27 | end
28 | end
--------------------------------------------------------------------------------
/lib/tasks/add_custom_js.rake:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | namespace :mokio do
4 | desc 'Creates custom.js file in project, for easy js alterations inside gem'
5 | task add_custom_js: :environment do
6 | puts 'Creating custom.js file...'.blue
7 | file = 'app/assets/javascripts/backend/custom.js'
8 | unless File.exist?(file)
9 | content = "// Add your js for backend here\n"
10 | touch file
11 | File.write(file, content)
12 | puts "Created new file at #{file}".green
13 | else
14 | puts 'File already exists'.red
15 | end
16 | end
17 | end
18 |
--------------------------------------------------------------------------------
/spec/factories/recipients.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: recipients
4 | #
5 | # id :integer not null, primary key
6 | # email :string(255) not null
7 | # active :boolean default(TRUE)
8 | # created_at :datetime
9 | # updated_at :datetime
10 | # contact_id :integer
11 | #
12 |
13 | # Read about factories at https://github.com/thoughtbot/factory_bot
14 |
15 | FactoryBot.define do
16 | factory :recipient, :class => Mokio::Recipient do
17 | email { "MyString" }
18 | active { false }
19 | contact_id { 1 }
20 | end
21 | end
22 |
--------------------------------------------------------------------------------
/app/views/mokio/menus/lang_changed.js.slim:
--------------------------------------------------------------------------------
1 | | $('#menu_parent_id').html('');
2 | | $('#menu_parent_id').html('#{j(options_from_collection_for_select(@menu.parent_tree, 'id', 'name'))}');
3 | | $('#menu_breadcrumps').html("");
4 | | if (#{@content_confirm}) {remove_except_all_lang('')}
5 | | if (#{@modules_confirm}) {$('[id^=fake-select_]').each(function(i, val) {remove_except_all_lang($(val).attr('id').substring(11));})}
6 | | $('#box1View').html("#{j (options_for_select(@menu.available_contents.collect{|elt| [elt.title, elt.id,{class: 'displayed_' + elt.displayed?.to_s}]}))}");
7 | |#{replace_available_modules(@menu)}
--------------------------------------------------------------------------------
/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | # This command will automatically be run when you run "rails" with Rails gems
3 | # installed from the root of your application.
4 |
5 | ENGINE_ROOT = File.expand_path('..', __dir__)
6 | ENGINE_PATH = File.expand_path('../lib/mokio/engine', __dir__)
7 | APP_PATH = File.expand_path('../spec/dummy/config/application', __dir__)
8 |
9 | # Set up gems listed in the Gemfile.
10 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
11 | require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
12 |
13 | require 'rails/all'
14 | require 'rails/engine/commands'
15 |
--------------------------------------------------------------------------------
/lib/generators/mokio/copy/assets_generator.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Copy #:nodoc:all
3 | class AssetsGenerator < Rails::Generators::Base #:nodoc:
4 | source_root File.expand_path('../../../../../app/assets/', __FILE__)
5 |
6 | desc "Copy a Mokio assets into your application."
7 |
8 | def generate_assets
9 | directory "fonts", "app/assets/fonts"
10 | directory "images", "app/assets/images"
11 | directory "javascripts", "app/assets/javascripts"
12 | directory "stylesheets", "app/assets/stylesheets"
13 | end
14 | end
15 | end
16 | end
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .bundle/
2 | log/*.log
3 | pkg/
4 | spec/dummy/log/
5 | spec/dummy/log/*
6 | spec/dummy/tmp/
7 | spec/dummy/.sass-cache
8 | spec/dummy/solr
9 | spec/dummy/public/uploads
10 | spec/dummy/public/assets
11 | spec/dummy/config/initializers/mokio.rb
12 | spec/dummy/db/schema.rb
13 | spec/dummy/db/migrate/*
14 | spec/dummy/node_modules
15 | Gemfile.lock
16 | .ruby-version*
17 | .ruby-gemset*
18 | .gitignore~
19 | *miniprofiler/mp_timers*
20 | spec/dummy/tmp/*
21 | spec/dummy/.env
22 | coverage/*
23 | coverage
24 |
25 |
26 | /.idea/
27 | /.metadata/
28 | /.project
29 | mokio*.gem
30 | .swp
31 | INFO.md
32 |
--------------------------------------------------------------------------------
/lib/generators/mokio/templates/contents/model.rb:
--------------------------------------------------------------------------------
1 | <% module_namespacing do -%>
2 | module Mokio
3 | class <%= class_name %> < Mokio::Content
4 |
5 | def columns_for_table
6 | %w(title active type updated_at lang_id)
7 | end
8 |
9 | def editable
10 | true
11 | end
12 |
13 | def deletable
14 | true
15 | end
16 |
17 | # Generate url to edit content
18 | def title_view
19 | (ActionController::Base.helpers.link_to self[:title], ApplicationController.helpers.edit_url(self.class.base_class, self)).html_safe
20 | end
21 |
22 | end
23 | end
24 | <% end -%>
--------------------------------------------------------------------------------
/spec/dummy/config/initializers/wrap_parameters.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # This file contains settings for ActionController::ParamsWrapper which
4 | # is enabled by default.
5 |
6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7 | ActiveSupport.on_load(:action_controller) do
8 | wrap_parameters format: [:json] if respond_to?(:wrap_parameters)
9 | end
10 |
11 | # To enable root element in JSON for ActiveRecord objects.
12 | # ActiveSupport.on_load(:active_record) do
13 | # self.include_root_in_json = true
14 | # end
15 |
--------------------------------------------------------------------------------
/spec/factories/common_factory.rb:
--------------------------------------------------------------------------------
1 | require 'faker'
2 |
3 | FactoryBot.define do
4 | trait :not_editable do
5 | editable { false }
6 | deletable { false }
7 | end
8 |
9 | trait :not_deletable do
10 | deletable { false }
11 | end
12 |
13 | trait :with_intro_and_content do
14 | intro { Faker::Lorem.paragraph(sentence_count: 3) }
15 | content { Faker::Lorem.paragraph(sentence_count: 20) }
16 | end
17 |
18 | trait :pl do
19 | lang_id { 1 }
20 | end
21 |
22 | trait :en do
23 | lang_id { 2 }
24 | end
25 |
26 | trait :all_lang do
27 | lang_id { nil }
28 | end
29 |
30 | end
31 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/mokio/application.css:
--------------------------------------------------------------------------------
1 | /*
2 | * This is a manifest file that'll be compiled into application.css, which will include all the files
3 | * listed below.
4 | *
5 | * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6 | * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
7 | *
8 | * You're free to add application-wide styles to this file and they'll appear at the top of the
9 | * compiled file, but it's generally better to create a new file per style scope.
10 | *
11 | *= require_self
12 | *= require_tree .
13 | */
14 |
--------------------------------------------------------------------------------
/app/datatables/datatable_backend_search.rb:
--------------------------------------------------------------------------------
1 | class DatatableBackendSearch < DatatableArray
2 | def table_controls(row)
3 | html = ''
4 |
5 | begin
6 | objClass = row.self_object_class
7 | obj = row.self_object
8 | rescue
9 | objClass = nil
10 | obj = nil
11 | end
12 |
13 | if obj.present?
14 | html += @view.controller.render_additional_action_buttons obj
15 | html += table_controls_edit_btn( edit_url(objClass, obj), true ) if obj.editable
16 | html += table_controls_delete_btn( obj_url(objClass, obj)) if obj.deletable
17 | end
18 |
19 | html
20 |
21 | end
22 | end
--------------------------------------------------------------------------------
/app/views/mokio/photos/crop_thumb.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html('
');
2 | | previous = $("#itemContainer").find("li##{@edited_photo.id}").prev();
3 | | $("#itemContainer").find("li##{@edited_photo.id}").remove();
4 | | $("#itemContainer").find("#modaledit_#{@edited_photo.id}").remove();
5 | | if (previous.attr("id")){
6 | | previous.after("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
7 | | }
8 | | else {
9 | | $("#itemContainer").prepend("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
10 | | }
11 |
12 |
--------------------------------------------------------------------------------
/app/views/mokio/photos/rotate_thumb.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html('
');
2 | | previous = $("#itemContainer").find("li##{@edited_photo.id}").prev();
3 | | $("#itemContainer").find("li##{@edited_photo.id}").remove();
4 | | $("#itemContainer").find("#modaledit_#{@edited_photo.id}").remove();
5 | | if (previous.attr("id")){
6 | | previous.after("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
7 | | }
8 | | else {
9 | | $("#itemContainer").prepend("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
10 | | }
11 |
12 |
--------------------------------------------------------------------------------
/spec/dummy/app/assets/stylesheets/application.css:
--------------------------------------------------------------------------------
1 | /*
2 | * This is a manifest file that'll be compiled into application.css, which will include all the files
3 | * listed below.
4 | *
5 | * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6 | * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
7 | *
8 | * You're free to add application-wide styles to this file and they'll appear at the top of the
9 | * compiled file, but it's generally better to create a new file per style scope.
10 | *
11 | *= require_self
12 | *= require_tree .
13 | */
14 |
--------------------------------------------------------------------------------
/app/views/mokio/photos/crop_photo.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html('
');
2 | | previous = $("#itemContainer").find("li##{@edited_photo.id}").prev();
3 | | $("#itemContainer").find("li##{@edited_photo.id}").remove();
4 | | $("#itemContainer").find("#modaledit_#{@edited_photo.id}").remove();
5 | | if (previous.attr("id")){
6 | | previous.after("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
7 | | }
8 | | else {
9 | | $("#itemContainer").prepend("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
10 | | }
11 |
--------------------------------------------------------------------------------
/app/views/mokio/photos/rotate_photo.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html('
');
2 | | previous = $("#itemContainer").find("li##{@edited_photo.id}").prev();
3 | | $("#itemContainer").find("li##{@edited_photo.id}").remove();
4 | | $("#itemContainer").find("#modaledit_#{@edited_photo.id}").remove();
5 | | if (previous.attr("id")){
6 | | previous.after("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
7 | | }
8 | | else {
9 | | $("#itemContainer").prepend("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
10 | | }
11 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/head.js:
--------------------------------------------------------------------------------
1 | // ! Important plugins put in all pages
2 | //= require jquery2
3 | // require jquery.turbolinks
4 | //= require jquery.ui.all
5 | //= require jquery_ujs
6 |
7 | // Jquery migrate adds methods removed in newest jquery but still used by plugins
8 | //= require backend/head/jquery-migrate-1.2.1
9 |
10 | //= require backend/bootstrap/bootstrap
11 | //= require backend/head/jquery.cookie
12 | //= require backend/head/jquery.mousewheel
13 | // !
14 |
15 | // For toggle buttons
16 | //= require bootstrap-switch
17 |
18 | // Ckeditor
19 | //= require backend/mokio_dynamic_fields
20 | //= require backend/lodash/lodash
21 |
--------------------------------------------------------------------------------
/app/views/mokio/application_settings/_form.html.slim:
--------------------------------------------------------------------------------
1 | = f.input :name, disabled: !obj.editable_name
2 | - if obj.field_type == 'ckeditor'
3 | = f.input :value, as: :ckeditor, input_html: {ckeditor: {toolbar: 'Mini', height: 150}}
4 | - elsif obj.field_type == 'string'
5 | = f.input :value, as: :string
6 | - else
7 | = f.input :value
8 | = f.input :description
9 | = f.input :deletable
10 | = f.input :mokio_application_settings_group_id, \
11 | collection: Mokio::ApplicationSettingsGroup.all.collect{|group| [bt(group.name),group.id]}, \
12 | include_blank: bt(''), \
13 | disabled: !obj.display_editable_field?('mokio_application_settings_group_id')
14 |
--------------------------------------------------------------------------------
/app/views/mokio/photos/remove_thumb.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html("#{j render :template => 'mokio/photos/thumb', :locals => {photo: @edited_photo} }");
2 | | previous = $("#itemContainer").find("li##{@edited_photo.id}").prev();
3 | | $("#itemContainer").find("li##{@edited_photo.id}").remove();
4 | | $("#itemContainer").find("#modaledit_#{@edited_photo.id}").remove();
5 | | if (previous.attr("id")){
6 | | previous.after("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
7 | | }
8 | | else {
9 | | $("#itemContainer").prepend("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
10 | | }
11 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/contact_template.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | #
5 | # Concern for ContactTemplate model
6 | #
7 | module ContactTemplate
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | belongs_to :contact
12 | accepts_nested_attributes_for :contact
13 | end
14 |
15 | module ClassMethods
16 | #
17 | # Table of contact_template_attributes
18 | #
19 | def contact_template_attributes
20 | [ :tpl ]
21 | end
22 | end
23 | end
24 | end
25 | end
26 | end
--------------------------------------------------------------------------------
/app/views/mokio/photos/update_thumb.js.slim:
--------------------------------------------------------------------------------
1 | | $(".photo_holder").html("#{j render :template => 'mokio/photos/thumb', :locals => {photo: @edited_photo} }");
2 | | previous = $("#itemContainer").find("li##{@edited_photo.id}").prev();
3 | | $("#itemContainer").find("li##{@edited_photo.id}").remove();
4 | | $("#itemContainer").find("#modaledit_#{@edited_photo.id}").remove();
5 | | if (previous.attr("id")){
6 | | previous.after("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
7 | | }
8 | | else {
9 | | $("#itemContainer").prepend("#{j render :template => 'mokio/photos/photo', :locals => {photo: @edited_photo} }");
10 | | }
11 |
12 |
--------------------------------------------------------------------------------
/app/views/mokio/editor_panel/panel.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | Edycja treści jako <%= user.name_view %>
9 |
10 |
11 |
12 |
15 |
16 | <%= javascript_include_tag 'frontend_editor/editor.js' %>
17 | <%= javascript_include_tag 'frontend_editor/frontend_editor.js' %>
18 |
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/uploader.html.slim:
--------------------------------------------------------------------------------
1 | - cache [:youtube_upload, obj] do
2 | a.edit data-toggle="modal" class="load-modal" data-href="#{mokio.root_path}/youtubes/#{obj.id}/load_new_form" id="add-youtube"
3 | button.btn.btn-info.uploader
4 | span.icomoon-icon-plus.white
5 | = bt("add_#{obj.default_data_file.to_s.tableize}", @obj_class)
6 | .modal class=("youtube-edit modal fade modalyt") id="new_yt_form" role="dialog" aria-hidden=("true" ) aria-labelledby="myModalLabel"
7 | .modal-dialog
8 | .modal-content
9 | .modal-header
10 | h3#myModalLabel.modal-title= bt("youtube_upload",'Youtube')
11 | .modal-body
12 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/plugins/files/plupload/i18n/sr.js:
--------------------------------------------------------------------------------
1 | // Serbian
2 | plupload.addI18n({
3 | 'Select files' : 'Izaberite fajlove',
4 | 'Add files to the upload queue and click the start button.' : 'Dodajte fajlove u listu i kliknite na dugme Start.',
5 | 'Filename' : 'Naziv fajla',
6 | 'Status' : 'Status',
7 | 'Size' : 'Veličina',
8 | 'Add Files' : 'Dodaj fajlove',
9 | 'Stop current upload' : 'Zaustavi upload',
10 | 'Start uploading queue' : 'Počni upload',
11 | 'Drag files here.' : 'Prevucite fajlove ovde.',
12 | 'Start Upload': 'Počni upload',
13 | 'Uploaded %d/%d files': 'Snimljeno %d/%d fajlova'
14 | });
--------------------------------------------------------------------------------
/db/migrate/20220113135021_create_mokio_application_settings.rb:
--------------------------------------------------------------------------------
1 | class CreateMokioApplicationSettings < ActiveRecord::Migration[6.0]
2 | def change
3 | create_table :mokio_application_settings do |t|
4 | t.string :name
5 | t.text :value
6 | t.boolean :deletable, default: true
7 | t.text :description
8 | t.string :field_type
9 | t.boolean :editable_name, default: true
10 | t.references :mokio_application_settings_group, index: {name: :mokio_app_setting_group}
11 | t.timestamps
12 | end
13 |
14 | # add_reference :mokio_application_settings, :mokio_application_settings_groups, index: true
15 |
16 | end
17 | end
18 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/plugins/files/plupload/i18n/cs.js:
--------------------------------------------------------------------------------
1 | // .po file like language pack
2 | plupload.addI18n({
3 | 'Select files' : 'Vyberte soubory',
4 | 'Add files to the upload queue and click the start button.' : 'Přidejte soubory do fronty a pak spusťte nahrávání.',
5 | 'Filename' : 'Název souboru',
6 | 'Status' : 'Status',
7 | 'Size' : 'Velikost',
8 | 'Add Files' : 'Přidat soubory',
9 | 'Stop current upload' : 'Zastavit nahrávání',
10 | 'Start uploading queue' : 'Spustit frontu nahrávání',
11 | 'Drag files here.' : 'Sem přetáhněte soubory.',
12 | 'Start Upload': 'Spustit nahrávání',
13 | 'Uploaded %d/%d files': 'Nahráno %d/%d souborů'
14 | });
--------------------------------------------------------------------------------
/app/helpers/mokio/backend/user_helper.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Backend
3 | module UserHelper
4 | def can_generate_pass_change_link?(obj)
5 | obj != current_user
6 | end
7 |
8 | def can_edit_password_without_confirmation?(obj)
9 | current_user.is_super_admin? && obj != current_user
10 | end
11 |
12 | def is_action_user_edit?
13 | params[:action] == "edit" && params[:controller] == "mokio/users"
14 | end
15 |
16 | def show_reset_password_token_errors
17 | resource.errors.messages[:reset_password_token][0] if resource.errors.messages[:reset_password_token]
18 | end
19 | end
20 | end
21 | end
22 |
--------------------------------------------------------------------------------
/lib/mokio/logger.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class Logger
3 | #initialize and set debug level
4 | def initialize
5 | level = Mokio.mokio_log_level
6 | @@mokiologger ||= ::Logger.new("#{Rails.root}/log/#{Rails.env}_mokio.log")
7 | @@mokiologger.level = level
8 | end
9 |
10 | # methods for logged info , error ,debug , warn msg
11 | def info(msg)
12 | @@mokiologger.info(msg)
13 | end
14 |
15 | def debug(msg)
16 | @@mokiologger.debug(msg)
17 | end
18 |
19 | def error(msg)
20 | @@mokiologger.error(msg)
21 | end
22 |
23 | def warn(msg)
24 | @@mokiologger.warn(msg)
25 | end
26 | end
27 | end
28 |
--------------------------------------------------------------------------------
/lib/generators/mokio/install_generator.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class InstallGenerator < Rails::Generators::Base #:nodoc:
3 | source_root File.expand_path('../templates', __FILE__)
4 |
5 | desc "Creates a Mokio initializer(configuration file) in your application."
6 |
7 | def create_confg_file
8 | if rails_4?
9 | template "mokio.rb", "config/initializers/mokio.rb"
10 | else
11 | puts "Mokio supports only Rails #{Mokio::SUPPORTED_RAILS} or higher, your version is #{Rails.version}".red
12 | end
13 | end
14 |
15 | private
16 |
17 | def rails_4?
18 | Rails::VERSION::MAJOR == Mokio::SUPPORTED_RAILS
19 | end
20 | end
21 | end
--------------------------------------------------------------------------------
/spec/dummy/app/assets/javascripts/application.js:
--------------------------------------------------------------------------------
1 | // This is a manifest file that'll be compiled into application.js, which will include all the files
2 | // listed below.
3 | //
4 | // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5 | // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
6 | //
7 | // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8 | // compiled file.
9 | //
10 | // Read Sprockets README (https://github.com/sstephenson/sprockets#sprockets-directives) for details
11 | // about supported directives.
12 | //
13 | //= require_tree .
14 |
--------------------------------------------------------------------------------
/lib/tasks/ckeditor_create_nondigest_assets.rake:
--------------------------------------------------------------------------------
1 | namespace :ckeditor do
2 | desc 'Create nondigest versions of some ckeditor assets (e.g. moono skin png)'
3 | task :create_nondigest_assets do
4 | fingerprint = /\-[0-9a-f]{32}\./
5 | for file in Dir['public/assets/ckeditor/contents-*.css', 'public/assets/ckeditor/skins/moono/*.png']
6 | next unless file =~ fingerprint
7 | nondigest = file.sub fingerprint, '.' # contents-0d8ffa186a00f5063461bc0ba0d96087.css => contents.css
8 | FileUtils.cp file, nondigest, verbose: true
9 | end
10 | end
11 | end
12 |
13 | Rake::Task['assets:precompile'].enhance do
14 | Rake::Task['ckeditor:create_nondigest_assets'].invoke
15 | end
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/plugins/files/plupload/i18n/el.js:
--------------------------------------------------------------------------------
1 | // Greek
2 | plupload.addI18n({
3 | 'Select files' : 'Επιλέξτε Αρχεία',
4 | 'Add files to the upload queue and click the start button.' : 'Προσθήκη αρχείων στην ουρά μεταφόρτωσης',
5 | 'Filename' : 'Όνομα αρχείου',
6 | 'Status' : 'Κατάσταση',
7 | 'Size' : 'Μέγεθος',
8 | 'Add Files' : 'Προσθέστε αρχεία',
9 | 'Stop current upload' : 'Διακοπή τρέχουσας μεταφόρτωσης',
10 | 'Start uploading queue' : 'Εκκίνηση μεταφόρτωσης ουράς αρχείων',
11 | 'Drag files here.' : 'Σύρετε αρχεία εδώ',
12 | 'Start Upload': 'Εκκίνηση μεταφόρτωσης',
13 | 'Uploaded %d/%d files': 'Ανέβηκαν %d/%d αρχεία'
14 | });
--------------------------------------------------------------------------------
/spec/factories/langs.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: langs
4 | #
5 | # id :integer not null, primary key
6 | # name :string(255)
7 | # shortname :string(255)
8 | # active :boolean
9 | # menu_id :integer
10 | # created_at :datetime
11 | # updated_at :datetime
12 | #
13 |
14 | # Read about factories at https://github.com/thoughtbot/factory_bot
15 |
16 | FactoryBot.define do
17 | factory :lang_en, :class => Mokio::Lang do
18 | id { 2 }
19 | name { 'en' }
20 | shortname { 'en' }
21 | end
22 |
23 | factory :lang_pl, :class => Mokio::Lang do
24 | id { 1 }
25 | name { 'pl' }
26 | shortname { 'pl' }
27 | end
28 | end
29 |
--------------------------------------------------------------------------------
/app/uploaders/mokio/main_pic_uploader.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class MainPicUploader < CarrierWave::Uploader::Base
3 | include Mokio::Uploader::Asset
4 |
5 | version :edit, :if => :picgallery? do
6 | process :resize_to_fill => [100, 100]
7 | end
8 |
9 | version :main_pic do
10 | process :resize_to_fill => [150, 150]
11 | end
12 |
13 | def picgallery? image
14 | model.type == "PicGallery" if model.respond_to?(:type)
15 | end
16 |
17 | # Add a white list of extensions which are allowed to be uploaded.
18 | # For images you might use something like this:
19 | def extension_white_list
20 | %w(jpg jpeg gif png)
21 | end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/app/views/mokio/common/_mokio_filters.html.slim:
--------------------------------------------------------------------------------
1 | - if mokio_filters_enabled?(obj)
2 | = form_with(method: :get, class: 'mokio-filter-form', local: true)
3 | p Filtruj:
4 | - obj.filter_index_config.each do |key, data|
5 | - if data[:field_type] == "select"
6 | = render partial: "mokio/common/filters/select", \
7 | locals: {field: key, data: data, obj: obj}
8 | - elsif data[:field_type] == "date"
9 | = render partial: "mokio/common/filters/date", \
10 | locals: {field: key, data: data, obj: obj}
11 | - elsif data[:field_type] == "text"
12 | = render partial: "mokio/common/filters/text", \
13 | locals: {field: key, data: data, obj: obj}
14 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/plugins/forms/validate/validate.css:
--------------------------------------------------------------------------------
1 | /* Form Validation */
2 | label.error {
3 | padding: 3px 4px 3px 4px;
4 | color: #c93605;
5 | font-weight: bold;
6 | text-shadow: 0px 1px 1px rgba(164, 44, 4, 0.20);
7 | -moz-text-shadow: 0px 1px 1px rgba(164, 44, 4, 0.20);
8 | -webkit-text-shadow: 0px 1px 1px rgba(164, 44, 4, 0.20);
9 | font-size:11px;
10 | }
11 |
12 | form input.error {border: 1px solid #ED7A53 !important;}
13 | form input.valid {border: 1px solid #9FC569 !important;}
14 |
15 | .controls label.error {
16 | margin-top:-20px;
17 | }
18 | .controls .selector label.error {
19 | position: absolute;
20 | top: 5px;
21 | right: 0;
22 | margin:0;
23 | }
--------------------------------------------------------------------------------
/app/views/mokio/youtubes/thumb.html.slim:
--------------------------------------------------------------------------------
1 | - cache [:movie_thumb, @edited_movie] do
2 | .image-view
3 | - unless @edited_movie.thumb.blank?
4 | img src=@edited_movie.thumb.url alt=(@edited_movie.thumb )
5 | - else
6 | = form_for @edited_movie, :html => { :multipart => true }, :remote => true, :url => { :action => "update_thumb" } do |f|
7 | span#photoinputbtn.btn.btn-success.fileinput-button
8 | span= bt("add_file")
9 | = f.file_field :thumb
10 | canvas#imageCanvas
11 | ul#photo-fileinfo.unstyled
12 |
13 | .edit-sidebar
14 | = link_to remove_thumb_photo_path(@edited_movie), remote: true, method: :delete do
15 | span.icon24.icomoon-icon-remove
16 |
--------------------------------------------------------------------------------
/lib/mokio/solr_config.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module SolrConfig #:nodoc:
3 | #
4 | # Enable/Disable using solr
5 | #
6 | mattr_accessor :enabled
7 | self.enabled = false
8 |
9 | def self.all_exceptions
10 | self.mokio_exceptions + self.exceptions
11 | end
12 |
13 | #
14 | # Application classes which are excluded from indexing or have own searchable method
15 | #
16 | mattr_accessor :exceptions
17 |
18 | private
19 | #
20 | # Mokio classes which are excluded from indexing or have own searchable method
21 | #
22 | def self.mokio_exceptions
23 | [
24 | :menu, :user, :externalscript, :lang
25 | ]
26 | end
27 |
28 | end
29 | end
--------------------------------------------------------------------------------
/app/uploaders/mokio/data_file_uploader.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | class DataFileUploader < CarrierWave::Uploader::Base
3 | include Mokio::Uploader::Asset
4 |
5 | process :watermark => Mokio.watermark_path, :if => :create_watermark?
6 |
7 | protected
8 |
9 | def create_watermark? image
10 | Mokio.enable_watermark
11 | end
12 |
13 | def watermark(path_to_file)
14 | manipulate! do |img|
15 | img = img.composite(MiniMagick::Image.open(path_to_file), "jpg") do |c|
16 | c.gravity "SouthEast"
17 | end
18 | end
19 | end
20 |
21 | def picgallery? image
22 | Content.find(model.content_id).type == "PicGallery"
23 | end
24 | end
25 | end
26 |
--------------------------------------------------------------------------------
/spec/dummy/config/initializers/secret_token.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Your secret key is used for verifying the integrity of signed cookies.
4 | # If you change this key, all old signed cookies will become invalid!
5 |
6 | # Make sure the secret is at least 30 characters and all random,
7 | # no regular words or you'll be exposed to dictionary attacks.
8 | # You can use `rake secret` to generate a secure secret key.
9 |
10 | # Make sure your secret_key_base is kept private
11 | # if you're sharing your code publicly.
12 | Dummy::Application.config.secret_key_base = 'e02e8866f1cb16e1da51a4e0869f66098b65aadf601c1a8041f6a318f69466174293351a94fcf9ab7e49b46c75e51d03a472d7fd51a3f64e7706040db46afe02'
13 |
--------------------------------------------------------------------------------
/app/models/ckeditor/picture.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: ckeditor_assets
4 | #
5 | # id :integer not null, primary key
6 | # data_file_name :string(255) not null
7 | # data_content_type :string(255)
8 | # data_file_size :integer
9 | # assetable_id :integer
10 | # assetable_type :string(30)
11 | # type :string(30)
12 | # width :integer
13 | # height :integer
14 | # created_at :datetime
15 | # updated_at :datetime
16 | #
17 |
18 | class Ckeditor::Picture < Ckeditor::Asset
19 | mount_uploader :data, CkeditorPictureUploader, :mount_on => :data_file_name
20 |
21 | def url_content
22 | url(:content)
23 | end
24 | end
25 |
--------------------------------------------------------------------------------
/spec/dummy/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, '\1en'
8 | # inflect.singular /^(ox)en/i, '\1'
9 | # inflect.irregular 'person', 'people'
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym 'RESTful'
16 | # end
17 |
--------------------------------------------------------------------------------
/app/views/mokio/common/_obj.html.slim:
--------------------------------------------------------------------------------
1 | tr.odd.gradeA class=(("disabled" if !obj.active) )
2 | - @obj_class.columns_for_table.each do |t|
3 | td id=(obj.id )
4 | /
5 | / Common index tries to find object.attribute_view function in your Model to parse value
6 | / if it's not defined, just puts simple object.atribute value
7 | /
8 | - if obj.respond_to?("#{t}_view")
9 | = eval("obj.#{t}_view")
10 | - else
11 | = obj.try(t)
12 | td
13 | .controls.center
14 | = table_controls_edit_btn( edit_url(@obj_class, obj) ) if obj.editable
15 | = table_controls_delete_btn( obj_url(@obj_class, obj) ) if obj.deletable
16 | = table_controls_copy_btn( copy_url(@obj_class, obj) ) if obj.editable
17 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/controllers/langs.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Controllers
4 | #
5 | # Concern for LangsController
6 | #
7 | module Langs
8 | extend ActiveSupport::Concern
9 | included do
10 | end
11 |
12 | def set_breadcrumbs_prefix
13 | @breadcrumbs_prefix = "settings"
14 | @breadcrumbs_prefix_link = ""
15 | end
16 |
17 | private
18 | #
19 | # Never trust parameters from the scary internet, only allow the white list through.
20 | #
21 |
22 | def lang_params #:doc:
23 | params[:lang].permit(:name,:shortname,:active,:menu_id)
24 | end
25 | end
26 | end
27 | end
28 | end
29 |
--------------------------------------------------------------------------------
/spec/dummy/config/locales/en.yml:
--------------------------------------------------------------------------------
1 | # Files in the config/locales directory are used for internationalization
2 | # and are automatically loaded by Rails. If you want to use locales other
3 | # than English, add the necessary files in this directory.
4 | #
5 | # To use the locales, use `I18n.t`:
6 | #
7 | # I18n.t 'hello'
8 | #
9 | # In views, this is aliased to just `t`:
10 | #
11 | # <%= t('hello') %>
12 | #
13 | # To use a different locale, set it with `I18n.locale`:
14 | #
15 | # I18n.locale = :es
16 | #
17 | # This would use the information in config/locales/es.yml.
18 | #
19 | # To learn more, please read the Rails Internationalization guide
20 | # available at http://guides.rubyonrails.org/i18n.html.
21 |
22 | en:
23 | hello: "Hello world"
24 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/jquery.ui.combobox.css:
--------------------------------------------------------------------------------
1 | .ui-combobox {
2 | position: relative;
3 | display: inline-block;
4 | margin-bottom: 20px;
5 | }
6 | .ui-combobox-toggle {
7 | position: absolute;
8 | top: 0;
9 | bottom: 0;
10 | padding: 0;
11 | right:-8px;
12 | padding-left: 5px;
13 | padding-right: 6px;
14 | /* adjust styles for IE 6/7 */
15 | *height: 1.7em;
16 | *top: 0.1em;
17 | }
18 | .ui-combobox-input {
19 | margin: 0;
20 | padding: 3px;
21 | outline: none;
22 | width: 100%;
23 | }
24 | .ui-combobox .ui-button {
25 | cursor: pointer;
26 | }
27 | .ui-combobox .ui-icon {
28 | margin-top: 5px;
29 | }
30 |
31 | .form-row .controls .ui-combobox-input, .ui-combobox-input {
32 | margin-bottom: 0;
33 | }
--------------------------------------------------------------------------------
/app/models/ckeditor/asset.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: ckeditor_assets
4 | #
5 | # id :integer not null, primary key
6 | # data_file_name :string(255) not null
7 | # data_content_type :string(255)
8 | # data_file_size :integer
9 | # assetable_id :integer
10 | # assetable_type :string(30)
11 | # type :string(30)
12 | # width :integer
13 | # height :integer
14 | # created_at :datetime
15 | # updated_at :datetime
16 | #
17 |
18 | class Ckeditor::Asset < ActiveRecord::Base
19 | include Ckeditor::Orm::ActiveRecord::AssetBase
20 |
21 | delegate :url, :current_path, :content_type, :to => :data
22 |
23 | validates_presence_of :data
24 | end
25 |
--------------------------------------------------------------------------------
/app/views/mokio/contents/_content_info_widget.html.slim:
--------------------------------------------------------------------------------
1 | .sidebar-widget
2 | h5.title= bt("content_now")
3 | .content
4 | .rightnow
5 | ul.unstyled
6 | li
7 | span.number= Mokio::Article.count
8 | span.icon16.icomoon-icon-file
9 | = bt("articles_now")
10 |
11 | li
12 | span.number= Mokio::PicGallery.count
13 | span.icon16.icomoon-icon-picture
14 | = bt("pic_galleries_now")
15 |
16 | li
17 | span.number= Mokio::MovGallery.count
18 | span.icon16.icomoon-icon-movie
19 | = bt("mov_galleries_now")
20 |
21 | li
22 | span.number= Mokio::Contact.count
23 | span.icon16.icomoon-icon-mail-3
24 | = bt("contacts_now")
25 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/models/youtube.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Models
4 | #
5 | # Concern for Youtube model
6 | #
7 | module Youtube
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | end
12 |
13 | module ClassMethods
14 | #
15 | # Returns VideoInfo object with movie for specified movie_url.
16 | # Using gem 'video_info'
17 | #
18 | def find_movie(movie_url)
19 | begin
20 | video = VideoInfo.new(movie_url)
21 | rescue
22 | video = nil
23 | error = true
24 | end
25 | video
26 | end
27 | end
28 | end
29 | end
30 | end
31 | end
--------------------------------------------------------------------------------
/spec/models/module_position_spec.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: module_positions
4 | #
5 | # id :integer not null, primary key
6 | # name :string(255)
7 | # tpl :string(255)
8 | # created_at :datetime
9 | # updated_at :datetime
10 | #
11 |
12 | require 'spec_helper'
13 | module Mokio
14 | describe ModulePosition do
15 | it 'has valid factory' do
16 | FactoryBot.create(:module_position).should be_valid
17 | end
18 |
19 | describe 'has and belongs to many static modules' do
20 | it 'reflect on association' do
21 | module_position = ModulePosition.reflect_on_association(:static_modules)
22 | module_position.macro.should == :has_and_belongs_to_many
23 | end
24 | end
25 | end
26 | end
27 |
--------------------------------------------------------------------------------
/lib/mokio/concerns/controllers/main_pics.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Controllers
4 | #
5 | # Concern for ContentsController
6 | #
7 | module MainPics
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 |
12 | def delete_main_pic
13 | obj = Mokio::Content.find(params[:id])
14 | obj.remove_main_pic!
15 |
16 | if obj.save!
17 | flash[:notice] = t("main_pics.deleted")
18 | else
19 | flash[:error] = t("main_pics.not_deleted")
20 | end
21 |
22 | respond_to do |format|
23 | format.js
24 | end
25 | end
26 |
27 | end
28 |
29 | end
30 | end
31 | end
32 | end
--------------------------------------------------------------------------------
/lib/mokio/concerns/controllers/module_positions.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Controllers
4 | #
5 | # Concern for ModulePositions
6 | #
7 | module ModulePositions
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | end
12 |
13 | def set_breadcrumbs_prefix
14 | @breadcrumbs_prefix = "page_elements"
15 | @breadcrumbs_prefix_link = ""
16 | end
17 |
18 | private
19 | #
20 | # Never trust parameters from the scary internet, only allow the white list through.
21 | #
22 |
23 | def module_position_params #:doc:
24 | params[:module_position].permit(:name,:tpl)
25 | end
26 |
27 | end
28 | end
29 | end
30 | end
--------------------------------------------------------------------------------
/lib/mokio/concerns/controllers/external_scripts.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Concerns
3 | module Controllers
4 | #
5 | # Concern for ExternalScriptsController
6 | #
7 | module ExternalScripts
8 | extend ActiveSupport::Concern
9 |
10 | included do
11 | end
12 |
13 | def set_breadcrumbs_prefix
14 | @breadcrumbs_prefix = "settings"
15 | @breadcrumbs_prefix_link = ""
16 | end
17 |
18 | private
19 | #
20 | # Never trust parameters from the scary internet, only allow the white list through.
21 | #
22 |
23 | def external_script_params #:doc:
24 | params[:external_script].permit(:name,:script)
25 | end
26 | end
27 | end
28 | end
29 | end
--------------------------------------------------------------------------------
/spec/factories/static_modules_factory.rb:
--------------------------------------------------------------------------------
1 | require 'faker'
2 |
3 | FactoryBot.define do
4 |
5 | factory :static_module, traits: [:with_intro_and_content], :class => Mokio::StaticModule do
6 | title { Faker::Lorem.word }
7 | display_from { '2013-12-02' }
8 | display_to { '2013-12-31' }
9 | lang_id { 1 }
10 | always_displayed { false }
11 |
12 | factory :static_module_without_title do
13 | title { '' }
14 | end
15 |
16 | factory :always_displayed_static_module do
17 | always_displayed { true }
18 | end
19 |
20 | factory :with_module_position do
21 | module_position_ids { ['1'] }
22 | end
23 | end
24 |
25 | factory :module_position, :class => Mokio::ModulePosition do
26 | name { Faker::Lorem.word }
27 | end
28 |
29 | end
30 |
--------------------------------------------------------------------------------
/app/assets/stylesheets/backend/supr-theme/jquery-ui-timepicker-addon.scss:
--------------------------------------------------------------------------------
1 | .ui-timepicker-div {border-top: 1px solid #c4c4c4;}
2 | .ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
3 | .ui-timepicker-div dl { text-align: left; }
4 | .ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
5 | .ui-timepicker-div dl dd { margin: 0 10px 15px 65px; }
6 | .ui-timepicker-div td { font-size: 90%; }
7 | .ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
8 |
9 | .ui_tpicker_time_label {margin-left: 10px;}
10 | .ui_tpicker_hour_label{margin-left: 10px;float: left;margin-top: -8px;}
11 | .ui_tpicker_minute_label {margin-left: 10px;float: left;margin-top: -8px;}
12 | .ui-datepicker-buttonpane button.ui-datepicker-current{
13 | background: #9FC569 50% 50% repeat-x;
14 | }
--------------------------------------------------------------------------------
/app/models/ckeditor/attachment_file.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: ckeditor_assets
4 | #
5 | # id :integer not null, primary key
6 | # data_file_name :string(255) not null
7 | # data_content_type :string(255)
8 | # data_file_size :integer
9 | # assetable_id :integer
10 | # assetable_type :string(30)
11 | # type :string(30)
12 | # width :integer
13 | # height :integer
14 | # created_at :datetime
15 | # updated_at :datetime
16 | #
17 |
18 | class Ckeditor::AttachmentFile < Ckeditor::Asset
19 | mount_uploader :data, CkeditorAttachmentFileUploader, :mount_on => :data_file_name
20 |
21 | def url_thumb
22 | @url_thumb ||= Ckeditor::Utils.filethumb(filename)
23 | end
24 | end
25 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/load_histories.js.erb:
--------------------------------------------------------------------------------
1 | $(window).scroll(function() {
2 | if ($("#history_tab").hasClass("active")) {
3 | if ($(window).scrollTop() + $(window).height() == $(document).height()) {
4 | var last_loaded_date = $(".title_date").last().data("historyDate");
5 | var obj_id = $("#histories").last().data("objId");
6 | var obj_type = $("#histories").last().data("objType");
7 |
8 | $.ajax({
9 | url: "/backend/histories/get_n_more",
10 | type: "POST",
11 | data: {
12 | "last_loaded_date": last_loaded_date,
13 | "obj_id": obj_id,
14 | "obj_type": obj_type
15 | },
16 | error: function() {
17 | alert("Błąd pobierania historii");
18 | }
19 | });
20 | };
21 | };
22 | });
--------------------------------------------------------------------------------
/app/views/mokio/dashboard/tbl_content.html.slim:
--------------------------------------------------------------------------------
1 | .span6
2 | .box.dashboard-box
3 | = box_title do
4 | = title_msg
5 | - if collection.any?
6 | span.label.label-success.dashboard_label= "#{label_msg} #{more}"
7 | .content
8 | table.responsive.table
9 | - if collection.any?
10 | thead
11 | tr
12 | th= bt("name")
13 | th= bt("actions")
14 | tbody
15 | = render partial: "content", collection: collection
16 | - else
17 | tbody
18 | p= bt('no_records_found')
19 |
20 | - if local_assigns[:more_link]
21 | a href=(more_link )
22 | span.btn.btn-info.btn-mini.btn-more
23 | = bt("more")
24 | span.icomoon-icon-arrow-right-4.white
25 |
--------------------------------------------------------------------------------
/app/assets/javascripts/backend/mokio_dynamic_fields.js:
--------------------------------------------------------------------------------
1 | function backend_dynamic_fields(assoc) {
2 | $(assoc).on('click', '.dynamic_fields_remove_row', function(event) {
3 | var message = $(this).data('message');
4 |
5 | var confirmation = confirm(message);
6 | if (confirmation) {
7 | $(this).closest('td').find('input').val(true);
8 | $(this).closest('.dynamic_fields_row').hide();
9 | }
10 | return event.preventDefault();
11 | });
12 |
13 | $(assoc).on('click', '.add_fields', function(event) {
14 | var regexp, time;
15 | time = new Date().getTime();
16 | regexp = new RegExp($(this).data('id'), 'g');
17 | $(assoc).find('.dynamic_fields_container_fields').append($(this).data('fields').replace(regexp, time));
18 | return event.preventDefault();
19 | });
20 | }
--------------------------------------------------------------------------------
/app/models/mokio/support.rb:
--------------------------------------------------------------------------------
1 | # == Schema Information
2 | #
3 | # Table name: contents
4 | #
5 | # id :integer not null, primary key
6 | # title :string(255)
7 | # intro :text
8 | # content :text
9 | # type :string(255)
10 | # home_page :boolean
11 | # tpl :string(255)
12 | # contact :boolean
13 | # active :boolean default(TRUE)
14 | # lang_id :integer
15 | # gallery_type :string(255)
16 | # editable :boolean default(TRUE)
17 | # deletable :boolean default(TRUE)
18 | # display_from :date
19 | # display_to :date
20 | # created_at :datetime
21 | # updated_at :datetime
22 | # gmap_id :integer
23 | #
24 | module Mokio
25 | class Support < ActiveRecord::Base
26 |
27 | end
28 | end
29 |
--------------------------------------------------------------------------------
/lib/mokio/sluglize.rb:
--------------------------------------------------------------------------------
1 | module Mokio
2 | module Sluglize
3 | extend ActiveSupport::Concern
4 |
5 | included do
6 | validates :slug, uniqueness: { case_sensitive: false }
7 | validates :slug, presence: true
8 | before_validation :create_slug
9 | before_validation :update_slug
10 | end
11 |
12 | private
13 |
14 | def create_slug
15 | if self.slug.blank?
16 | if self.respond_to?(:slug_by_value)
17 | tmp = self.slug_by_value
18 | else
19 | tmp = self.name
20 | end
21 | self.slug = tmp.nil? ? '' : tmp.parameterize
22 | else
23 | self.slug = self.slug.parameterize
24 | end
25 | end
26 |
27 | def update_slug
28 | self.slug = self.slug.parameterize
29 | end
30 |
31 | end
32 | end
33 |
--------------------------------------------------------------------------------
/spec/dummy/config/application.rb:
--------------------------------------------------------------------------------
1 | require_relative 'boot'
2 | require 'rails/all'
3 | # Require the gems listed in Gemfile, including any gems
4 | # you've limited to :test, :development, or :production.
5 | Bundler.require(*Rails.groups)
6 | require "mokio"
7 |
8 | module Dummy
9 | class Application < Rails::Application
10 | config.load_defaults 6.0
11 | # Initialize configuration defaults for originally generated Rails version.
12 | # Settings in config/environments/* take precedence over those specified here.
13 | # Application configuration can go into files in config/initializers
14 | # -- all .rb files in that directory are automatically loaded after loading
15 | # the framework and any gems in your application.
16 | config.i18n.default_locale = :pl
17 | end
18 | end
19 |
20 |
21 |
--------------------------------------------------------------------------------
/app/views/mokio/menus/new_menu_position.slim:
--------------------------------------------------------------------------------
1 | .span12
2 | = render :partial => "mokio/common/notice"
3 | .box
4 | = box_title do
5 | = bt("new_menu_position_title", @menu.class)
6 | = common_form do
7 | .row-fluid
8 | = simple_form_for @menu, :url => create_menu_position_menus_path, :html => { :class => 'form-horizontal' } do |f|
9 |
10 | .row-fluid
11 | = f.hidden_field :fake, :value => true
12 | = render_backend_input_lang_id(f)
13 | = f.input :name
14 |
15 |
16 | - cache [:form_buttons, obj] do
17 | .form-actions
18 | = btn_submit bt("save")
19 | = btn_submit bt("save_and_create_new"), true
20 | = btn_cancel "#{engine_root}#{obj.class.to_s.tableize.gsub("mokio/", "")}"
21 |
22 |
--------------------------------------------------------------------------------
/lib/tasks/mokio_install/create_langs.rake:
--------------------------------------------------------------------------------
1 | namespace :mokio_install do
2 | desc 'Create default Mokio::Langs'
3 | task create_langs: :environment do
4 | unless Mokio::Lang.any?
5 | default_lang_name = Mokio.frontend_default_lang
6 | default_lang = Mokio::Lang.new({
7 | name: default_lang_name,
8 | shortname: default_lang_name,
9 | active: true,
10 | menu_id: Mokio.frontend_initial_pl,
11 | id: 1
12 | })
13 | puts "Created default lang '#{default_lang.name}'".green if default_lang.save
14 | else
15 | puts 'Mokio::Langs already exist'.brown
16 | end
17 | end
18 | end
--------------------------------------------------------------------------------
/app/views/mokio/data_files/uploader.html.slim:
--------------------------------------------------------------------------------
1 | button.btn.btn-info.uploader data-toggle="modal" data-target="#modalupload"
2 | span.icomoon-icon-plus.white
3 | = bt("add_#{obj.default_data_file.to_s.tableize}")
4 |
5 | = render :template => "mokio/photos/from_external_link", locals: {obj: obj} if (obj.default_data_file == Mokio::Photo)
6 |
7 | #modalupload.modal.fade role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" style=("display: none;")
8 | .modal-dialog
9 | .modal-content
10 | .modal-header
11 | h3#myModalLabel.modal-title= bt("file_upload")
12 | .modal-body
13 | = render :partial => "mokio/data_files/file_upload", locals: {file_type: obj.default_data_file }
14 | .modal-footer
15 | button.btn.btn-primary type="button" data-dismiss="modal" = bt("close")
16 |
--------------------------------------------------------------------------------
/app/controllers/mokio/common_controller.rb:
--------------------------------------------------------------------------------
1 |
2 | #
3 | # Creating simple actions for controllers, use in others with < Backend::CommonController
4 | #
5 | # To override some actions just simply define them in your controller
6 | #
7 | # If you need to add something more but still use CommonController remeber to call 'super' in your controller action
8 | # ex:
9 | # class Backend::SamplesController < Backend::CommonController
10 | # def index
11 | # super
12 | # my_additional_action
13 | # end
14 | # end
15 | #
16 | # Remember that CommonController uses variable named as your controller
17 | # For samples_controller variable is @sample
18 | # => See obj method in Common::Controller::Object lib
19 | #
20 | class Mokio::CommonController < Mokio::BaseController
21 | include Mokio::Concerns::Controllers::Common
22 | end
23 |
--------------------------------------------------------------------------------
/app/views/mokio/histories/elements/_histories_list.html.slim:
--------------------------------------------------------------------------------
1 | - @histories.each do |value, history_grouped|
2 | h4.title_date data-history-date="#{value}"
3 | = history_helper_header(value, history_grouped)
4 | table.table
5 | - history_grouped.each do |history|
6 | tr
7 | td.value.value_before
8 | .input_content
9 | = history_helper_input(history.field, history.before_value)
10 | = history_helper_show_more();
11 | td.value_title_center
12 | .input_title
13 | = history_helper_label(history)
14 | .input_author
15 | = history.user_email
16 | td.value.value_after
17 | .input_content
18 | = history_helper_input(history.field, history.current_value)
19 | = history_helper_show_more();
20 |
--------------------------------------------------------------------------------