redde 0.1.18 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.hound.yml +2 -0
- data/.rubocop.yml +19 -0
- data/.travis.yml +5 -4
- data/Gemfile +8 -5
- data/MIT-LICENSE +20 -0
- data/README.md +96 -105
- data/Rakefile +20 -1
- data/app/assets/fonts/redde-admin.eot +0 -0
- data/app/assets/fonts/redde-admin.svg +12 -0
- data/app/assets/fonts/redde-admin.ttf +0 -0
- data/app/assets/fonts/redde-admin.woff +0 -0
- data/app/assets/images/redde/close-hover.svg +4 -0
- data/app/assets/images/redde/close.svg +6 -0
- data/app/assets/images/redde/enter.svg +4 -0
- data/app/assets/images/redde/eye.svg +5 -0
- data/app/assets/images/redde/eye_disactive.svg +5 -0
- data/app/assets/images/redde/main-menu/cog.svg +8 -0
- data/app/assets/images/redde/main-menu/cog_active.svg +8 -0
- data/app/assets/images/redde/main-menu/folder.svg +4 -0
- data/app/assets/images/redde/main-menu/folder_active.svg +4 -0
- data/app/assets/images/redde/main-menu/home.svg +4 -0
- data/app/assets/images/redde/main-menu/home_active.svg +4 -0
- data/app/assets/images/redde/main-menu/list.svg +4 -0
- data/app/assets/images/redde/main-menu/list_active.svg +4 -0
- data/app/assets/images/redde/next.svg +7 -0
- data/app/assets/images/redde/plus.svg +3 -0
- data/app/assets/images/redde/sel.svg +6 -0
- data/app/assets/images/redde/user.svg +12 -0
- data/app/assets/javascripts/redde/fileapi.js.coffee +17 -0
- data/app/assets/javascripts/redde/index.js.coffee +12 -0
- data/app/assets/javascripts/redde/redactor/index.coffee +8 -0
- data/{lib/generators/redde/layout/templates/assets/redactor/javascripts/jquery-migrate-1.2.1.js → app/assets/javascripts/redde/redactor/jquery-migrate-1.3.0.js} +215 -34
- data/{lib/generators/redde/layout/templates/assets/redactor/javascripts → app/assets/javascripts/redde}/redactor/redactor.js.erb +250 -250
- data/app/assets/javascripts/redde/sortTree/index.js.coffee +47 -0
- data/app/assets/javascripts/redde/sortable.coffee +47 -0
- data/{spec/dummy/app/assets/stylesheets/admin → app/assets/stylesheets/redde}/blocks/error-msg.sass +4 -2
- data/app/assets/stylesheets/redde/blocks/flash-msg.sass +22 -0
- data/app/assets/stylesheets/redde/blocks/list-v2.sass +96 -0
- data/app/assets/stylesheets/redde/blocks/photos-uploader.sass +21 -0
- data/app/assets/stylesheets/redde/blocks/photos.sass +56 -0
- data/app/assets/stylesheets/redde/blocks/redde-form.sass +55 -0
- data/app/assets/stylesheets/redde/blocks/sort-tree.sass +46 -0
- data/app/assets/stylesheets/redde/defaults/btn.sass +30 -0
- data/app/assets/stylesheets/redde/defaults/del.sass +23 -0
- data/app/assets/stylesheets/redde/defaults/index.sass +87 -0
- data/app/assets/stylesheets/redde/defaults/inp.sass +20 -0
- data/app/assets/stylesheets/redde/defaults/reset.sass +25 -0
- data/app/assets/stylesheets/redde/defaults/sbm.sass +32 -0
- data/app/assets/stylesheets/redde/defaults/sel.sass +29 -0
- data/app/assets/stylesheets/redde/fonts.sass +42 -0
- data/app/assets/stylesheets/redde/index.scss +5 -0
- data/app/assets/stylesheets/redde/layouts/header.sass +63 -0
- data/app/assets/stylesheets/redde/layouts/main-menu.sass +63 -0
- data/app/assets/stylesheets/redde/layouts/main.sass +48 -0
- data/app/assets/stylesheets/redde/layouts/page-header.sass +34 -0
- data/app/assets/stylesheets/redde/layouts/page-sidebar.sass +9 -0
- data/app/assets/stylesheets/redde/mixins.sass +10 -0
- data/{spec/dummy/app/assets/stylesheets → app/assets/stylesheets/redde}/redactor/index.scss +46 -49
- data/app/assets/stylesheets/redde-admin/blocks/list-v2.sass +96 -0
- data/app/assets/stylesheets/redde-admin/defaults/del.sass +23 -0
- data/app/controllers/admin/base_controller.rb +81 -0
- data/{lib/generators/redde/layout/templates/controllers → app/controllers/admin}/managers_controller.rb +10 -6
- data/app/controllers/admin/redde_photos_controller.rb +31 -0
- data/app/controllers/admin/system_commands_controller.rb +11 -0
- data/app/form_builders/redde_form_builder.rb +106 -0
- data/app/helpers/redde/admin_helper.rb +33 -0
- data/app/helpers/redde/form_helper.rb +59 -0
- data/app/helpers/redde/index_helper.rb +61 -0
- data/{lib/redde/concerns/layout.rb → app/models/concerns/redde/layouts.rb} +1 -1
- data/app/models/concerns/redde/photoable.rb +5 -0
- data/{lib/redde/concerns → app/models/concerns/redde}/sluggable.rb +6 -3
- data/app/models/concerns/redde/tree_sortable.rb +40 -0
- data/{lib/redde/concerns → app/models/concerns/redde}/with_photo.rb +5 -5
- data/app/models/redde/photo.rb +16 -0
- data/app/models/redde/system_command.rb +43 -0
- data/{lib → app/models}/redde/url_generator.rb +7 -3
- data/{lib/generators/redde/photo/templates/uploader.rb → app/uploaders/photo_uploader.rb} +4 -4
- data/app/views/admin/base/_tree_item.html.haml +10 -0
- data/app/views/admin/base/edit.html.haml +21 -0
- data/app/views/admin/base/index.html.haml +68 -0
- data/app/views/admin/base/tree.html.haml +14 -0
- data/app/views/admin/managers/edit.html.haml +11 -0
- data/app/views/admin/managers/index.html.haml +17 -0
- data/{lib/generators/redde/layout/templates/base → app/views/admin/redde}/_header.html.haml +5 -6
- data/app/views/admin/redde/_main_menu.html.haml +12 -0
- data/app/views/admin/redde/_page_header.html.haml +3 -0
- data/app/views/admin/redde/_sidebar.html.haml +16 -0
- data/{lib/generators/redde/layout/templates/base → app/views/admin/redde}/_validate.haml +2 -2
- data/app/views/admin/redde_photos/_photo.haml +11 -0
- data/app/views/admin/redde_photos/_photos.haml +28 -0
- data/app/views/admin/system_commands/index.html.haml +25 -0
- data/app/views/kaminari/redde/_first_page.html.haml +9 -0
- data/app/views/kaminari/redde/_gap.html.haml +8 -0
- data/app/views/kaminari/redde/_last_page.html.haml +9 -0
- data/app/views/kaminari/redde/_next_page.html.haml +9 -0
- data/app/views/kaminari/redde/_page.html.haml +10 -0
- data/app/views/kaminari/redde/_paginator.html.haml +18 -0
- data/app/views/kaminari/redde/_prev_page.html.haml +9 -0
- data/{lib/generators/redde/layout/templates → app/views}/layouts/admin.html.haml +28 -29
- data/{lib/generators/redde/layout/templates → app/views}/layouts/login.html.haml +32 -32
- data/bin/rails +12 -0
- data/config/locales/paginate.ru.yml +9 -0
- data/config/routes.rb +8 -0
- data/db/migrate/20160121152706_create_redde_photos.rb +16 -0
- data/lib/generators/redde/layout/layout_generator.rb +3 -26
- data/lib/generators/redde/layout/templates/assets/javascripts/admin.js +1 -0
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin.css +15 -0
- data/lib/generators/redde/scaffold/scaffold_generator.rb +45 -8
- data/lib/generators/redde/scaffold/templates/controllers/controller.rb +2 -45
- data/lib/generators/redde/scaffold/templates/edit.html.haml +4 -9
- data/lib/generators/redde/scaffold/templates/index.html.haml +2 -6
- data/lib/generators/redde/scaffold/templates/ru.yml +14 -0
- data/lib/redde/engine.rb +16 -0
- data/lib/redde/version.rb +1 -1
- data/lib/redde.rb +20 -4
- data/lib/tasks/redde_tasks.rake +4 -0
- data/redde.gemspec +44 -22
- metadata +482 -455
- data/Guardfile +0 -24
- data/LICIENSE.md +0 -21
- data/lib/generators/redde/layout/templates/assets/images/admin/del.png +0 -0
- data/lib/generators/redde/layout/templates/assets/images/admin/folder_.png +0 -0
- data/lib/generators/redde/layout/templates/assets/javascripts/admin/index.js +0 -20
- data/lib/generators/redde/layout/templates/assets/redactor/javascripts/redactor/index.coffee +0 -4
- data/lib/generators/redde/layout/templates/assets/redactor/stylesheets/redactor/index.scss +0 -369
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/blocks/error-msg.sass +0 -47
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/blocks/notice.scss +0 -39
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/blocks/photos.scss +0 -31
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/blocks/sortable.sass +0 -44
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/custom/index.scss +0 -1
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/defaults/index.scss +0 -131
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/defaults/input.sass +0 -35
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/defaults/reset.sass +0 -33
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/defaults/table.scss +0 -24
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/index.scss +0 -6
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/layouts/header.sass +0 -50
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/layouts/launchbar.sass +0 -23
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/layouts/main.sass +0 -38
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/layouts/page-header.sass +0 -22
- data/lib/generators/redde/layout/templates/assets/stylesheets/admin/layouts/page-sidebar.sass +0 -24
- data/lib/generators/redde/layout/templates/base/_launchbar.html.haml +0 -11
- data/lib/generators/redde/layout/templates/base/_sidebar.html.haml +0 -14
- data/lib/generators/redde/layout/templates/controllers/base_controller.rb +0 -28
- data/lib/generators/redde/layout/templates/form_builders/redde_form_builder.rb +0 -63
- data/lib/generators/redde/layout/templates/helpers/admin_helper.rb +0 -94
- data/lib/generators/redde/photo/photo_generator.rb +0 -35
- data/lib/generators/redde/photo/templates/controller.rb +0 -20
- data/lib/generators/redde/photo/templates/create_photos.rb +0 -16
- data/lib/generators/redde/photo/templates/photo.rb +0 -4
- data/lib/generators/redde/photo/templates/photos/_photo.haml +0 -5
- data/lib/generators/redde/photo/templates/photos/_photos.haml +0 -19
- data/lib/generators/redde/photo/templates/photos/create.js.erb +0 -1
- data/lib/redde/concerns/photoable.rb +0 -17
- data/spec/dummy/.rspec +0 -1
- data/spec/dummy/README.rdoc +0 -28
- data/spec/dummy/Rakefile +0 -6
- data/spec/dummy/app/assets/images/admin/addphoto.png +0 -0
- data/spec/dummy/app/assets/images/admin/ajaxloader2.gif +0 -0
- data/spec/dummy/app/assets/images/admin/arrow_down.png +0 -0
- data/spec/dummy/app/assets/images/admin/arrow_enter.png +0 -0
- data/spec/dummy/app/assets/images/admin/arrow_right.png +0 -0
- data/spec/dummy/app/assets/images/admin/coins.png +0 -0
- data/spec/dummy/app/assets/images/admin/confirm.png +0 -0
- data/spec/dummy/app/assets/images/admin/del.png +0 -0
- data/spec/dummy/app/assets/images/admin/delete.png +0 -0
- data/spec/dummy/app/assets/images/admin/email.png +0 -0
- data/spec/dummy/app/assets/images/admin/error-label-triangle.png +0 -0
- data/spec/dummy/app/assets/images/admin/error.png +0 -0
- data/spec/dummy/app/assets/images/admin/favicon.png +0 -0
- data/spec/dummy/app/assets/images/admin/fio.png +0 -0
- data/spec/dummy/app/assets/images/admin/folder.png +0 -0
- data/spec/dummy/app/assets/images/admin/folder_.png +0 -0
- data/spec/dummy/app/assets/images/admin/icon_eye.gif +0 -0
- data/spec/dummy/app/assets/images/admin/lightbox/css/jquery.lightbox-0.5.css +0 -101
- data/spec/dummy/app/assets/images/admin/lightbox/images/lightbox-blank.gif +0 -0
- data/spec/dummy/app/assets/images/admin/lightbox/images/lightbox-btn-close.gif +0 -0
- data/spec/dummy/app/assets/images/admin/lightbox/images/lightbox-btn-next.gif +0 -0
- data/spec/dummy/app/assets/images/admin/lightbox/images/lightbox-btn-prev.gif +0 -0
- data/spec/dummy/app/assets/images/admin/lightbox/images/lightbox-ico-loading.gif +0 -0
- data/spec/dummy/app/assets/images/admin/lightbox/js/jquery.js +0 -32
- data/spec/dummy/app/assets/images/admin/lightbox/js/jquery.lightbox-0.5.js +0 -477
- data/spec/dummy/app/assets/images/admin/lightbox/js/jquery.lightbox-0.5.min.js +0 -42
- data/spec/dummy/app/assets/images/admin/lightbox/js/jquery.lightbox-0.5.pack.js +0 -14
- data/spec/dummy/app/assets/images/admin/logo.png +0 -0
- data/spec/dummy/app/assets/images/admin/logo_reddeshop.png +0 -0
- data/spec/dummy/app/assets/images/admin/move_handler.png +0 -0
- data/spec/dummy/app/assets/images/admin/phone.png +0 -0
- data/spec/dummy/app/assets/images/admin/photo_ico.png +0 -0
- data/spec/dummy/app/assets/images/admin/print.png +0 -0
- data/spec/dummy/app/assets/images/admin/refresh.png +0 -0
- data/spec/dummy/app/assets/images/admin/submit.png +0 -0
- data/spec/dummy/app/assets/images/admin/submit_hover.png +0 -0
- data/spec/dummy/app/assets/images/admin/view.png +0 -0
- data/spec/dummy/app/assets/images/admin/view_mk.png +0 -0
- data/spec/dummy/app/assets/images/redactor/icons.png +0 -0
- data/spec/dummy/app/assets/images/redactor/plugins/file.html +0 -3
- data/spec/dummy/app/assets/images/redactor/plugins/image.html +0 -39
- data/spec/dummy/app/assets/images/redactor/plugins/image_edit.html +0 -35
- data/spec/dummy/app/assets/images/redactor/plugins/link.html +0 -74
- data/spec/dummy/app/assets/images/redactor/plugins/table.html +0 -25
- data/spec/dummy/app/assets/images/redactor/plugins/video.html +0 -15
- data/spec/dummy/app/assets/javascripts/admin/jquery.mjs.nestedSortable.js +0 -429
- data/spec/dummy/app/assets/javascripts/admin.js +0 -21
- data/spec/dummy/app/assets/javascripts/application.js +0 -14
- data/spec/dummy/app/assets/javascripts/jquery-migrate-1.2.1.js +0 -521
- data/spec/dummy/app/assets/javascripts/redactor/langs/en.js +0 -76
- data/spec/dummy/app/assets/javascripts/redactor/langs/ru.js +0 -75
- data/spec/dummy/app/assets/javascripts/redactor/redactor.js.erb +0 -2248
- data/spec/dummy/app/assets/javascripts/redactor/toolbars/default.js +0 -219
- data/spec/dummy/app/assets/stylesheets/admin/blocks/list.scss +0 -22
- data/spec/dummy/app/assets/stylesheets/admin/blocks/notice.scss +0 -39
- data/spec/dummy/app/assets/stylesheets/admin/blocks/orders.scss +0 -22
- data/spec/dummy/app/assets/stylesheets/admin/blocks/paginate.sass +0 -28
- data/spec/dummy/app/assets/stylesheets/admin/blocks/pagination.scss +0 -28
- data/spec/dummy/app/assets/stylesheets/admin/blocks/partners.scss +0 -15
- data/spec/dummy/app/assets/stylesheets/admin/blocks/phead-tabs.sass +0 -27
- data/spec/dummy/app/assets/stylesheets/admin/blocks/photos.scss +0 -31
- data/spec/dummy/app/assets/stylesheets/admin/blocks/sortable.sass +0 -44
- data/spec/dummy/app/assets/stylesheets/admin/custom/index.scss +0 -1
- data/spec/dummy/app/assets/stylesheets/admin/defaults/index.scss +0 -131
- data/spec/dummy/app/assets/stylesheets/admin/defaults/input.sass +0 -35
- data/spec/dummy/app/assets/stylesheets/admin/defaults/reset.sass +0 -33
- data/spec/dummy/app/assets/stylesheets/admin/defaults/table.scss +0 -24
- data/spec/dummy/app/assets/stylesheets/admin/index.scss +0 -6
- data/spec/dummy/app/assets/stylesheets/admin/layouts/header.sass +0 -50
- data/spec/dummy/app/assets/stylesheets/admin/layouts/launchbar.sass +0 -23
- data/spec/dummy/app/assets/stylesheets/admin/layouts/login.sass +0 -25
- data/spec/dummy/app/assets/stylesheets/admin/layouts/main.sass +0 -38
- data/spec/dummy/app/assets/stylesheets/admin/layouts/page-header.sass +0 -22
- data/spec/dummy/app/assets/stylesheets/admin/layouts/page-sidebar.sass +0 -24
- data/spec/dummy/app/assets/stylesheets/admin/layouts/sidebar.sass +0 -30
- data/spec/dummy/app/assets/stylesheets/admin/shop/_filter.scss +0 -16
- data/spec/dummy/app/assets/stylesheets/admin/shop/_order-sh.scss +0 -59
- data/spec/dummy/app/assets/stylesheets/admin/shop/_pe.scss +0 -43
- data/spec/dummy/app/assets/stylesheets/redactor/wym.css +0 -136
- data/spec/dummy/app/controllers/admin/base_controller.rb +0 -28
- data/spec/dummy/app/controllers/admin/managers_controller.rb +0 -36
- data/spec/dummy/app/controllers/application_controller.rb +0 -6
- data/spec/dummy/app/controllers/articles_controller.rb +0 -8
- data/spec/dummy/app/controllers/managers/registrations_controller.rb +0 -21
- data/spec/dummy/app/helpers/admin_helper.rb +0 -94
- data/spec/dummy/app/models/article.rb +0 -4
- data/spec/dummy/app/models/article_category.rb +0 -2
- data/spec/dummy/app/models/photo.rb +0 -3
- data/spec/dummy/app/views/admin/base/_header.html.haml +0 -12
- data/spec/dummy/app/views/admin/base/_launchbar.html.haml +0 -11
- data/spec/dummy/app/views/admin/base/_sidebar.html.haml +0 -14
- data/spec/dummy/app/views/admin/base/_validate.haml +0 -8
- data/spec/dummy/app/views/admin/base/welcome.haml +0 -2
- data/spec/dummy/app/views/admin/photos/_photo.haml +0 -5
- data/spec/dummy/app/views/admin/photos/_photos.haml +0 -19
- data/spec/dummy/app/views/admin/photos/create.js.erb +0 -1
- data/spec/dummy/app/views/admin/photos/destroy.js.erb +0 -1
- data/spec/dummy/app/views/articles/show.html.haml +0 -2
- data/spec/dummy/app/views/layouts/admin.html.haml +0 -29
- data/spec/dummy/app/views/layouts/application.html.erb +0 -15
- data/spec/dummy/app/views/layouts/login.html.haml +0 -32
- data/spec/dummy/bin/bundle +0 -3
- data/spec/dummy/bin/rails +0 -4
- data/spec/dummy/bin/rake +0 -4
- data/spec/dummy/config/application.rb +0 -33
- data/spec/dummy/config/boot.rb +0 -5
- data/spec/dummy/config/database.yml +0 -25
- data/spec/dummy/config/environment.rb +0 -5
- data/spec/dummy/config/environments/development.rb +0 -29
- data/spec/dummy/config/environments/production.rb +0 -80
- data/spec/dummy/config/environments/test.rb +0 -36
- data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +0 -4
- data/spec/dummy/config/initializers/inflections.rb +0 -16
- data/spec/dummy/config/initializers/mime_types.rb +0 -5
- data/spec/dummy/config/initializers/secret_token.rb +0 -12
- data/spec/dummy/config/initializers/session_store.rb +0 -3
- data/spec/dummy/config/initializers/wrap_parameters.rb +0 -14
- data/spec/dummy/config/locales/en.yml +0 -36
- data/spec/dummy/config/routes.rb +0 -4
- data/spec/dummy/config.ru +0 -4
- data/spec/dummy/db/migrate/20130908123351_create_articles.rb +0 -9
- data/spec/dummy/db/migrate/20140128152208_create_article_categories.rb +0 -11
- data/spec/dummy/db/migrate/20140607122532_create_photos.rb +0 -16
- data/spec/dummy/db/schema.rb +0 -98
- data/spec/dummy/public/404.html +0 -58
- data/spec/dummy/public/422.html +0 -58
- data/spec/dummy/public/500.html +0 -57
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/generators/layout_generator_spec.rb +0 -42
- data/spec/generators/photo_generator_spec.rb +0 -32
- data/spec/generators/scaffold_generator_spec.rb +0 -58
- data/spec/models/sluggable_spec.rb +0 -42
- data/spec/models/url_generator_spec.rb +0 -18
- data/spec/models/with_photo_spec.rb +0 -25
- data/spec/spec_helper.rb +0 -52
- /data/{lib/generators/redde/layout/templates/assets/redactor → app/assets}/images/.keep +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/addphoto.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/ajaxloader2.gif +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/arrow_down.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/arrow_enter.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/arrow_right.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/coins.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/confirm.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/delete.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/email.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/error.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/favicon.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/fio.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/icon_eye.gif +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/css/jquery.lightbox-0.5.css +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/images/lightbox-blank.gif +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/images/lightbox-btn-close.gif +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/images/lightbox-btn-next.gif +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/images/lightbox-btn-prev.gif +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/images/lightbox-ico-loading.gif +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/js/jquery.js +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/js/jquery.lightbox-0.5.js +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/js/jquery.lightbox-0.5.min.js +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/lightbox/js/jquery.lightbox-0.5.pack.js +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/logo_reddeshop.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/phone.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/photo_ico.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/print.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/refresh.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/submit.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/submit_hover.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/view.png +0 -0
- /data/{lib/generators/redde/layout/templates → app}/assets/images/admin/view_mk.png +0 -0
- /data/{lib/generators/redde/layout/templates/assets/images/admin → app/assets/images/redde}/error-label-triangle.png +0 -0
- /data/{lib/generators/redde/layout/templates/assets/images/admin → app/assets/images/redde}/folder.png +0 -0
- /data/{lib/generators/redde/layout/templates/assets/images/admin → app/assets/images/redde}/logo.png +0 -0
- /data/{lib/generators/redde/layout/templates/assets/images/admin/move_handler.png → app/assets/images/redde/move-handler.png} +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/images → app/assets/images/redde}/redactor/icons.png +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/images → app/assets/images/redde}/redactor/plugins/file.html +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/images → app/assets/images/redde}/redactor/plugins/image.html +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/images → app/assets/images/redde}/redactor/plugins/image_edit.html +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/images → app/assets/images/redde}/redactor/plugins/link.html +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/images → app/assets/images/redde}/redactor/plugins/table.html +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/images → app/assets/images/redde}/redactor/plugins/video.html +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/javascripts → app/assets/javascripts/redde}/redactor/langs/en.js +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/javascripts → app/assets/javascripts/redde}/redactor/langs/ru.js +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/javascripts → app/assets/javascripts/redde}/redactor/toolbars/default.js +0 -0
- /data/{lib/generators/redde/layout/templates/assets/javascripts/admin → app/assets/javascripts/redde/sortTree}/jquery.mjs.nestedSortable.js +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/blocks/list.scss +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/blocks/orders.scss +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/blocks/paginate.sass +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/blocks/pagination.scss +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/blocks/partners.scss +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/blocks/phead-tabs.sass +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/layouts/login.sass +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/layouts/sidebar.sass +0 -0
- /data/{lib/generators/redde/layout/templates/assets/redactor/stylesheets → app/assets/stylesheets/redde}/redactor/wym.css +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/shop/_filter.scss +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/shop/_order-sh.scss +0 -0
- /data/{lib/generators/redde/layout/templates/assets/stylesheets/admin → app/assets/stylesheets/redde}/shop/_pe.scss +0 -0
- /data/{spec/dummy/app/assets/images → app/controllers}/.keep +0 -0
- /data/{lib/generators/redde/layout/templates → app}/controllers/managers/registrations_controller.rb +0 -0
- /data/{spec/dummy/app/models → app/helpers}/.keep +0 -0
- /data/{spec/dummy/lib/assets → app/mailers}/.keep +0 -0
- /data/{spec/dummy/log → app/models}/.keep +0 -0
- /data/{spec/dummy/app/assets/stylesheets/application.css.scss → app/views/.keep} +0 -0
- /data/{lib/generators/redde/layout/templates → app/views/admin}/base/welcome.haml +0 -0
- /data/{lib/generators/redde/photo/templates/photos → app/views/admin/redde_photos}/destroy.js.erb +0 -0
@@ -1,53 +1,53 @@
|
|
1
1
|
var RTOOLBAR = {};
|
2
2
|
|
3
3
|
(function($){
|
4
|
-
|
4
|
+
|
5
5
|
// Plugin
|
6
6
|
jQuery.fn.redactor = function(option)
|
7
7
|
{
|
8
|
-
return this.each(function()
|
8
|
+
return this.each(function()
|
9
9
|
{
|
10
10
|
var $this = $(this);
|
11
|
-
|
11
|
+
|
12
12
|
var data = $this.data('redactor');
|
13
13
|
if (!data) $this.data('redactor', (data = new Redactor(this, option)));
|
14
14
|
});
|
15
15
|
};
|
16
|
-
|
17
|
-
|
16
|
+
|
17
|
+
|
18
18
|
// Initialization
|
19
19
|
var Redactor = function(element, options)
|
20
20
|
{
|
21
21
|
// Element
|
22
22
|
this.$el = $(element);
|
23
|
-
|
23
|
+
|
24
24
|
// Options
|
25
25
|
this.opts = $.extend({
|
26
|
-
|
26
|
+
|
27
27
|
lang: 'en',
|
28
28
|
toolbar: 'default',
|
29
29
|
|
30
30
|
load: false,
|
31
|
-
|
31
|
+
|
32
32
|
path: false,
|
33
|
-
css: '<%= asset_path("redactor/wym.css") %>',
|
33
|
+
css: '<%= asset_path("redde/redactor/wym.css") %>',
|
34
34
|
focus: true,
|
35
35
|
resize: true,
|
36
36
|
autoresize: false,
|
37
37
|
fixed: false,
|
38
|
-
|
38
|
+
|
39
39
|
autoformat: true,
|
40
40
|
cleanUp: true,
|
41
41
|
convertDivs: true,
|
42
42
|
removeClasses: true,
|
43
43
|
removeStyles: false,
|
44
44
|
convertLinks: true,
|
45
|
-
|
45
|
+
|
46
46
|
handler: false, // false or url
|
47
|
-
|
47
|
+
|
48
48
|
autosave: false, // false or url
|
49
49
|
interval: 60, // seconds
|
50
|
-
|
50
|
+
|
51
51
|
imageGetJson: false, // url (ex. /folder/images.json ) or false
|
52
52
|
|
53
53
|
imageUpload: false, // url
|
@@ -72,9 +72,9 @@ var RTOOLBAR = {};
|
|
72
72
|
|
73
73
|
|
74
74
|
}, options, this.$el.data());
|
75
|
-
|
75
|
+
|
76
76
|
this.dropdowns = [];
|
77
|
-
|
77
|
+
|
78
78
|
// Init
|
79
79
|
this.init();
|
80
80
|
};
|
@@ -91,7 +91,7 @@ var RTOOLBAR = {};
|
|
91
91
|
var callback;
|
92
92
|
if (typeof(item) == 'function') callback = item;
|
93
93
|
else callback = $.proxy(function() { this._loadFile(item, array); }, this);
|
94
|
-
|
94
|
+
|
95
95
|
this.dynamicallyLoad(file, callback);
|
96
96
|
},
|
97
97
|
loadFiles: function(array)
|
@@ -118,7 +118,7 @@ var RTOOLBAR = {};
|
|
118
118
|
script.onload = script.onreadystatechange = null;
|
119
119
|
}
|
120
120
|
};
|
121
|
-
|
121
|
+
|
122
122
|
head.appendChild(script);
|
123
123
|
|
124
124
|
},
|
@@ -159,7 +159,7 @@ var RTOOLBAR = {};
|
|
159
159
|
|
160
160
|
// preformatter
|
161
161
|
html = this.preformater(html);
|
162
|
-
|
162
|
+
|
163
163
|
// conver newlines to p
|
164
164
|
if (this.opts.autoformat) html = this.paragraphy(html);
|
165
165
|
|
@@ -168,19 +168,19 @@ var RTOOLBAR = {};
|
|
168
168
|
|
169
169
|
// focus always on page
|
170
170
|
$(this.doc).click($.proxy(function(e) { this.$editor.focus(); }, this));
|
171
|
-
|
171
|
+
|
172
172
|
// cleanup
|
173
173
|
$(this.doc).bind('paste', $.proxy(function(e)
|
174
|
-
{
|
174
|
+
{
|
175
175
|
setTimeout($.proxy(function ()
|
176
176
|
{
|
177
177
|
var node = $('<span id="pastemarkerend"> </span>');
|
178
178
|
this.insertNodeAtCaret(node.get(0));
|
179
|
-
|
179
|
+
|
180
180
|
this.pasteCleanUp();
|
181
|
-
|
181
|
+
|
182
182
|
}, this), 200);
|
183
|
-
|
183
|
+
|
184
184
|
|
185
185
|
|
186
186
|
}, this));
|
@@ -199,7 +199,7 @@ var RTOOLBAR = {};
|
|
199
199
|
.keyup($.proxy(function(e)
|
200
200
|
{
|
201
201
|
var key = e.keyCode || e.which;
|
202
|
-
|
202
|
+
|
203
203
|
if (this.opts.autoformat)
|
204
204
|
{
|
205
205
|
// if empty
|
@@ -212,10 +212,10 @@ var RTOOLBAR = {};
|
|
212
212
|
this.syncCode();
|
213
213
|
|
214
214
|
}, this));
|
215
|
-
|
215
|
+
|
216
216
|
// toolbar
|
217
217
|
this.buildToolbar();
|
218
|
-
|
218
|
+
|
219
219
|
// resizer
|
220
220
|
if (this.opts.autoresize === false) this.buildResizer();
|
221
221
|
else this.observeAutoResize();
|
@@ -228,14 +228,14 @@ var RTOOLBAR = {};
|
|
228
228
|
|
229
229
|
// observers
|
230
230
|
this.observeImages();
|
231
|
-
|
231
|
+
|
232
232
|
// fullscreen on start
|
233
|
-
if (this.opts.fullscreen)
|
233
|
+
if (this.opts.fullscreen)
|
234
234
|
{
|
235
235
|
this.opts.fullscreen = false;
|
236
236
|
this.fullscreen();
|
237
237
|
}
|
238
|
-
|
238
|
+
|
239
239
|
// focus
|
240
240
|
if (this.opts.focus) this.focus();
|
241
241
|
|
@@ -251,8 +251,8 @@ var RTOOLBAR = {};
|
|
251
251
|
$(this.doc).keydown($.proxy(function(e)
|
252
252
|
{
|
253
253
|
var key = e.keyCode || e.which;
|
254
|
-
|
255
|
-
if (e.ctrlKey)
|
254
|
+
|
255
|
+
if (e.ctrlKey)
|
256
256
|
{
|
257
257
|
if (key == 90) this._shortcuts(e, 'undo'); // Ctrl + z
|
258
258
|
else if (key == 90 && e.shiftKey) this._shortcuts(e, 'redo'); // Ctrl + Shift + z
|
@@ -263,7 +263,7 @@ var RTOOLBAR = {};
|
|
263
263
|
else if (key == 75) this._shortcuts(e, 'insertorderedlist'); // Ctrl + k
|
264
264
|
else if (key == 76) this._shortcuts(e, 'superscript'); // Ctrl + l
|
265
265
|
}
|
266
|
-
|
266
|
+
|
267
267
|
if (!e.shiftKey && key == 9) this._shortcuts(e, 'indent'); // Tab
|
268
268
|
else if (e.shiftKey && key == 9 ) this._shortcuts(e, 'outdent'); // Shift + tab
|
269
269
|
|
@@ -283,8 +283,8 @@ var RTOOLBAR = {};
|
|
283
283
|
{
|
284
284
|
if (s.src)
|
285
285
|
{
|
286
|
-
|
287
|
-
// Match redactor.js or redactor.min.js, followed by an optional querystring (often used for cache purposes)
|
286
|
+
|
287
|
+
// Match redactor.js or redactor.min.js, followed by an optional querystring (often used for cache purposes)
|
288
288
|
var regexp = new RegExp(/\/redactor(\.min)?\.js(\?.*)?/);
|
289
289
|
if (s.src.match(regexp)) this.opts.path = s.src.replace(regexp, '');
|
290
290
|
}
|
@@ -295,7 +295,7 @@ var RTOOLBAR = {};
|
|
295
295
|
{
|
296
296
|
// container
|
297
297
|
this.$box = $('<div class="redactor_box"></div>');
|
298
|
-
|
298
|
+
|
299
299
|
// frame
|
300
300
|
this.$frame = $('<iframe frameborder="0" scrolling="auto" style="height: ' + this.height + ';" class="redactor_frame"></iframe>');
|
301
301
|
|
@@ -332,7 +332,7 @@ var RTOOLBAR = {};
|
|
332
332
|
frameHtml += html;
|
333
333
|
frameHtml += '</div></body></html>';
|
334
334
|
return frameHtml;
|
335
|
-
},
|
335
|
+
},
|
336
336
|
getDoc: function(frame)
|
337
337
|
{
|
338
338
|
if (frame.contentDocument) return frame.contentDocument;
|
@@ -347,9 +347,9 @@ var RTOOLBAR = {};
|
|
347
347
|
syncCode: function()
|
348
348
|
{
|
349
349
|
var html = this.formating(this.$editor.html());
|
350
|
-
this.$el.val(html);
|
350
|
+
this.$el.val(html);
|
351
351
|
},
|
352
|
-
|
352
|
+
|
353
353
|
// API functions
|
354
354
|
setCode: function(html)
|
355
355
|
{
|
@@ -373,11 +373,11 @@ var RTOOLBAR = {};
|
|
373
373
|
destroy: function()
|
374
374
|
{
|
375
375
|
var html = this.getCode();
|
376
|
-
|
376
|
+
|
377
377
|
this.$box.after(this.$el);
|
378
378
|
this.$box.remove();
|
379
379
|
this.$el.val(html).show();
|
380
|
-
|
380
|
+
|
381
381
|
this.dropdowns.forEach(function(dropdown, i)
|
382
382
|
{
|
383
383
|
dropdown.remove();
|
@@ -405,19 +405,19 @@ var RTOOLBAR = {};
|
|
405
405
|
observeImages: function()
|
406
406
|
{
|
407
407
|
if ($.browser.mozilla) this.doc.execCommand("enableObjectResizing", false, "false");
|
408
|
-
|
408
|
+
|
409
409
|
$(this.doc).find('img').attr('unselectable', 'on').each($.proxy(function(i,s)
|
410
410
|
{
|
411
411
|
this.resizeImage(s);
|
412
|
-
|
412
|
+
|
413
413
|
}, this));
|
414
|
-
|
414
|
+
|
415
415
|
},
|
416
416
|
observeScroll: function()
|
417
417
|
{
|
418
418
|
var scrolltop = $(document).scrollTop();
|
419
419
|
var boxtop = this.$box.offset().top;
|
420
|
-
|
420
|
+
|
421
421
|
if (scrolltop > boxtop)
|
422
422
|
{
|
423
423
|
this.fixed = true;
|
@@ -440,8 +440,8 @@ var RTOOLBAR = {};
|
|
440
440
|
{
|
441
441
|
this.$frame.height(this.$editor.outerHeight(true)+30);
|
442
442
|
},
|
443
|
-
|
444
|
-
|
443
|
+
|
444
|
+
|
445
445
|
// EXECCOMMAND
|
446
446
|
execCommand: function(cmd, param)
|
447
447
|
{
|
@@ -457,7 +457,7 @@ var RTOOLBAR = {};
|
|
457
457
|
{
|
458
458
|
this.doc.execCommand(cmd, false, param);
|
459
459
|
}
|
460
|
-
|
460
|
+
|
461
461
|
this.syncCode();
|
462
462
|
this.focus();
|
463
463
|
}
|
@@ -465,7 +465,7 @@ var RTOOLBAR = {};
|
|
465
465
|
|
466
466
|
}
|
467
467
|
},
|
468
|
-
|
468
|
+
|
469
469
|
// FORMAT NEW LINE
|
470
470
|
formatNewLine: function(e)
|
471
471
|
{
|
@@ -473,7 +473,7 @@ var RTOOLBAR = {};
|
|
473
473
|
if (parent.nodeName == 'DIV' && parent.id == 'page')
|
474
474
|
{
|
475
475
|
if (e.preventDefault) e.preventDefault();
|
476
|
-
|
476
|
+
|
477
477
|
element = $(this.getCurrentNode());
|
478
478
|
if (element.get(0).tagName == 'DIV' && (element.html() == '' || element.html() == '<br>'))
|
479
479
|
{
|
@@ -490,9 +490,9 @@ var RTOOLBAR = {};
|
|
490
490
|
// convert links
|
491
491
|
if (this.opts.convertLinks) this.$editor.linkify();
|
492
492
|
}
|
493
|
-
else
|
493
|
+
else
|
494
494
|
{
|
495
|
-
this.syncCode();
|
495
|
+
this.syncCode();
|
496
496
|
return true;
|
497
497
|
}
|
498
498
|
},
|
@@ -503,7 +503,7 @@ var RTOOLBAR = {};
|
|
503
503
|
if (e.shiftKey && key == 13)
|
504
504
|
{
|
505
505
|
if (e.preventDefault) e.preventDefault();
|
506
|
-
|
506
|
+
|
507
507
|
var node1 = $('<span><br /></span>');
|
508
508
|
this.insertNodeAtCaret(node1.get(0));
|
509
509
|
this.setFocusNode(node1.get(0));
|
@@ -512,26 +512,26 @@ var RTOOLBAR = {};
|
|
512
512
|
return false;
|
513
513
|
}
|
514
514
|
},
|
515
|
-
|
515
|
+
|
516
516
|
// FORMAT EMPTY
|
517
517
|
formatEmpty: function(e)
|
518
518
|
{
|
519
519
|
var html = $.trim(this.$editor.html());
|
520
|
-
|
520
|
+
|
521
521
|
if ($.browser.mozilla) html = html.replace(/<br>/gi, '');
|
522
|
-
|
522
|
+
|
523
523
|
if (html === '')
|
524
524
|
{
|
525
525
|
if (e.preventDefault) e.preventDefault();
|
526
|
-
|
526
|
+
|
527
527
|
var nodehtml = this.opts.allEmptyHtml;
|
528
528
|
if ($.browser.mozilla) nodehtml = this.opts.mozillaEmptyHtml;
|
529
|
-
|
529
|
+
|
530
530
|
var node = $(nodehtml).get(0);
|
531
531
|
this.$editor.html(node);
|
532
532
|
this.setFocusNode(node);
|
533
|
-
|
534
|
-
this.syncCode();
|
533
|
+
|
534
|
+
this.syncCode();
|
535
535
|
return false;
|
536
536
|
}
|
537
537
|
else this.syncCode();
|
@@ -546,7 +546,7 @@ var RTOOLBAR = {};
|
|
546
546
|
if (!$.browser.mozilla) return this.opts.allEmptyHtml;
|
547
547
|
else return this.opts.mozillaEmptyHtml;
|
548
548
|
}
|
549
|
-
|
549
|
+
|
550
550
|
// convert div to p
|
551
551
|
if (this.opts.convertDivs) str = str.replace(/<div(.*?)>([\w\W]*?)<\/div>/gi, '<p>$2</p>');
|
552
552
|
|
@@ -556,7 +556,7 @@ var RTOOLBAR = {};
|
|
556
556
|
|
557
557
|
// block elements
|
558
558
|
var blocks = '(table|thead|tfoot|caption|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|address|math|style|script|object|input|param|p|h[1-6])';
|
559
|
-
|
559
|
+
|
560
560
|
str += '\n';
|
561
561
|
|
562
562
|
R('<br />\\s*<br />', '\n\n');
|
@@ -653,7 +653,7 @@ var RTOOLBAR = {};
|
|
653
653
|
{
|
654
654
|
// clean comments
|
655
655
|
html = html.replace(/(<\!\-\-([\w\W]*?)\-\->)/ig, "");
|
656
|
-
|
656
|
+
|
657
657
|
if (this.opts.convertDivs)
|
658
658
|
{
|
659
659
|
html = html.replace(/<div(.*?)>([\w\W]*?)<\/div>/gi, '<p$1>$2</p>');
|
@@ -673,33 +673,33 @@ var RTOOLBAR = {};
|
|
673
673
|
// spans
|
674
674
|
html = html.replace(/<span> <\/span>/gi, '');
|
675
675
|
html = html.replace(/<span>([\w\W]*?)<\/span>/gi, '$1');
|
676
|
-
|
676
|
+
|
677
677
|
return html;
|
678
678
|
},
|
679
679
|
removeTags: function(html)
|
680
680
|
{
|
681
681
|
return html.replace(/<(?!\s*\/?(code|span|div|label|a|br|p|b|i|del|strike|img|video|audio|iframe|object|embed|param|blockquote|mark|cite|small|ul|ol|li|hr|dl|dt|dd|sup|sub|big|pre|code|figure|figcaption|strong|em|table|tr|td|th|tbody|thead|tfoot|h1|h2|h3|h4|h5|h6)\b)[^>]+>/gi,"");
|
682
682
|
},
|
683
|
-
|
683
|
+
|
684
684
|
// PASTE CLEANUP
|
685
685
|
pasteCleanUp: function()
|
686
686
|
{
|
687
687
|
var html = this.$editor.html();
|
688
|
-
|
688
|
+
|
689
689
|
html = html.replace(/<span id="pastemarkerend"> <\/span>/, '#marker#');
|
690
|
-
|
690
|
+
|
691
691
|
html = this.formating(html);
|
692
692
|
html = this.cleanUp(html);
|
693
|
-
|
693
|
+
|
694
694
|
if (this.opts.removeClasses) html = html.replace(/ class="([\w\W]*?)"/gi, '');
|
695
695
|
else html = this.cleanUpClasses(html);
|
696
|
-
|
696
|
+
|
697
697
|
if (this.opts.removeStyles) html = html.replace(/ style="([\w\W]*?)"/gi, '');
|
698
698
|
else html = this.cleanUpStyles(html);
|
699
699
|
|
700
700
|
html = this.cleanUp(html);
|
701
701
|
html = this.formating(html);
|
702
|
-
|
702
|
+
|
703
703
|
html = html.replace(/<b(.*?)id="internal-source-marker(.*?)">([\w\W]*?)<\/b>/gi, "$3");
|
704
704
|
|
705
705
|
html = html.replace(/#marker#/, '<span id="pastemarkerend"> </span>');
|
@@ -712,7 +712,7 @@ var RTOOLBAR = {};
|
|
712
712
|
this.syncCode();
|
713
713
|
this.observeImages();
|
714
714
|
},
|
715
|
-
|
715
|
+
|
716
716
|
// TEXTAREA CODE FORMATTING
|
717
717
|
formating: function (html)
|
718
718
|
{
|
@@ -754,8 +754,8 @@ var RTOOLBAR = {};
|
|
754
754
|
var bbb = etags[i];
|
755
755
|
html = html.replace(new RegExp(bbb,'gi'), "");
|
756
756
|
}
|
757
|
-
|
758
|
-
|
757
|
+
|
758
|
+
|
759
759
|
// add formatting before
|
760
760
|
var lb = '\r\n';
|
761
761
|
var btags = ["<form","<fieldset","<legend","<object","<embed","<select","<option","<input","<textarea","<pre","<blockquote","<ul","<ol","<li","<dl","<dt","<dd","<table", "<thead","<tbody","<caption","</caption>","<th","<tr","<td","<figure"];
|
@@ -764,7 +764,7 @@ var RTOOLBAR = {};
|
|
764
764
|
var eee = btags[i];
|
765
765
|
html = html.replace(new RegExp(eee,'gi'),lb+eee);
|
766
766
|
}
|
767
|
-
|
767
|
+
|
768
768
|
// add formatting after
|
769
769
|
var atags = ['</p>', '</div>', '</ul>', '</ol>', '</h1>', '</h2>', '</h3>', '</h4>', '</h5>', '</h6>', '<br>', '<br />', '</dl>', '</dt>', '</dd>', '</form>', '</blockquote>', '</pre>', '</legend>', '</fieldset>', '</object>', '</embed>', '</textarea>', '</select>', '</option>', '</table>', '</thead>', '</tbody>', '</tr>', '</td>', '</th>', '</figure>'];
|
770
770
|
for (var i = 0; i < atags.length; ++i)
|
@@ -786,23 +786,23 @@ var RTOOLBAR = {};
|
|
786
786
|
toggle: function()
|
787
787
|
{
|
788
788
|
var html;
|
789
|
-
|
789
|
+
|
790
790
|
if (this.opts.visual)
|
791
791
|
{
|
792
792
|
this.$frame.hide();
|
793
|
-
|
793
|
+
|
794
794
|
html = this.$editor.html();
|
795
795
|
html = $.trim(this.formating(html));
|
796
|
-
|
796
|
+
|
797
797
|
this.$el.val(html).show().focus();
|
798
|
-
|
798
|
+
|
799
799
|
this.setBtnActive('html');
|
800
800
|
this.opts.visual = false;
|
801
801
|
}
|
802
802
|
else
|
803
803
|
{
|
804
804
|
this.$el.hide();
|
805
|
-
|
805
|
+
|
806
806
|
this.$editor.html(this.$el.val());
|
807
807
|
|
808
808
|
this.$frame.show();
|
@@ -816,7 +816,7 @@ var RTOOLBAR = {};
|
|
816
816
|
}
|
817
817
|
|
818
818
|
this.focus();
|
819
|
-
|
819
|
+
|
820
820
|
this.setBtnInactive('html');
|
821
821
|
this.opts.visual = true;
|
822
822
|
this.observeImages();
|
@@ -827,7 +827,7 @@ var RTOOLBAR = {};
|
|
827
827
|
autoSave: function()
|
828
828
|
{
|
829
829
|
if (this.opts.autosave === false) return false;
|
830
|
-
|
830
|
+
|
831
831
|
setInterval($.proxy(function()
|
832
832
|
{
|
833
833
|
$.post(this.opts.autosave, { data: this.getCode() });
|
@@ -839,16 +839,16 @@ var RTOOLBAR = {};
|
|
839
839
|
buildToolbar: function()
|
840
840
|
{
|
841
841
|
if (this.opts.toolbar === false) return false;
|
842
|
-
|
842
|
+
|
843
843
|
this.$toolbar = $('<ul>').addClass('redactor_toolbar');
|
844
844
|
this.$box.prepend(this.$toolbar);
|
845
|
-
|
845
|
+
|
846
846
|
$.each(RTOOLBAR[this.opts.toolbar], $.proxy(function(key,s)
|
847
847
|
{
|
848
848
|
if (this.opts.fileUpload === false && key == 'file') return true;
|
849
|
-
|
849
|
+
|
850
850
|
var li = $('<li>');
|
851
|
-
|
851
|
+
|
852
852
|
if (key == 'fullscreen') $(li).addClass('redactor_toolbar_right');
|
853
853
|
|
854
854
|
var a = this.buildButton(key, s);
|
@@ -857,7 +857,7 @@ var RTOOLBAR = {};
|
|
857
857
|
if (key == 'backcolor' || key == 'fontcolor' || typeof(s.dropdown) != 'undefined')
|
858
858
|
{
|
859
859
|
var dropdown = $('<div class="redactor_dropdown" style="display: none;">');
|
860
|
-
|
860
|
+
|
861
861
|
if (key == 'backcolor' || key == 'fontcolor') dropdown = this.buildColorPicker(dropdown, key);
|
862
862
|
else dropdown = this.buildDropdown(dropdown, s.dropdown);
|
863
863
|
|
@@ -893,7 +893,7 @@ var RTOOLBAR = {};
|
|
893
893
|
function (x, d)
|
894
894
|
{
|
895
895
|
if (typeof(d.style) == 'undefined') d.style = '';
|
896
|
-
|
896
|
+
|
897
897
|
var drop_a;
|
898
898
|
if (d.name == 'separator') drop_a = $('<a class="redactor_separator_drop">');
|
899
899
|
else
|
@@ -905,7 +905,7 @@ var RTOOLBAR = {};
|
|
905
905
|
}
|
906
906
|
|
907
907
|
$(dropdown).append(drop_a);
|
908
|
-
|
908
|
+
|
909
909
|
}, this)
|
910
910
|
);
|
911
911
|
|
@@ -921,7 +921,7 @@ var RTOOLBAR = {};
|
|
921
921
|
else mode = 'hilitecolor';
|
922
922
|
}
|
923
923
|
else mode = 'forecolor';
|
924
|
-
|
924
|
+
|
925
925
|
$(dropdown).width(210);
|
926
926
|
|
927
927
|
var len = this.opts.colors.length;
|
@@ -955,7 +955,7 @@ var RTOOLBAR = {};
|
|
955
955
|
$(this.getParentNode()).attr('color', '').css('color', '');
|
956
956
|
this.syncCode();
|
957
957
|
},
|
958
|
-
|
958
|
+
|
959
959
|
// DROPDOWNS
|
960
960
|
showDropDown: function(e, dropdown, key)
|
961
961
|
{
|
@@ -965,18 +965,18 @@ var RTOOLBAR = {};
|
|
965
965
|
this.getBtn(key).addClass('dropact');
|
966
966
|
|
967
967
|
var left = this.getBtn(key).offset().left;
|
968
|
-
|
969
|
-
|
968
|
+
|
969
|
+
|
970
970
|
if (this.opts.fixed && this.fixed)
|
971
971
|
{
|
972
972
|
$(dropdown).css({ position: 'fixed', left: left + 'px', top: '30px' }).show();
|
973
973
|
}
|
974
|
-
else
|
974
|
+
else
|
975
975
|
{
|
976
976
|
var top = this.$toolbar.offset().top + 30;
|
977
977
|
$(dropdown).css({ position: 'absolute', left: left + 'px', top: top + 'px' }).show();
|
978
978
|
}
|
979
|
-
|
979
|
+
|
980
980
|
},
|
981
981
|
hideAllDropDown: function()
|
982
982
|
{
|
@@ -992,7 +992,7 @@ var RTOOLBAR = {};
|
|
992
992
|
this.hideAllDropDown();
|
993
993
|
}
|
994
994
|
},
|
995
|
-
|
995
|
+
|
996
996
|
// SELECTION AND NODE MANIPULATION
|
997
997
|
getSelection: function ()
|
998
998
|
{
|
@@ -1015,7 +1015,7 @@ var RTOOLBAR = {};
|
|
1015
1015
|
|
1016
1016
|
var selection = this.getSelection();
|
1017
1017
|
toStart = toStart ? 0 : 1;
|
1018
|
-
|
1018
|
+
|
1019
1019
|
if (selection !== null)
|
1020
1020
|
{
|
1021
1021
|
range.selectNodeContents(node);
|
@@ -1030,7 +1030,7 @@ var RTOOLBAR = {};
|
|
1030
1030
|
if (typeof window.getSelection != "undefined")
|
1031
1031
|
{
|
1032
1032
|
var sel = this.getSelection();
|
1033
|
-
if (sel.rangeCount)
|
1033
|
+
if (sel.rangeCount)
|
1034
1034
|
{
|
1035
1035
|
var range = sel.getRangeAt(0);
|
1036
1036
|
range.collapse(false);
|
@@ -1086,34 +1086,34 @@ var RTOOLBAR = {};
|
|
1086
1086
|
{
|
1087
1087
|
this.$toolbar.append($('<li>').append(this.buildButton(key, obj)));
|
1088
1088
|
},
|
1089
|
-
|
1089
|
+
|
1090
1090
|
// FULLSCREEN
|
1091
1091
|
fullscreen: function()
|
1092
1092
|
{
|
1093
1093
|
var html;
|
1094
|
-
|
1094
|
+
|
1095
1095
|
if (this.opts.fullscreen === false)
|
1096
1096
|
{
|
1097
1097
|
this.changeBtnIcon('fullscreen', 'normalscreen');
|
1098
1098
|
this.setBtnActive('fullscreen');
|
1099
1099
|
this.opts.fullscreen = true;
|
1100
|
-
|
1100
|
+
|
1101
1101
|
this.height = this.$frame.css('height');
|
1102
1102
|
this.width = (this.$box.width() - 2) + 'px';
|
1103
|
-
|
1103
|
+
|
1104
1104
|
html = this.getCode();
|
1105
|
-
|
1105
|
+
|
1106
1106
|
this.tmpspan = $('<span></span>');
|
1107
1107
|
this.$box.addClass('redactor_box_fullscreen').after(this.tmpspan);
|
1108
|
-
|
1108
|
+
|
1109
1109
|
$(document.body).prepend(this.$box).css('overflow', 'hidden');
|
1110
|
-
|
1111
|
-
this.$editor = this.enable(html);
|
1112
|
-
|
1110
|
+
|
1111
|
+
this.$editor = this.enable(html);
|
1112
|
+
|
1113
1113
|
$(this.doc).click($.proxy(this.hideAllDropDown, this));
|
1114
1114
|
// focus always on page
|
1115
1115
|
$(this.doc).click($.proxy(function(e) { this.$editor.focus(); }, this));
|
1116
|
-
|
1116
|
+
|
1117
1117
|
this.observeImages();
|
1118
1118
|
this.$box.find('.redactor_resizer').hide();
|
1119
1119
|
|
@@ -1121,35 +1121,35 @@ var RTOOLBAR = {};
|
|
1121
1121
|
$(window).resize($.proxy(this.fullScreenResize, this));
|
1122
1122
|
$(document).scrollTop(0,0);
|
1123
1123
|
this.focus();
|
1124
|
-
|
1124
|
+
|
1125
1125
|
}
|
1126
1126
|
else
|
1127
1127
|
{
|
1128
1128
|
this.removeBtnIcon('fullscreen', 'normalscreen');
|
1129
1129
|
this.setBtnInactive('fullscreen');
|
1130
1130
|
this.opts.fullscreen = false;
|
1131
|
-
|
1131
|
+
|
1132
1132
|
$(window).unbind('resize', $.proxy(this.fullScreenResize, this));
|
1133
1133
|
$(document.body).css('overflow', '');
|
1134
|
-
|
1134
|
+
|
1135
1135
|
html = this.getCode();
|
1136
|
-
|
1136
|
+
|
1137
1137
|
this.$box.removeClass('redactor_box_fullscreen').css('width', 'auto');
|
1138
|
-
|
1138
|
+
|
1139
1139
|
this.tmpspan.after(this.$box).remove();
|
1140
|
-
|
1140
|
+
|
1141
1141
|
this.$editor = this.enable(html);
|
1142
|
-
|
1142
|
+
|
1143
1143
|
this.observeImages();
|
1144
1144
|
this.observeAutoResize();
|
1145
1145
|
this.$box.find('.redactor_resizer').show();
|
1146
|
-
|
1146
|
+
|
1147
1147
|
$(this.doc).click($.proxy(this.hideAllDropDown, this));
|
1148
1148
|
// focus always on page
|
1149
1149
|
$(this.doc).click($.proxy(function(e) { this.$editor.focus(); }, this));
|
1150
|
-
|
1150
|
+
|
1151
1151
|
this.syncCode();
|
1152
|
-
|
1152
|
+
|
1153
1153
|
this.$frame.css('height', this.height);
|
1154
1154
|
this.$el.css('height', this.height);
|
1155
1155
|
this.focus();
|
@@ -1158,12 +1158,12 @@ var RTOOLBAR = {};
|
|
1158
1158
|
fullScreenResize: function()
|
1159
1159
|
{
|
1160
1160
|
if (this.opts.fullscreen === false) return;
|
1161
|
-
|
1161
|
+
|
1162
1162
|
var hfix = 42;
|
1163
1163
|
if (this.opts.air) hfix = 2;
|
1164
|
-
|
1165
|
-
var height = $(window).height() - hfix;
|
1166
|
-
|
1164
|
+
|
1165
|
+
var height = $(window).height() - hfix;
|
1166
|
+
|
1167
1167
|
this.$box.width($(window).width() - 2);
|
1168
1168
|
this.$frame.height(height);
|
1169
1169
|
this.$el.height(height);
|
@@ -1173,10 +1173,10 @@ var RTOOLBAR = {};
|
|
1173
1173
|
buildResizer: function()
|
1174
1174
|
{
|
1175
1175
|
if (this.opts.resize === false) return false;
|
1176
|
-
|
1176
|
+
|
1177
1177
|
this.$resizer = $('<div class="redactor_resizer">—</div>');
|
1178
1178
|
this.$box.append(this.$resizer);
|
1179
|
-
|
1179
|
+
|
1180
1180
|
this.$resizer.mousedown($.proxy(this.initResize, this));
|
1181
1181
|
|
1182
1182
|
},
|
@@ -1221,11 +1221,11 @@ var RTOOLBAR = {};
|
|
1221
1221
|
var y = e.pageY;
|
1222
1222
|
if (this.null_point === false) this.null_point = y;
|
1223
1223
|
if (this.h_new === false) this.h_new = this.element_resize.height();
|
1224
|
-
|
1224
|
+
|
1225
1225
|
var s_new = (this.h_new + y - this.null_point) - 10;
|
1226
|
-
|
1226
|
+
|
1227
1227
|
if (s_new <= 30) return true;
|
1228
|
-
|
1228
|
+
|
1229
1229
|
if (s_new >= 0)
|
1230
1230
|
{
|
1231
1231
|
this.element_resize.get(0).style.height = s_new + 'px';
|
@@ -1238,10 +1238,10 @@ var RTOOLBAR = {};
|
|
1238
1238
|
$(document).unbind('mousedown', this.startResizeHdl);
|
1239
1239
|
$(document).unbind('mouseup', this.stopResizeHdl);
|
1240
1240
|
$(this.splitter).unbind('mouseup', this.stopResizeHdl);
|
1241
|
-
|
1241
|
+
|
1242
1242
|
this.element_resize.get(0).style.visibility = 'visible';
|
1243
1243
|
},
|
1244
|
-
|
1244
|
+
|
1245
1245
|
// RESIZE IMAGES
|
1246
1246
|
resizeImage: function(resize)
|
1247
1247
|
{
|
@@ -1268,17 +1268,17 @@ var RTOOLBAR = {};
|
|
1268
1268
|
start_x = Math.round(e.pageX - $(resize).eq(0).offset().left);
|
1269
1269
|
start_y = Math.round(e.pageY - $(resize).eq(0).offset().top);
|
1270
1270
|
});
|
1271
|
-
|
1271
|
+
|
1272
1272
|
$(resize).mouseup($.proxy(function(e)
|
1273
1273
|
{
|
1274
1274
|
clicked = false;
|
1275
1275
|
this.syncCode();
|
1276
1276
|
}, this));
|
1277
|
-
|
1277
|
+
|
1278
1278
|
$(resize).click($.proxy(function(e)
|
1279
1279
|
{
|
1280
1280
|
if (clicker) this.imageEdit(e);
|
1281
|
-
|
1281
|
+
|
1282
1282
|
}, this));
|
1283
1283
|
|
1284
1284
|
$(resize).mousemove(function(e)
|
@@ -1286,17 +1286,17 @@ var RTOOLBAR = {};
|
|
1286
1286
|
if (clicked)
|
1287
1287
|
{
|
1288
1288
|
clicker = false;
|
1289
|
-
|
1289
|
+
|
1290
1290
|
var mouse_x = Math.round(e.pageX - $(this).eq(0).offset().left) - start_x;
|
1291
1291
|
var mouse_y = Math.round(e.pageY - $(this).eq(0).offset().top) - start_y;
|
1292
|
-
|
1292
|
+
|
1293
1293
|
var div_h = $(resize).height();
|
1294
|
-
|
1294
|
+
|
1295
1295
|
var new_h = parseInt(div_h)+mouse_y;
|
1296
1296
|
var new_w = new_h*ratio;
|
1297
|
-
|
1298
|
-
|
1299
|
-
|
1297
|
+
|
1298
|
+
|
1299
|
+
|
1300
1300
|
if(x==1 || (typeof(x) == "number" && new_w < x && new_w > min_w) ){ $(resize).width(new_w); }
|
1301
1301
|
if(y==1 || (typeof(y) == "number" && new_h < y && new_h > min_h) ){ $(resize).height(new_h); }
|
1302
1302
|
start_x = Math.round(e.pageX - $(this).eq(0).offset().left);
|
@@ -1319,12 +1319,12 @@ var RTOOLBAR = {};
|
|
1319
1319
|
{
|
1320
1320
|
var rows = $('#redactor_table_rows').val();
|
1321
1321
|
var columns = $('#redactor_table_columns').val();
|
1322
|
-
|
1322
|
+
|
1323
1323
|
var table_box = $('<div></div>');
|
1324
|
-
|
1324
|
+
|
1325
1325
|
var tableid = Math.floor(Math.random() * 99999);
|
1326
1326
|
var table = $('<table id="table' + tableid + '"><tbody></tbody></table>');
|
1327
|
-
|
1327
|
+
|
1328
1328
|
for (var i = 0; i < rows; i++)
|
1329
1329
|
{
|
1330
1330
|
var row = $('<tr></tr>');
|
@@ -1335,16 +1335,16 @@ var RTOOLBAR = {};
|
|
1335
1335
|
}
|
1336
1336
|
$(table).append(row);
|
1337
1337
|
}
|
1338
|
-
|
1338
|
+
|
1339
1339
|
$(table_box).append(table);
|
1340
1340
|
var html = $(table_box).html();
|
1341
|
-
|
1341
|
+
|
1342
1342
|
if ($.browser.msie) html += '<p></p>';
|
1343
1343
|
else html += '<p> </p>';
|
1344
1344
|
|
1345
1345
|
this.execCommand('inserthtml', html);
|
1346
1346
|
this.modalClose();
|
1347
|
-
|
1347
|
+
|
1348
1348
|
this.$table = $(this.doc).find('body').find('#table' + tableid);
|
1349
1349
|
this.$table.click($.proxy(this.tableObserver, this));
|
1350
1350
|
},
|
@@ -1354,15 +1354,15 @@ var RTOOLBAR = {};
|
|
1354
1354
|
|
1355
1355
|
this.$table_tr = this.$table.find('tr');
|
1356
1356
|
this.$table_td = this.$table.find('td');
|
1357
|
-
|
1357
|
+
|
1358
1358
|
this.$table_td.removeClass('current');
|
1359
|
-
|
1359
|
+
|
1360
1360
|
this.$tbody = $(e.target).parents('tbody');
|
1361
1361
|
this.$thead = $(this.$table).find('thead');
|
1362
|
-
|
1362
|
+
|
1363
1363
|
this.$current_td = $(e.target);
|
1364
1364
|
this.$current_td.addClass('current');
|
1365
|
-
|
1365
|
+
|
1366
1366
|
this.$current_tr = $(e.target).parents('tr');
|
1367
1367
|
},
|
1368
1368
|
deleteTable: function()
|
@@ -1379,12 +1379,12 @@ var RTOOLBAR = {};
|
|
1379
1379
|
deleteColumn: function()
|
1380
1380
|
{
|
1381
1381
|
var index = $(this.$current_td).get(0).cellIndex;
|
1382
|
-
|
1382
|
+
|
1383
1383
|
$(this.$table).find('tr').each(function()
|
1384
1384
|
{
|
1385
1385
|
$(this).find('td').eq(index).remove();
|
1386
1386
|
});
|
1387
|
-
|
1387
|
+
|
1388
1388
|
this.syncCode();
|
1389
1389
|
},
|
1390
1390
|
addHead: function()
|
@@ -1445,10 +1445,10 @@ var RTOOLBAR = {};
|
|
1445
1445
|
this.$table_tr.each(function(i,s)
|
1446
1446
|
{
|
1447
1447
|
var current = $(s).find('td').eq(index);
|
1448
|
-
|
1448
|
+
|
1449
1449
|
var td = current.clone();
|
1450
1450
|
td.html(' ');
|
1451
|
-
|
1451
|
+
|
1452
1452
|
if (type == 'after') $(current).after(td);
|
1453
1453
|
else $(current).before(td);
|
1454
1454
|
|
@@ -1516,13 +1516,13 @@ var RTOOLBAR = {};
|
|
1516
1516
|
var parent = $(el).parent();
|
1517
1517
|
|
1518
1518
|
$(el).attr('alt', $('#redactor_file_alt').val());
|
1519
|
-
|
1519
|
+
|
1520
1520
|
var floating = $('#redactor_form_image_align').val();
|
1521
|
-
|
1521
|
+
|
1522
1522
|
if (floating == 'left') $(el).css({ 'float': 'left', margin: '0 10px 10px 0' });
|
1523
1523
|
else if (floating == 'right') $(el).css({ 'float': 'right', margin: '0 0 10px 10px' });
|
1524
1524
|
else $(el).css({ 'float': 'none', margin: '0' });
|
1525
|
-
|
1525
|
+
|
1526
1526
|
// as link
|
1527
1527
|
var link = $.trim($('#redactor_file_link').val());
|
1528
1528
|
if (link !== '')
|
@@ -1540,7 +1540,7 @@ var RTOOLBAR = {};
|
|
1540
1540
|
this.modalClose();
|
1541
1541
|
this.observeImages();
|
1542
1542
|
this.syncCode();
|
1543
|
-
|
1543
|
+
|
1544
1544
|
},
|
1545
1545
|
showImage: function()
|
1546
1546
|
{
|
@@ -1552,13 +1552,13 @@ var RTOOLBAR = {};
|
|
1552
1552
|
if (this.opts.imageGetJson !== false)
|
1553
1553
|
{
|
1554
1554
|
$.getJSON(this.opts.imageGetJson, $.proxy(function(data) {
|
1555
|
-
|
1555
|
+
|
1556
1556
|
$.each(data, $.proxy(function(key, val)
|
1557
1557
|
{
|
1558
1558
|
var img = $('<img src="' + val.thumb + '" rel="' + val.image + '" />');
|
1559
1559
|
$('#redactor_image_box').append(img);
|
1560
1560
|
$(img).click($.proxy(this.imageSetThumb, this));
|
1561
|
-
|
1561
|
+
|
1562
1562
|
}, this));
|
1563
1563
|
|
1564
1564
|
}, this));
|
@@ -1567,7 +1567,7 @@ var RTOOLBAR = {};
|
|
1567
1567
|
{
|
1568
1568
|
$('#redactor_tabs a').eq(1).remove();
|
1569
1569
|
}
|
1570
|
-
|
1570
|
+
|
1571
1571
|
if (this.opts.imageUpload !== false)
|
1572
1572
|
{
|
1573
1573
|
// dragupload
|
@@ -1586,16 +1586,16 @@ var RTOOLBAR = {};
|
|
1586
1586
|
else
|
1587
1587
|
{
|
1588
1588
|
$('.redactor_tab').hide();
|
1589
|
-
if (this.opts.imageGetJson === false)
|
1589
|
+
if (this.opts.imageGetJson === false)
|
1590
1590
|
{
|
1591
1591
|
$('#redactor_tabs').remove();
|
1592
1592
|
$('#redactor_tab3').show();
|
1593
1593
|
}
|
1594
|
-
else
|
1594
|
+
else
|
1595
1595
|
{
|
1596
1596
|
var tabs = $('#redactor_tabs a');
|
1597
1597
|
tabs.eq(0).remove();
|
1598
|
-
tabs.eq(1).addClass('redactor_tabs_act');
|
1598
|
+
tabs.eq(1).addClass('redactor_tabs_act');
|
1599
1599
|
$('#redactor_tab2').show();
|
1600
1600
|
}
|
1601
1601
|
}
|
@@ -1603,7 +1603,7 @@ var RTOOLBAR = {};
|
|
1603
1603
|
$('#redactor_upload_btn').click($.proxy(this.imageUploadCallbackLink, this));
|
1604
1604
|
|
1605
1605
|
}, this);
|
1606
|
-
|
1606
|
+
|
1607
1607
|
this.modalInit(RLANG.image, '<%= asset_path "redactor/plugins/image.html" %>', 570, handler, true);
|
1608
1608
|
|
1609
1609
|
},
|
@@ -1616,21 +1616,21 @@ var RTOOLBAR = {};
|
|
1616
1616
|
if ($('#redactor_file_link').val() !== '')
|
1617
1617
|
{
|
1618
1618
|
var data = '<img src="' + $('#redactor_file_link').val() + '" />';
|
1619
|
-
|
1619
|
+
|
1620
1620
|
this._imageSet(data);
|
1621
1621
|
}
|
1622
1622
|
else this.modalClose();
|
1623
1623
|
},
|
1624
1624
|
imageUploadCallback: function(data)
|
1625
|
-
{
|
1625
|
+
{
|
1626
1626
|
this._imageSet(data);
|
1627
1627
|
},
|
1628
1628
|
_imageSet: function(html)
|
1629
1629
|
{
|
1630
1630
|
html = '<p>' + html + '</p>';
|
1631
|
-
|
1631
|
+
|
1632
1632
|
this.focus();
|
1633
|
-
|
1633
|
+
|
1634
1634
|
if ($.browser.msie)
|
1635
1635
|
{
|
1636
1636
|
$(this.doc.getElementById('span' + this.spanid)).after(html).remove();
|
@@ -1640,18 +1640,18 @@ var RTOOLBAR = {};
|
|
1640
1640
|
{
|
1641
1641
|
this.execCommand('inserthtml', html);
|
1642
1642
|
}
|
1643
|
-
|
1643
|
+
|
1644
1644
|
this.modalClose();
|
1645
1645
|
this.observeImages();
|
1646
1646
|
},
|
1647
|
-
|
1647
|
+
|
1648
1648
|
// INSERT LINK
|
1649
1649
|
showLink: function()
|
1650
1650
|
{
|
1651
1651
|
var handler = $.proxy(function()
|
1652
1652
|
{
|
1653
1653
|
var sel = this.getSelection();
|
1654
|
-
|
1654
|
+
|
1655
1655
|
if ($.browser.msie)
|
1656
1656
|
{
|
1657
1657
|
var parent = this.getParentNode();
|
@@ -1665,11 +1665,11 @@ var RTOOLBAR = {};
|
|
1665
1665
|
{
|
1666
1666
|
if (this.oldIE()) var text = sel.text;
|
1667
1667
|
else var text = sel.toString();
|
1668
|
-
|
1668
|
+
|
1669
1669
|
var url = '';
|
1670
1670
|
|
1671
1671
|
this.spanid = Math.floor(Math.random() * 99999);
|
1672
|
-
|
1672
|
+
|
1673
1673
|
var html = '<span id="span' + this.spanid + '">' + text + '</span>';
|
1674
1674
|
if (text != '') html = '<span id="span' + this.spanid + '">' + text + '</span>';
|
1675
1675
|
this.execCommand('inserthtml', html);
|
@@ -1689,12 +1689,12 @@ var RTOOLBAR = {};
|
|
1689
1689
|
var url = '';
|
1690
1690
|
}
|
1691
1691
|
}
|
1692
|
-
|
1692
|
+
|
1693
1693
|
$('.redactor_link_text').val(text);
|
1694
1694
|
$('#redactor_link_url').val(url).focus();
|
1695
|
-
|
1695
|
+
|
1696
1696
|
$('#redactor_insert_link_btn').click($.proxy(this.insertLink, this));
|
1697
|
-
|
1697
|
+
|
1698
1698
|
if (this.opts.linkFileUpload === false)
|
1699
1699
|
{
|
1700
1700
|
$('#redactor_tabs a').eq(3).remove();
|
@@ -1702,7 +1702,7 @@ var RTOOLBAR = {};
|
|
1702
1702
|
else
|
1703
1703
|
{
|
1704
1704
|
// dragupload
|
1705
|
-
if ($('#redactor_file').size() != 0)
|
1705
|
+
if ($('#redactor_file').size() != 0)
|
1706
1706
|
{
|
1707
1707
|
$('#redactor_file').dragupload(
|
1708
1708
|
{
|
@@ -1710,22 +1710,22 @@ var RTOOLBAR = {};
|
|
1710
1710
|
success: $.proxy(this.insertLinkFile, this)
|
1711
1711
|
});
|
1712
1712
|
}
|
1713
|
-
|
1713
|
+
|
1714
1714
|
// ajax upload
|
1715
1715
|
this.uploadInit('redactor_file', { auto: true, url: this.opts.linkFileUpload, success: $.proxy(this.insertLinkFile, this) });
|
1716
1716
|
}
|
1717
1717
|
|
1718
1718
|
}, this);
|
1719
|
-
|
1719
|
+
|
1720
1720
|
this.modalInit(RLANG.link, '<%= asset_path "redactor/plugins/link.html" %>', 460, handler);
|
1721
1721
|
|
1722
1722
|
},
|
1723
1723
|
insertLink: function()
|
1724
1724
|
{
|
1725
1725
|
var tab_selected = $('#redactor_tab_selected').val();
|
1726
|
-
|
1726
|
+
|
1727
1727
|
var link = '', text = '';
|
1728
|
-
|
1728
|
+
|
1729
1729
|
if (tab_selected == 1) // url
|
1730
1730
|
{
|
1731
1731
|
link = $('#redactor_link_url').val();
|
@@ -1784,7 +1784,7 @@ var RTOOLBAR = {};
|
|
1784
1784
|
{
|
1785
1785
|
$('#redactor_file').dragupload(
|
1786
1786
|
{
|
1787
|
-
url: this.opts.fileUpload,
|
1787
|
+
url: this.opts.fileUpload,
|
1788
1788
|
success: $.proxy(function(data)
|
1789
1789
|
{
|
1790
1790
|
this.fileUploadCallback(data);
|
@@ -1803,9 +1803,9 @@ var RTOOLBAR = {};
|
|
1803
1803
|
fileUploadCallback: function(data)
|
1804
1804
|
{
|
1805
1805
|
// chrome fix
|
1806
|
-
if ($.browser.webkit && !!window.chrome) data = data + ' ';
|
1806
|
+
if ($.browser.webkit && !!window.chrome) data = data + ' ';
|
1807
1807
|
|
1808
|
-
if ($.browser.msie)
|
1808
|
+
if ($.browser.msie)
|
1809
1809
|
{
|
1810
1810
|
$(this.doc.getElementById('span' + this.spanid)).after(data).remove();
|
1811
1811
|
this.syncCode();
|
@@ -1813,10 +1813,10 @@ var RTOOLBAR = {};
|
|
1813
1813
|
else this.execCommand('inserthtml', data);
|
1814
1814
|
|
1815
1815
|
this.modalClose();
|
1816
|
-
},
|
1817
|
-
|
1818
|
-
|
1819
|
-
|
1816
|
+
},
|
1817
|
+
|
1818
|
+
|
1819
|
+
|
1820
1820
|
// MODAL
|
1821
1821
|
modalInit: function(title, url, width, handler, scroll)
|
1822
1822
|
{
|
@@ -1842,7 +1842,7 @@ var RTOOLBAR = {};
|
|
1842
1842
|
$('#redactor_modal_close').click($.proxy(this.modalClose, this));
|
1843
1843
|
|
1844
1844
|
this.hdlModalClose = $.proxy(function(e) { if( e.keyCode == 27) this.modalClose(); }, this);
|
1845
|
-
|
1845
|
+
|
1846
1846
|
$(document).keyup(this.hdlModalClose);
|
1847
1847
|
$(this.doc).keyup(this.hdlModalClose);
|
1848
1848
|
|
@@ -1861,7 +1861,7 @@ var RTOOLBAR = {};
|
|
1861
1861
|
|
1862
1862
|
$('#redactor_modal_inner').html(data);
|
1863
1863
|
$('#redactor_modal_header').html(title);
|
1864
|
-
|
1864
|
+
|
1865
1865
|
// tabs
|
1866
1866
|
if ($('#redactor_tabs').size() != 0)
|
1867
1867
|
{
|
@@ -1875,7 +1875,7 @@ var RTOOLBAR = {};
|
|
1875
1875
|
$('.redactor_tab').hide();
|
1876
1876
|
$('#redactor_tab' + i).show();
|
1877
1877
|
$('#redactor_tab_selected').val(i);
|
1878
|
-
|
1878
|
+
|
1879
1879
|
var height = $('#redactor_modal').outerHeight();
|
1880
1880
|
$('#redactor_modal').css('margin-top', '-' + (height+10)/2 + 'px');
|
1881
1881
|
});
|
@@ -1883,26 +1883,26 @@ var RTOOLBAR = {};
|
|
1883
1883
|
}
|
1884
1884
|
|
1885
1885
|
$('#redactor_btn_modal_close').click($.proxy(this.modalClose, this));
|
1886
|
-
|
1886
|
+
|
1887
1887
|
// callback
|
1888
1888
|
if (typeof(handler) == 'function') handler();
|
1889
|
-
|
1889
|
+
|
1890
1890
|
// setup
|
1891
1891
|
var height = $('#redactor_modal').outerHeight();
|
1892
|
-
|
1892
|
+
|
1893
1893
|
$('#redactor_modal').css({ width: width + 'px', height: 'auto', marginTop: '-' + (height+10)/2 + 'px', marginLeft: '-' + (width+60)/2 + 'px' }).fadeIn('fast');
|
1894
1894
|
|
1895
1895
|
if (scroll === true)
|
1896
1896
|
{
|
1897
1897
|
$('#redactor_image_box').height(300).css('overflow', 'auto');
|
1898
|
-
}
|
1898
|
+
}
|
1899
1899
|
|
1900
1900
|
}, this)
|
1901
1901
|
});
|
1902
1902
|
},
|
1903
1903
|
modalClose: function()
|
1904
1904
|
{
|
1905
|
-
|
1905
|
+
|
1906
1906
|
$('#redactor_modal_close').unbind('click', this.modalClose);
|
1907
1907
|
$('#redactor_modal').fadeOut('fast', $.proxy(function()
|
1908
1908
|
{
|
@@ -1913,7 +1913,7 @@ var RTOOLBAR = {};
|
|
1913
1913
|
$('#redactor_modal_overlay').hide();
|
1914
1914
|
$('#redactor_modal_overlay').unbind('click', this.modalClose);
|
1915
1915
|
}
|
1916
|
-
|
1916
|
+
|
1917
1917
|
$(document).unbind('keyup', this.hdlModalClose);
|
1918
1918
|
$(this.doc).unbind('keyup', this.hdlModalClose);
|
1919
1919
|
|
@@ -1935,7 +1935,7 @@ var RTOOLBAR = {};
|
|
1935
1935
|
};
|
1936
1936
|
|
1937
1937
|
$.extend(this.uploadOptions, options);
|
1938
|
-
|
1938
|
+
|
1939
1939
|
// Test input or form
|
1940
1940
|
if ($('#' + element).size() != 0 && $('#' + element).get(0).tagName == 'INPUT')
|
1941
1941
|
{
|
@@ -1946,9 +1946,9 @@ var RTOOLBAR = {};
|
|
1946
1946
|
{
|
1947
1947
|
this.element = $('#' + element);
|
1948
1948
|
}
|
1949
|
-
|
1949
|
+
|
1950
1950
|
this.element_action = this.element.attr('action');
|
1951
|
-
|
1951
|
+
|
1952
1952
|
// Auto or trigger
|
1953
1953
|
if (this.uploadOptions.auto)
|
1954
1954
|
{
|
@@ -1957,7 +1957,7 @@ var RTOOLBAR = {};
|
|
1957
1957
|
this.element.submit(function(e) { return false; });
|
1958
1958
|
this.uploadSubmit();
|
1959
1959
|
}, this));
|
1960
|
-
|
1960
|
+
|
1961
1961
|
}
|
1962
1962
|
else if (this.uploadOptions.trigger)
|
1963
1963
|
{
|
@@ -1971,17 +1971,17 @@ var RTOOLBAR = {};
|
|
1971
1971
|
uploadFrame : function()
|
1972
1972
|
{
|
1973
1973
|
this.id = 'f' + Math.floor(Math.random() * 99999);
|
1974
|
-
|
1974
|
+
|
1975
1975
|
var d = document.createElement('div');
|
1976
1976
|
var iframe = '<iframe style="display:none" src="about:blank" id="'+this.id+'" name="'+this.id+'"></iframe>';
|
1977
1977
|
d.innerHTML = iframe;
|
1978
1978
|
document.body.appendChild(d);
|
1979
|
-
|
1979
|
+
|
1980
1980
|
// Start
|
1981
1981
|
if (this.uploadOptions.start) this.uploadOptions.start();
|
1982
|
-
|
1982
|
+
|
1983
1983
|
$('#' + this.id).load($.proxy(this.uploadLoaded, this));
|
1984
|
-
|
1984
|
+
|
1985
1985
|
return this.id;
|
1986
1986
|
},
|
1987
1987
|
uploadForm : function(f, name)
|
@@ -1991,7 +1991,7 @@ var RTOOLBAR = {};
|
|
1991
1991
|
var formId = 'redactorUploadForm' + this.id;
|
1992
1992
|
var fileId = 'redactorUploadFile' + this.id;
|
1993
1993
|
this.form = $('<form action="' + this.uploadOptions.url + '" method="POST" target="' + name + '" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>');
|
1994
|
-
|
1994
|
+
|
1995
1995
|
var oldElement = this.uploadOptions.input;
|
1996
1996
|
var newElement = $(oldElement).clone();
|
1997
1997
|
$(oldElement).attr('id', fileId);
|
@@ -2000,8 +2000,8 @@ var RTOOLBAR = {};
|
|
2000
2000
|
$(this.form).css('position', 'absolute');
|
2001
2001
|
$(this.form).css('top', '-2000px');
|
2002
2002
|
$(this.form).css('left', '-2000px');
|
2003
|
-
$(this.form).appendTo('body');
|
2004
|
-
|
2003
|
+
$(this.form).appendTo('body');
|
2004
|
+
|
2005
2005
|
this.form.submit();
|
2006
2006
|
}
|
2007
2007
|
else
|
@@ -2010,10 +2010,10 @@ var RTOOLBAR = {};
|
|
2010
2010
|
f.attr('method', 'POST');
|
2011
2011
|
f.attr('enctype', 'multipart/form-data');
|
2012
2012
|
f.attr('action', this.uploadOptions.url);
|
2013
|
-
|
2013
|
+
|
2014
2014
|
this.element.submit();
|
2015
2015
|
}
|
2016
|
-
|
2016
|
+
|
2017
2017
|
},
|
2018
2018
|
uploadLoaded : function()
|
2019
2019
|
{
|
@@ -2022,17 +2022,17 @@ var RTOOLBAR = {};
|
|
2022
2022
|
if (i.contentDocument) var d = i.contentDocument;
|
2023
2023
|
else if (i.contentWindow) var d = i.contentWindow.document;
|
2024
2024
|
else var d = window.frames[this.id].document;
|
2025
|
-
|
2025
|
+
|
2026
2026
|
if (d.location.href == "about:blank") return true;
|
2027
|
-
|
2027
|
+
|
2028
2028
|
// Success
|
2029
2029
|
if (this.uploadOptions.success) this.uploadOptions.success(d.body.innerHTML);
|
2030
|
-
|
2030
|
+
|
2031
2031
|
this.element.attr('action', this.element_action);
|
2032
2032
|
this.element.attr('target', '');
|
2033
|
-
|
2033
|
+
|
2034
2034
|
},
|
2035
|
-
|
2035
|
+
|
2036
2036
|
// UTILITY
|
2037
2037
|
markerIE: function()
|
2038
2038
|
{
|
@@ -2044,7 +2044,7 @@ var RTOOLBAR = {};
|
|
2044
2044
|
if ($.browser.msie && parseInt($.browser.version, 10) < 9) return true;
|
2045
2045
|
return false;
|
2046
2046
|
},
|
2047
|
-
outerHTML: function(s)
|
2047
|
+
outerHTML: function(s)
|
2048
2048
|
{
|
2049
2049
|
return $("<p>").append($(s).eq(0).clone()).html();
|
2050
2050
|
},
|
@@ -2054,50 +2054,50 @@ var RTOOLBAR = {};
|
|
2054
2054
|
}
|
2055
2055
|
|
2056
2056
|
};
|
2057
|
-
|
2058
|
-
|
2057
|
+
|
2058
|
+
|
2059
2059
|
// API
|
2060
|
-
$.fn.getDoc = function()
|
2060
|
+
$.fn.getDoc = function()
|
2061
2061
|
{
|
2062
2062
|
return $(this.data('redactor').doc);
|
2063
2063
|
};
|
2064
|
-
|
2065
|
-
$.fn.getFrame = function()
|
2064
|
+
|
2065
|
+
$.fn.getFrame = function()
|
2066
2066
|
{
|
2067
2067
|
return this.data('redactor').$frame;
|
2068
2068
|
};
|
2069
|
-
|
2070
|
-
$.fn.getEditor = function()
|
2069
|
+
|
2070
|
+
$.fn.getEditor = function()
|
2071
2071
|
{
|
2072
2072
|
return this.data('redactor').$editor;
|
2073
2073
|
};
|
2074
|
-
|
2075
|
-
$.fn.getCode = function()
|
2074
|
+
|
2075
|
+
$.fn.getCode = function()
|
2076
2076
|
{
|
2077
2077
|
return this.data('redactor').getCode();
|
2078
2078
|
};
|
2079
|
-
|
2079
|
+
|
2080
2080
|
$.fn.setCode = function(html)
|
2081
2081
|
{
|
2082
2082
|
this.data('redactor').setCode(html);
|
2083
2083
|
};
|
2084
|
-
|
2084
|
+
|
2085
2085
|
$.fn.insertHtml = function(html)
|
2086
2086
|
{
|
2087
2087
|
this.data('redactor').insertHtml(html);
|
2088
2088
|
};
|
2089
|
-
|
2089
|
+
|
2090
2090
|
$.fn.destroyEditor = function()
|
2091
2091
|
{
|
2092
2092
|
this.data('redactor').destroy();
|
2093
2093
|
this.removeData('redactor');
|
2094
2094
|
};
|
2095
|
-
|
2095
|
+
|
2096
2096
|
$.fn.setFocus = function()
|
2097
2097
|
{
|
2098
2098
|
this.data('redactor').focus();
|
2099
2099
|
};
|
2100
|
-
|
2100
|
+
|
2101
2101
|
$.fn.execCommand = function(cmd, param)
|
2102
2102
|
{
|
2103
2103
|
this.data('redactor').execCommand(cmd, param);
|
@@ -2107,66 +2107,66 @@ var RTOOLBAR = {};
|
|
2107
2107
|
|
2108
2108
|
/*
|
2109
2109
|
Plugin Drag and drop Upload v1.0.1
|
2110
|
-
http://imperavi.com/
|
2110
|
+
http://imperavi.com/
|
2111
2111
|
Copyright 2012, Imperavi Ltd.
|
2112
2112
|
*/
|
2113
2113
|
(function($){
|
2114
|
-
|
2115
|
-
// Initialization
|
2114
|
+
|
2115
|
+
// Initialization
|
2116
2116
|
$.fn.dragupload = function(options)
|
2117
|
-
{
|
2117
|
+
{
|
2118
2118
|
return this.each(function() {
|
2119
2119
|
var obj = new Construct(this, options);
|
2120
2120
|
obj.init();
|
2121
2121
|
});
|
2122
2122
|
};
|
2123
|
-
|
2124
|
-
// Options and variables
|
2123
|
+
|
2124
|
+
// Options and variables
|
2125
2125
|
function Construct(el, options) {
|
2126
2126
|
|
2127
2127
|
this.opts = $.extend({
|
2128
|
-
|
2128
|
+
|
2129
2129
|
url: false,
|
2130
2130
|
success: false,
|
2131
2131
|
preview: false,
|
2132
|
-
|
2132
|
+
|
2133
2133
|
text: RLANG.drop_file_here,
|
2134
2134
|
atext: RLANG.or_choose
|
2135
|
-
|
2135
|
+
|
2136
2136
|
}, options);
|
2137
|
-
|
2137
|
+
|
2138
2138
|
this.$el = $(el);
|
2139
2139
|
}
|
2140
2140
|
|
2141
2141
|
// Functionality
|
2142
2142
|
Construct.prototype = {
|
2143
2143
|
init: function()
|
2144
|
-
{
|
2145
|
-
if (!$.browser.opera && !$.browser.msie)
|
2146
|
-
{
|
2144
|
+
{
|
2145
|
+
if (!$.browser.opera && !$.browser.msie)
|
2146
|
+
{
|
2147
2147
|
|
2148
2148
|
this.droparea = $('<div class="redactor_droparea"></div>');
|
2149
|
-
this.dropareabox = $('<div class="redactor_dropareabox">' + this.opts.text + '</div>');
|
2149
|
+
this.dropareabox = $('<div class="redactor_dropareabox">' + this.opts.text + '</div>');
|
2150
2150
|
this.dropalternative = $('<div class="redactor_dropalternative">' + this.opts.atext + '</div>');
|
2151
|
-
|
2151
|
+
|
2152
2152
|
this.droparea.append(this.dropareabox);
|
2153
|
-
|
2153
|
+
|
2154
2154
|
this.$el.before(this.droparea);
|
2155
2155
|
this.$el.before(this.dropalternative);
|
2156
2156
|
|
2157
2157
|
// drag over
|
2158
2158
|
this.dropareabox.bind('dragover', $.proxy(function() { return this.ondrag(); }, this));
|
2159
|
-
|
2159
|
+
|
2160
2160
|
// drag leave
|
2161
2161
|
this.dropareabox.bind('dragleave', $.proxy(function() { return this.ondragleave(); }, this));
|
2162
|
-
|
2162
|
+
|
2163
2163
|
// drop
|
2164
2164
|
this.dropareabox.get(0).ondrop = $.proxy(function(event)
|
2165
2165
|
{
|
2166
2166
|
event.preventDefault();
|
2167
|
-
|
2167
|
+
|
2168
2168
|
this.dropareabox.removeClass('hover').addClass('drop');
|
2169
|
-
|
2169
|
+
|
2170
2170
|
var file = event.dataTransfer.files[0];
|
2171
2171
|
|
2172
2172
|
var fd = new FormData();
|
@@ -2212,14 +2212,14 @@ var RTOOLBAR = {};
|
|
2212
2212
|
var url1 = /(^|<|\s)(www\..+?\..+?)(\s|>|$)/g,
|
2213
2213
|
url2 = /(^|<|\s)(((https?|ftp):\/\/|mailto:).+?)(\s|>|$)/g,
|
2214
2214
|
|
2215
|
-
linkifyThis = function ()
|
2215
|
+
linkifyThis = function ()
|
2216
2216
|
{
|
2217
2217
|
var childNodes = this.childNodes,
|
2218
2218
|
i = childNodes.length;
|
2219
2219
|
while(i--)
|
2220
2220
|
{
|
2221
2221
|
var n = childNodes[i];
|
2222
|
-
if (n.nodeType == 3)
|
2222
|
+
if (n.nodeType == 3)
|
2223
2223
|
{
|
2224
2224
|
var html = n.nodeValue;
|
2225
2225
|
if (html)
|
@@ -2239,7 +2239,7 @@ var RTOOLBAR = {};
|
|
2239
2239
|
}
|
2240
2240
|
}
|
2241
2241
|
};
|
2242
|
-
|
2242
|
+
|
2243
2243
|
$.fn.linkify = function ()
|
2244
2244
|
{
|
2245
2245
|
this.each(linkifyThis);
|