card 1.16.6 → 1.16.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardoc/checksums +234 -49
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/VERSION +1 -1
- data/config/initializers/mime_types.rb +3 -3
- data/config/initializers/notification.rb +1 -1
- data/db/migrate/20121118115000_update_link_type.rb +8 -8
- data/db/migrate/20130411210957_update_codenames.rb +2 -2
- data/db/migrate/20140822073704_create_new_revision_tables.rb +12 -13
- data/db/migrate/20141001105348_move_revisions_to_actions.rb +16 -16
- data/db/migrate/20141121172918_rename_card_migration_table.rb +4 -4
- data/db/migrate_core_cards/20130419215612_import_help_text.rb +3 -3
- data/db/migrate_core_cards/20130823192433_add_style_cards.rb +45 -47
- data/db/migrate_core_cards/20130910183318_move_styles_to_content.rb +1 -1
- data/db/migrate_core_cards/20130920214038_jsonize_tinymce.rb +3 -3
- data/db/migrate_core_cards/20130920291703_update_stylesheets.rb +3 -3
- data/db/migrate_core_cards/20130927191728_account_events.rb +6 -6
- data/db/migrate_core_cards/20131016172445_common_css_patch.rb +1 -1
- data/db/migrate_core_cards/20140110193325_reset_account_request_type.rb +1 -1
- data/db/migrate_core_cards/20140307231621_user_data_to_cards.rb +19 -19
- data/db/migrate_core_cards/20140317035504_account_requests_to_signups.rb +11 -12
- data/db/migrate_core_cards/20140512155840_add_script_cards.rb +35 -36
- data/db/migrate_core_cards/20140629222005_add_email_cards.rb +55 -55
- data/db/migrate_core_cards/20140725180118_config_card_updates.rb +1 -1
- data/db/migrate_core_cards/20141111083921_delete_machine_output.rb +2 -2
- data/db/migrate_core_cards/20141115034214_config_descriptions_etc.rb +3 -3
- data/db/migrate_core_cards/20141120120605_fix_notification_html_message.rb +2 -2
- data/db/migrate_core_cards/20141204061304_watchers_to_following.rb +8 -8
- data/db/migrate_core_cards/20141208162106_add_ace_script.rb +2 -2
- data/db/migrate_core_cards/20141216155251_add_more_following_cards.rb +16 -16
- data/db/migrate_core_cards/20141230204340_uri_codename.rb +1 -1
- data/db/migrate_core_cards/20150202143810_import_bootstrap_layout.rb +19 -19
- data/db/migrate_core_cards/20150220134731_following_to_follow_rule.rb +3 -3
- data/db/migrate_core_cards/20150317162412_bootstrap_themes.rb +15 -15
- data/db/migrate_core_cards/20150326205655_bootswatch_themes.rb +11 -11
- data/db/migrate_core_cards/20150331135745_new_card_menu.rb +1 -1
- data/db/migrate_core_cards/20150429090551_search_card_context.rb +1 -1
- data/db/migrate_core_cards/20150508212032_menu_compatibility.rb +3 -3
- data/db/migrate_core_cards/20150510031118_fix_skin_images.rb +1 -1
- data/db/migrate_core_cards/20150528084659_add_session_cardtype.rb +4 -4
- data/db/migrate_core_cards/20150601133433_add_recent_setting_session_card.rb +5 -5
- data/db/migrate_core_cards/20150605115802_add_performance_log_card.rb +1 -1
- data/db/migrate_core_cards/20150610171702_add_debugger_session_card.rb +2 -2
- data/db/migrate_core_cards/20150611203506_rails_inflection_updates.rb +5 -5
- data/db/migrate_core_cards/20150627205133_fix_script_bootstrap_card_type.rb +1 -1
- data/db/migrate_core_cards/20150702130543_remove_edit_toolbar_pinned.rb +1 -1
- data/db/migrate_core_cards/20150724123438_update_file_and_image_cards.rb +5 -5
- data/db/migrate_core_cards/20150807205221_create_references_for_search_cards.rb +1 -1
- data/db/migrate_core_cards/20150824135418_update_file_history.rb +3 -3
- data/db/migrate_core_cards/20150903130006_attachment_upload_cards.rb +2 -2
- data/db/migrate_core_cards/20150910085603_remove_performance_log_card.rb +1 -1
- data/lib/card.rb +4 -4
- data/lib/card/active_record_ext.rb +8 -8
- data/lib/card/auth.rb +6 -6
- data/lib/card/cache.rb +1 -1
- data/lib/card/chunk.rb +1 -1
- data/lib/card/content.rb +1 -1
- data/lib/card/diff.rb +10 -10
- data/lib/card/env.rb +1 -1
- data/lib/card/format.rb +12 -12
- data/lib/card/loader.rb +1 -1
- data/lib/card/migration.rb +1 -1
- data/lib/card/name.rb +4 -4
- data/lib/card/query.rb +255 -61
- data/lib/card/query/attributes.rb +310 -0
- data/lib/card/query/clause.rb +12 -15
- data/lib/card/query/join.rb +73 -0
- data/lib/card/query/reference.rb +51 -0
- data/lib/card/query/sql_statement.rb +228 -0
- data/lib/card/query/value.rb +66 -0
- data/lib/card/reference.rb +6 -6
- data/lib/card/set.rb +12 -12
- data/lib/card/set_pattern.rb +9 -9
- data/lib/card/spec_helper.rb +5 -5
- data/lib/card/success.rb +1 -1
- data/lib/cardio.rb +7 -7
- data/lib/generators/card/format/format_generator.rb +3 -3
- data/lib/generators/card/migration/migration_generator.rb +5 -5
- data/lib/generators/card/set/set_generator.rb +4 -4
- data/mod/01_core/chunk/include.rb +4 -4
- data/mod/01_core/chunk/link.rb +5 -5
- data/mod/01_core/chunk/literal.rb +2 -2
- data/mod/01_core/chunk/query_reference.rb +8 -8
- data/mod/01_core/chunk/uri.rb +18 -18
- data/mod/01_core/format/html_format.rb +4 -4
- data/mod/01_core/set/all/active_card.rb +2 -2
- data/mod/01_core/set/all/collection.rb +21 -26
- data/mod/01_core/set/all/content.rb +2 -2
- data/mod/01_core/set/all/fetch.rb +6 -6
- data/mod/01_core/set/all/initialize.rb +4 -4
- data/mod/01_core/set/all/location_history.rb +2 -2
- data/mod/01_core/set/all/name.rb +14 -14
- data/mod/01_core/set/all/pattern.rb +1 -1
- data/mod/01_core/set/all/permissions.rb +12 -12
- data/mod/01_core/set/all/phases.rb +29 -12
- data/mod/01_core/set/all/references.rb +14 -14
- data/mod/01_core/set/all/rules.rb +8 -8
- data/mod/01_core/set/all/templating.rb +10 -9
- data/mod/01_core/set/all/tracked_attributes.rb +7 -7
- data/mod/01_core/set/all/trash.rb +6 -6
- data/mod/01_core/set/all/type.rb +7 -7
- data/mod/01_core/set/all/utils.rb +4 -4
- data/mod/01_core/set/all/view_cache.rb +1 -1
- data/mod/01_core/set_pattern/02_all_plus.rb +2 -2
- data/mod/01_core/set_pattern/03_type.rb +1 -1
- data/mod/01_core/set_pattern/04_star.rb +1 -1
- data/mod/01_core/set_pattern/05_rstar.rb +2 -2
- data/mod/01_core/set_pattern/06_right.rb +4 -4
- data/mod/01_core/set_pattern/07_type_plus_right.rb +4 -4
- data/mod/01_core/set_pattern/08_self.rb +1 -1
- data/mod/01_core/spec/chunk/uri_spec.rb +73 -73
- data/mod/01_core/spec/format/html_format_spec.rb +5 -5
- data/mod/01_core/spec/set/all/attribute_tracking_spec.rb +1 -1
- data/mod/01_core/spec/set/all/collection_spec.rb +22 -22
- data/mod/01_core/spec/set/all/content_spec.rb +1 -1
- data/mod/01_core/spec/set/all/fetch_spec.rb +24 -24
- data/mod/01_core/spec/set/all/initialize_spec.rb +9 -9
- data/mod/01_core/spec/set/all/name_spec.rb +8 -8
- data/mod/01_core/spec/set/all/pattern_spec.rb +10 -10
- data/mod/01_core/spec/set/all/permissions_spec.rb +45 -45
- data/mod/01_core/spec/set/all/references_spec.rb +1 -1
- data/mod/01_core/spec/set/all/rules2_spec.rb +15 -15
- data/mod/01_core/spec/set/all/rules_spec.rb +37 -37
- data/mod/01_core/spec/set/all/templating_spec.rb +21 -21
- data/mod/01_core/spec/set/all/tracked_attributes_spec.rb +55 -55
- data/mod/01_core/spec/set/all/trash_spec.rb +4 -4
- data/mod/01_core/spec/set/all/type_spec.rb +15 -15
- data/mod/01_history/lib/card/act.rb +2 -2
- data/mod/01_history/lib/card/action.rb +22 -22
- data/mod/01_history/lib/card/change.rb +1 -1
- data/mod/01_history/set/all/actions.rb +2 -2
- data/mod/01_history/set/all/content_history.rb +4 -4
- data/mod/01_history/set/all/history.rb +46 -46
- data/mod/02_basic_types/set/all/all_css.rb +10 -10
- data/mod/02_basic_types/set/all/all_csv.rb +7 -7
- data/mod/02_basic_types/set/all/base.rb +25 -25
- data/mod/02_basic_types/set/all/json.rb +16 -16
- data/mod/02_basic_types/set/all/rss.rb +7 -7
- data/mod/02_basic_types/set/type/html.rb +2 -2
- data/mod/02_basic_types/set/type/plain_text.rb +1 -1
- data/mod/02_basic_types/set/type/pointer.rb +39 -31
- data/mod/02_basic_types/spec/set/all/all_css_spec.rb +1 -1
- data/mod/02_basic_types/spec/set/all/all_csv_spec.rb +1 -1
- data/mod/02_basic_types/spec/set/all/base_spec.rb +18 -18
- data/mod/02_basic_types/spec/set/all/json_spec.rb +4 -4
- data/mod/02_basic_types/spec/set/all/rss_spec.rb +8 -2
- data/mod/02_basic_types/spec/set/type/plain_text_spec.rb +1 -1
- data/mod/02_basic_types/spec/set/type/pointer_spec.rb +54 -44
- data/mod/03_machines/lib/card/machine.rb +46 -29
- data/mod/03_machines/lib/card/machine_input.rb +34 -10
- data/mod/03_machines/set/type/coffee_script.rb +3 -3
- data/mod/03_machines/set/type/css.rb +8 -8
- data/mod/03_machines/set/type/java_script.rb +4 -4
- data/mod/03_machines/set/type/scss.rb +2 -2
- data/mod/03_machines/set/type/skin.rb +1 -1
- data/mod/03_machines/spec/lib/shared_machine_examples.rb +27 -27
- data/mod/03_machines/spec/lib/shared_machine_input_examples.rb +8 -8
- data/mod/03_machines/spec/set/type/coffeescript_spec.rb +6 -6
- data/mod/03_machines/spec/set/type/css_spec.rb +9 -9
- data/mod/03_machines/spec/set/type/javascript_spec.rb +6 -6
- data/mod/03_machines/spec/set/type/scss_spec.rb +5 -5
- data/mod/03_machines/spec/set/type/skin_spec.rb +25 -25
- data/mod/04_settings/lib/card/setting.rb +11 -11
- data/mod/04_settings/set/abstract/permission.rb +9 -9
- data/mod/04_settings/set/right/script.rb +1 -1
- data/mod/04_settings/set/right/structure.rb +0 -5
- data/mod/04_settings/set/right/style.rb +2 -2
- data/mod/04_settings/set/self/accountable.rb +1 -1
- data/mod/04_settings/set/self/add_help.rb +1 -1
- data/mod/04_settings/set/self/autoname.rb +1 -1
- data/mod/04_settings/set/self/captcha.rb +1 -1
- data/mod/04_settings/set/self/create.rb +1 -1
- data/mod/04_settings/set/self/default.rb +1 -1
- data/mod/04_settings/set/self/delete.rb +1 -1
- data/mod/04_settings/set/self/help.rb +1 -1
- data/mod/04_settings/set/self/input.rb +1 -1
- data/mod/04_settings/set/self/layout.rb +1 -1
- data/mod/04_settings/set/self/on_create.rb +1 -1
- data/mod/04_settings/set/self/on_delete.rb +1 -1
- data/mod/04_settings/set/self/on_update.rb +1 -1
- data/mod/04_settings/set/self/options.rb +1 -1
- data/mod/04_settings/set/self/options_label.rb +1 -1
- data/mod/04_settings/set/self/read.rb +1 -1
- data/mod/04_settings/set/self/script.rb +1 -1
- data/mod/04_settings/set/self/structure.rb +1 -1
- data/mod/04_settings/set/self/style.rb +1 -1
- data/mod/04_settings/set/self/table_of_contents.rb +1 -1
- data/mod/04_settings/set/self/thanks.rb +1 -1
- data/mod/04_settings/set/self/update.rb +1 -1
- data/mod/04_settings/set/type/setting.rb +14 -14
- data/mod/04_settings/spec/set/right/comment_spec.rb +5 -5
- data/mod/04_settings/spec/set/right/create_spec.rb +1 -1
- data/mod/04_settings/spec/set/right/script_spec.rb +5 -5
- data/mod/04_settings/spec/set/right/structure_spec.rb +4 -2
- data/mod/04_settings/spec/set/right/style_spec.rb +7 -7
- data/mod/04_settings/spec/set/type/setting_spec.rb +2 -2
- data/mod/05_email/lib/card/follow_option.rb +24 -24
- data/mod/05_email/set/all/follow.rb +24 -16
- data/mod/05_email/set/all/notify.rb +25 -23
- data/mod/05_email/set/all/observer.rb +5 -5
- data/mod/05_email/set/right/bcc.rb +8 -8
- data/mod/05_email/set/right/follow.rb +44 -17
- data/mod/05_email/set/right/follow_fields.rb +1 -1
- data/mod/05_email/set/right/following.rb +49 -40
- data/mod/05_email/set/self/always.rb +2 -2
- data/mod/05_email/set/self/created.rb +1 -1
- data/mod/05_email/set/self/edited.rb +4 -4
- data/mod/05_email/set/self/follow.rb +1 -1
- data/mod/05_email/set/self/follow_defaults.rb +9 -9
- data/mod/05_email/set/self/never.rb +1 -1
- data/mod/05_email/set/type/email_template.rb +9 -9
- data/mod/05_email/set/type_plus_right/user/follow.rb +16 -16
- data/mod/05_email/spec/set/all/follow_spec.rb +10 -10
- data/mod/05_email/spec/set/all/notify_spec.rb +82 -82
- data/mod/05_email/spec/set/all/observer_spec.rb +16 -16
- data/mod/05_email/spec/set/right/followers_spec.rb +6 -6
- data/mod/05_email/spec/set/self/follow_defaults_spec.rb +2 -2
- data/mod/05_standard/lib/carrier_wave/cardmount.rb +5 -5
- data/mod/05_standard/lib/image_uploader.rb +8 -8
- data/mod/05_standard/set/abstract/attachment.rb +18 -18
- data/mod/05_standard/set/all/account.rb +5 -5
- data/mod/05_standard/set/all/comment.rb +7 -7
- data/mod/05_standard/set/all/error.rb +25 -25
- data/mod/05_standard/set/all/event_viz.rb +1 -1
- data/mod/05_standard/set/all/links.rb +9 -9
- data/mod/05_standard/set/all/rich_html/content.rb +34 -34
- data/mod/05_standard/set/all/rich_html/editing.rb +35 -35
- data/mod/05_standard/set/all/rich_html/form.rb +20 -20
- data/mod/05_standard/set/all/rich_html/header.rb +8 -8
- data/mod/05_standard/set/all/rich_html/menu.rb +33 -33
- data/mod/05_standard/set/all/rich_html/modal.rb +16 -16
- data/mod/05_standard/set/all/rich_html/toolbar.rb +63 -63
- data/mod/05_standard/set/all/rich_html/wrapper.rb +8 -8
- data/mod/05_standard/set/right/account.rb +27 -27
- data/mod/05_standard/set/right/email.rb +5 -5
- data/mod/05_standard/set/right/password.rb +5 -5
- data/mod/05_standard/set/rstar/rules.rb +52 -52
- data/mod/05_standard/set/self/account_links.rb +27 -27
- data/mod/05_standard/set/self/all.rb +1 -1
- data/mod/05_standard/set/self/head.rb +5 -5
- data/mod/05_standard/set/self/navbox.rb +11 -11
- data/mod/05_standard/set/self/recent.rb +2 -2
- data/mod/05_standard/set/self/search.rb +13 -13
- data/mod/05_standard/set/self/signin.rb +19 -19
- data/mod/05_standard/set/self/stats.rb +2 -2
- data/mod/05_standard/set/type/basic.rb +1 -1
- data/mod/05_standard/set/type/cardtype.rb +5 -5
- data/mod/05_standard/set/type/date.rb +1 -1
- data/mod/05_standard/set/type/file.rb +7 -7
- data/mod/05_standard/set/type/image.rb +8 -8
- data/mod/05_standard/set/type/number.rb +2 -2
- data/mod/05_standard/set/type/phrase.rb +1 -1
- data/mod/05_standard/set/type/search_type.rb +27 -21
- data/mod/05_standard/set/type/session.rb +2 -2
- data/mod/05_standard/set/type/set.rb +37 -37
- data/mod/05_standard/set/type/signup.rb +25 -25
- data/mod/05_standard/set/type/uri.rb +1 -1
- data/mod/05_standard/set/type/user.rb +21 -21
- data/mod/05_standard/spec/chunk/include_spec.rb +16 -16
- data/mod/05_standard/spec/chunk/link_spec.rb +18 -18
- data/mod/05_standard/spec/chunk/query_reference_spec.rb +1 -1
- data/mod/05_standard/spec/set/all/account_spec.rb +7 -7
- data/mod/05_standard/spec/set/all/email_html_spec.rb +3 -3
- data/mod/05_standard/spec/set/all/history_spec.rb +14 -14
- data/mod/05_standard/spec/set/all/rich_html/editing_spec.rb +1 -1
- data/mod/05_standard/spec/set/all/rich_html/form_spec.rb +2 -2
- data/mod/05_standard/spec/set/right/account_spec.rb +9 -9
- data/mod/05_standard/spec/set/right/email_spec.rb +8 -8
- data/mod/05_standard/spec/set/right/password_spec.rb +9 -9
- data/mod/05_standard/spec/set/right/stats_spec.rb +1 -1
- data/mod/05_standard/spec/set/right/when_created_spec.rb +1 -1
- data/mod/05_standard/spec/set/right/when_last_edited_spec.rb +1 -1
- data/mod/05_standard/spec/set/rstar/rules_spec.rb +2 -2
- data/mod/05_standard/spec/set/self/account_links_spec.rb +2 -2
- data/mod/05_standard/spec/set/self/all_spec.rb +8 -11
- data/mod/05_standard/spec/set/self/head_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/navbox_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/now_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/stats_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/version_spec.rb +1 -1
- data/mod/05_standard/spec/set/type/email_template_spec.rb +25 -25
- data/mod/05_standard/spec/set/type/file_spec.rb +4 -4
- data/mod/05_standard/spec/set/type/html_spec.rb +3 -3
- data/mod/05_standard/spec/set/type/image_spec.rb +6 -6
- data/mod/05_standard/spec/set/type/layout_type_spec.rb +1 -1
- data/mod/05_standard/spec/set/type/search_type_spec.rb +10 -10
- data/mod/05_standard/spec/set/type/signup_spec.rb +11 -11
- data/mod/05_standard/spec/set/type/toggle_spec.rb +2 -2
- data/mod/05_standard/spec/set/type/uri_spec.rb +9 -9
- data/mod/06_bootstrap/set/all/bootstrap/helper.rb +10 -10
- data/mod/06_bootstrap/set/all/bootstrap/wrapper.rb +4 -4
- data/mod/06_bootstrap/set/all/rich_bootstrap.rb +1 -1
- data/spec/lib/card/action_spec.rb +2 -2
- data/spec/lib/card/cache_spec.rb +7 -7
- data/spec/lib/card/content_spec.rb +31 -37
- data/spec/lib/card/diff_spec.rb +56 -56
- data/spec/lib/card/format_spec.rb +11 -11
- data/spec/lib/card/query_spec.rb +382 -265
- data/spec/lib/card/reference_spec.rb +133 -140
- data/spec/lib/card/set_pattern_spec.rb +10 -9
- data/spec/lib/card/set_spec.rb +11 -11
- data/spec/lib/card/success_spec.rb +16 -8
- data/spec/mailers/mailer_spec.rb +5 -5
- data/spec/models/card/cardtype_spec.rb +20 -20
- data/spec/models/card/create_spec.rb +6 -6
- data/spec/models/card/trash_spec.rb +20 -20
- data/spec/models/card/type_transition_spec.rb +3 -3
- data/spec/models/card/validation_spec.rb +5 -5
- data/spec/models/card_spec.rb +24 -24
- data/spec/spec_helper.rb +5 -5
- data/tmpsets/set/mod001-01_core/all/active_card.rb +2 -2
- data/tmpsets/set/mod001-01_core/all/collection.rb +23 -26
- data/tmpsets/set/mod001-01_core/all/content.rb +2 -2
- data/tmpsets/set/mod001-01_core/all/fetch.rb +6 -6
- data/tmpsets/set/mod001-01_core/all/initialize.rb +8 -4
- data/tmpsets/set/mod001-01_core/all/name.rb +14 -14
- data/tmpsets/set/mod001-01_core/all/pattern.rb +1 -1
- data/tmpsets/set/mod001-01_core/all/permissions.rb +12 -12
- data/tmpsets/set/mod001-01_core/all/phases.rb +31 -13
- data/tmpsets/set/mod001-01_core/all/references.rb +14 -14
- data/tmpsets/set/mod001-01_core/all/rules.rb +8 -10
- data/tmpsets/set/mod001-01_core/all/templating.rb +10 -9
- data/tmpsets/set/mod001-01_core/all/tracked_attributes.rb +7 -7
- data/tmpsets/set/mod001-01_core/all/trash.rb +9 -8
- data/tmpsets/set/mod001-01_core/all/type.rb +7 -7
- data/tmpsets/set/mod001-01_core/all/utils.rb +16 -4
- data/tmpsets/set/mod001-01_core/all/view_cache.rb +1 -1
- data/tmpsets/set/mod002-01_history/all/actions.rb +2 -2
- data/tmpsets/set/mod002-01_history/all/content_history.rb +11 -7
- data/tmpsets/set/mod002-01_history/all/history.rb +46 -46
- data/tmpsets/set/mod003-02_basic_types/all/all_css.rb +10 -10
- data/tmpsets/set/mod003-02_basic_types/all/all_csv.rb +7 -7
- data/tmpsets/set/mod003-02_basic_types/all/base.rb +25 -25
- data/tmpsets/set/mod003-02_basic_types/all/json.rb +16 -16
- data/tmpsets/set/mod003-02_basic_types/all/rss.rb +7 -7
- data/tmpsets/set/mod003-02_basic_types/type/html.rb +2 -2
- data/tmpsets/set/mod003-02_basic_types/type/plain_text.rb +1 -1
- data/tmpsets/set/mod003-02_basic_types/type/pointer.rb +38 -31
- data/tmpsets/set/mod004-03_machines/right/machine_output.rb +4 -0
- data/tmpsets/set/mod004-03_machines/type/coffee_script.rb +3 -3
- data/tmpsets/set/mod004-03_machines/type/css.rb +8 -8
- data/tmpsets/set/mod004-03_machines/type/java_script.rb +4 -4
- data/tmpsets/set/mod004-03_machines/type/scss.rb +2 -2
- data/tmpsets/set/mod004-03_machines/type/skin.rb +1 -1
- data/tmpsets/set/mod005-04_settings/abstract/permission.rb +9 -9
- data/tmpsets/set/mod005-04_settings/right/script.rb +1 -1
- data/tmpsets/set/mod005-04_settings/right/structure.rb +0 -5
- data/tmpsets/set/mod005-04_settings/right/style.rb +2 -2
- data/tmpsets/set/mod005-04_settings/self/accountable.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/add_help.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/autoname.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/captcha.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/create.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/default.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/delete.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/help.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/input.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/layout.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/on_create.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/on_delete.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/on_update.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/options.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/options_label.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/read.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/script.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/structure.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/style.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/table_of_contents.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/thanks.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/update.rb +1 -1
- data/tmpsets/set/mod005-04_settings/type/setting.rb +14 -14
- data/tmpsets/set/mod006-05_email/all/follow.rb +24 -16
- data/tmpsets/set/mod006-05_email/all/notify.rb +25 -23
- data/tmpsets/set/mod006-05_email/all/observer.rb +8 -8
- data/tmpsets/set/mod006-05_email/right/bcc.rb +8 -8
- data/tmpsets/set/mod006-05_email/right/follow.rb +44 -17
- data/tmpsets/set/mod006-05_email/right/follow_fields.rb +1 -1
- data/tmpsets/set/mod006-05_email/right/following.rb +49 -40
- data/tmpsets/set/mod006-05_email/self/always.rb +2 -2
- data/tmpsets/set/mod006-05_email/self/created.rb +1 -1
- data/tmpsets/set/mod006-05_email/self/edited.rb +4 -4
- data/tmpsets/set/mod006-05_email/self/follow.rb +1 -1
- data/tmpsets/set/mod006-05_email/self/follow_defaults.rb +9 -9
- data/tmpsets/set/mod006-05_email/self/never.rb +1 -1
- data/tmpsets/set/mod006-05_email/type/email_template.rb +9 -9
- data/tmpsets/set/mod006-05_email/type_plus_right/user/follow.rb +17 -17
- data/tmpsets/set/mod007-05_standard/abstract/attachment.rb +98 -46
- data/tmpsets/set/mod007-05_standard/all/account.rb +5 -5
- data/tmpsets/set/mod007-05_standard/all/comment.rb +7 -7
- data/tmpsets/set/mod007-05_standard/all/error.rb +26 -26
- data/tmpsets/set/mod007-05_standard/all/event_viz.rb +1 -1
- data/tmpsets/set/mod007-05_standard/all/links.rb +10 -9
- data/tmpsets/set/mod007-05_standard/all/rich_html/content.rb +34 -34
- data/tmpsets/set/mod007-05_standard/all/rich_html/editing.rb +35 -35
- data/tmpsets/set/mod007-05_standard/all/rich_html/form.rb +20 -20
- data/tmpsets/set/mod007-05_standard/all/rich_html/header.rb +8 -8
- data/tmpsets/set/mod007-05_standard/all/rich_html/menu.rb +33 -33
- data/tmpsets/set/mod007-05_standard/all/rich_html/modal.rb +16 -16
- data/tmpsets/set/mod007-05_standard/all/rich_html/toolbar.rb +63 -63
- data/tmpsets/set/mod007-05_standard/all/rich_html/wrapper.rb +8 -8
- data/tmpsets/set/mod007-05_standard/right/account.rb +27 -27
- data/tmpsets/set/mod007-05_standard/right/email.rb +5 -5
- data/tmpsets/set/mod007-05_standard/right/password.rb +5 -5
- data/tmpsets/set/mod007-05_standard/rstar/rules.rb +52 -52
- data/tmpsets/set/mod007-05_standard/self/account_links.rb +27 -27
- data/tmpsets/set/mod007-05_standard/self/all.rb +1 -1
- data/tmpsets/set/mod007-05_standard/self/head.rb +5 -5
- data/tmpsets/set/mod007-05_standard/self/navbox.rb +11 -11
- data/tmpsets/set/mod007-05_standard/self/recent.rb +2 -2
- data/tmpsets/set/mod007-05_standard/self/search.rb +13 -13
- data/tmpsets/set/mod007-05_standard/self/signin.rb +19 -19
- data/tmpsets/set/mod007-05_standard/self/stats.rb +2 -2
- data/tmpsets/set/mod007-05_standard/type/basic.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/cardtype.rb +5 -5
- data/tmpsets/set/mod007-05_standard/type/date.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/file.rb +23 -8
- data/tmpsets/set/mod007-05_standard/type/image.rb +10 -8
- data/tmpsets/set/mod007-05_standard/type/number.rb +2 -2
- data/tmpsets/set/mod007-05_standard/type/phrase.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/search_type.rb +21 -19
- data/tmpsets/set/mod007-05_standard/type/session.rb +2 -2
- data/tmpsets/set/mod007-05_standard/type/set.rb +37 -37
- data/tmpsets/set/mod007-05_standard/type/signup.rb +25 -25
- data/tmpsets/set/mod007-05_standard/type/uri.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/user.rb +21 -21
- data/tmpsets/set/mod008-06_bootstrap/all/bootstrap/helper.rb +10 -10
- data/tmpsets/set/mod008-06_bootstrap/all/bootstrap/wrapper.rb +4 -4
- data/tmpsets/set/mod008-06_bootstrap/all/rich_bootstrap.rb +1 -1
- data/tmpsets/set_pattern/101-all_plus.rb +2 -2
- data/tmpsets/set_pattern/102-type.rb +1 -1
- data/tmpsets/set_pattern/103-star.rb +1 -1
- data/tmpsets/set_pattern/104-rstar.rb +2 -2
- data/tmpsets/set_pattern/105-right.rb +4 -4
- data/tmpsets/set_pattern/106-type_plus_right.rb +4 -4
- data/tmpsets/set_pattern/107-self.rb +1 -1
- metadata +7 -5
- data/lib/card/query/card_clause.rb +0 -528
- data/lib/card/query/ref_clause.rb +0 -47
- data/lib/card/query/value_clause.rb +0 -65
@@ -10,14 +10,14 @@ describe Card::Set::Type::Html do
|
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should not render any content in closed view" do
|
13
|
-
expect(render_card(:closed_content, :
|
13
|
+
expect(render_card(:closed_content, type: 'Html', content: "<strong>Lions and Tigers</strong>")).to eq('')
|
14
14
|
end
|
15
15
|
|
16
16
|
it "should render inclusions" do
|
17
|
-
expect(render_card( :core, :
|
17
|
+
expect(render_card( :core, type: 'HTML', content: '{{a}}' )).to match(/slot/)
|
18
18
|
end
|
19
19
|
|
20
20
|
it 'should not render uris' do
|
21
|
-
expect(render_card( :core, :
|
21
|
+
expect(render_card( :core, type: 'HTML', content: 'http://google.com' )).not_to match(/\<a/)
|
22
22
|
end
|
23
23
|
end
|
@@ -9,8 +9,8 @@ describe Card::Set::Type::Image do
|
|
9
9
|
end
|
10
10
|
|
11
11
|
it "handles size argument in inclusion syntax" do
|
12
|
-
image_card = Card.create! :
|
13
|
-
including_card = Card.new :
|
12
|
+
image_card = Card.create! name: "TestImage", type: "Image", content: '~12345/TestImage.jpg'
|
13
|
+
including_card = Card.new name: 'Image1', content: "{{TestImage | core; size:small }}"
|
14
14
|
rendered = including_card.format._render :core
|
15
15
|
assert_view_select rendered, 'img[src=?]', "/files/~#{image_card.id}/#{image_card.last_content_action_id}-small.jpg"
|
16
16
|
end
|
@@ -19,7 +19,7 @@ describe Card::Set::Type::Image do
|
|
19
19
|
context "newly created image card" do
|
20
20
|
before do
|
21
21
|
Card::Auth.as_bot do
|
22
|
-
Card.create! :
|
22
|
+
Card.create! name: "image card", type: 'image', image: File.new( File.join FIXTURES_PATH, 'mao2.jpg' )
|
23
23
|
end
|
24
24
|
end
|
25
25
|
subject { Card['image card'] }
|
@@ -63,7 +63,7 @@ describe Card::Set::Type::Image do
|
|
63
63
|
|
64
64
|
describe 'view: act_expanded' do
|
65
65
|
it 'gets image url' do
|
66
|
-
act_summary = subject.format.render(:act_expanded, :
|
66
|
+
act_summary = subject.format.render(:act_expanded, act: subject.last_act)
|
67
67
|
current_url = subject.image.versions[:medium].url
|
68
68
|
expect(act_summary).to match /#{Regexp.quote current_url}/
|
69
69
|
end
|
@@ -72,7 +72,7 @@ describe Card::Set::Type::Image do
|
|
72
72
|
|
73
73
|
context "updated file card" do
|
74
74
|
before do
|
75
|
-
subject.update_attributes! :
|
75
|
+
subject.update_attributes! image: File.new( File.join FIXTURES_PATH, 'rails.gif' )
|
76
76
|
end
|
77
77
|
it "updates file" do
|
78
78
|
expect(subject.image.size).to eq 8533
|
@@ -102,7 +102,7 @@ describe Card::Set::Type::Image do
|
|
102
102
|
|
103
103
|
it "becomes a regular file when changed" do
|
104
104
|
Card::Auth.as_bot do
|
105
|
-
subject.update_attributes! :
|
105
|
+
subject.update_attributes! image: File.new( File.join FIXTURES_PATH, 'rails.gif' )
|
106
106
|
end
|
107
107
|
expect(subject.mod_file?).to be_falsey
|
108
108
|
expect(subject.image.url).to eq "/files/~#{subject.id}/#{subject.last_action_id}-original.gif"
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
describe Card::Set::Type::SearchType do
|
4
4
|
it "wraps search items with correct view class" do
|
5
|
-
Card.create :
|
5
|
+
Card.create type: 'Search', name: 'Asearch', content: %{{"type":"User"}}
|
6
6
|
c=render_content("{{Asearch|core;item:name}}")
|
7
7
|
expect(c).to match('search-result-item item-name')
|
8
8
|
expect(render_content("{{Asearch|core}}" ).scan('search-result-item item-closed').size).to eq(14)
|
@@ -11,14 +11,14 @@ describe Card::Set::Type::SearchType do
|
|
11
11
|
end
|
12
12
|
|
13
13
|
it "handles returning 'count'" do
|
14
|
-
expect(render_card(:core, :
|
14
|
+
expect(render_card(:core, type: 'Search', content: %{{ "type":"User", "return":"count"}})).to eq('14')
|
15
15
|
end
|
16
16
|
|
17
17
|
it "passes item args correctly" do
|
18
18
|
Card.create!(
|
19
|
-
:
|
20
|
-
:
|
21
|
-
:
|
19
|
+
name: 'Pointer2Searches',
|
20
|
+
type_id: Card::PointerID,
|
21
|
+
content: "[[Layout+*type+by name]]\n[[PlainText+*type+by name]]"
|
22
22
|
)
|
23
23
|
r = render_content "{{Pointer2Searches|core|closed|hide:menu}}"
|
24
24
|
expect(r.scan('"view":"link"').size).to eq(0)
|
@@ -27,24 +27,24 @@ describe Card::Set::Type::SearchType do
|
|
27
27
|
|
28
28
|
it 'handles type update from pointer' do
|
29
29
|
pointer_card = Card.create!(
|
30
|
-
:
|
31
|
-
:
|
30
|
+
name: "PointerToSearches",
|
31
|
+
type_id: Card::PointerID,
|
32
32
|
)
|
33
33
|
|
34
|
-
pointer_card.update_attributes! :
|
34
|
+
pointer_card.update_attributes! type_id: Card::SearchTypeID,content: %{{"type":"User"}}
|
35
35
|
expect(pointer_card.content).to eq(%{{"type":"User"}})
|
36
36
|
end
|
37
37
|
|
38
38
|
context 'references' do
|
39
39
|
before do
|
40
|
-
Card.create :
|
40
|
+
Card.create type: 'Search', name: 'search with references', content: '{"name":"Y"}'
|
41
41
|
end
|
42
42
|
subject do
|
43
43
|
Card['search with references']
|
44
44
|
end
|
45
45
|
|
46
46
|
it 'updates query if referee changed' do
|
47
|
-
Card['Y'].update_attributes! :
|
47
|
+
Card['Y'].update_attributes! name: 'YYY', update_referencers: true
|
48
48
|
expect(subject.content).to eq '{"name":"YYY"}'
|
49
49
|
end
|
50
50
|
|
@@ -9,7 +9,7 @@ describe Card::Set::Type::Signup do
|
|
9
9
|
|
10
10
|
context 'signup form form' do
|
11
11
|
before do
|
12
|
-
card = Card.new :
|
12
|
+
card = Card.new type_id: Card::SignupID
|
13
13
|
@form = card.format.render_new
|
14
14
|
end
|
15
15
|
|
@@ -27,11 +27,11 @@ describe Card::Set::Type::Signup do
|
|
27
27
|
ActionMailer::Base.deliveries = [] #needed?
|
28
28
|
|
29
29
|
Card::Auth.as_bot do
|
30
|
-
Card.create! :
|
30
|
+
Card.create! name: 'User+*type+*create', content: '[[Anyone]]'
|
31
31
|
end
|
32
32
|
|
33
33
|
Card::Auth.current_id = Card::AnonymousID
|
34
|
-
@signup = Card.create! :
|
34
|
+
@signup = Card.create! name: 'Big Bad Wolf', type_id: Card::SignupID,
|
35
35
|
'+*account'=>{'+*email'=>'wolf@wagn.org', '+*password'=>'wolf'}
|
36
36
|
|
37
37
|
@account = @signup.account
|
@@ -55,7 +55,7 @@ describe Card::Set::Type::Signup do
|
|
55
55
|
it 'should create an authenticable token' do
|
56
56
|
expect(@account.token).to eq(@token)
|
57
57
|
expect(@account.authenticate_by_token(@token)).to eq(@signup.id)
|
58
|
-
expect(@account.fetch(:
|
58
|
+
expect(@account.fetch(trait: :token)).not_to be_present
|
59
59
|
end
|
60
60
|
|
61
61
|
it 'should notify someone' do
|
@@ -92,7 +92,7 @@ describe Card::Set::Type::Signup do
|
|
92
92
|
# NOTE: by default Anonymous does not have permission to create User cards.
|
93
93
|
Mail::TestMailer.deliveries.clear
|
94
94
|
Card::Auth.current_id = Card::AnonymousID
|
95
|
-
@signup = Card.create! :
|
95
|
+
@signup = Card.create! name: 'Big Bad Wolf', type_id: Card::SignupID,
|
96
96
|
'+*account'=>{ '+*email'=>'wolf@wagn.org', '+*password'=>'wolf' }
|
97
97
|
@account = @signup.account
|
98
98
|
end
|
@@ -158,11 +158,11 @@ describe Card::Set::Type::Signup do
|
|
158
158
|
context 'a welcome email card exists' do
|
159
159
|
before do
|
160
160
|
Card::Auth.as_bot do
|
161
|
-
Card.create! :
|
162
|
-
'+*html_message'=>'Welcome {{_self|name}}'}, :
|
161
|
+
Card.create! name: 'welcome email', subcards: {'+*subject'=>'welcome',
|
162
|
+
'+*html_message'=>'Welcome {{_self|name}}'}, type_id: Card::EmailTemplateID
|
163
163
|
end
|
164
164
|
Mail::TestMailer.deliveries.clear
|
165
|
-
@signup = Card.create! :
|
165
|
+
@signup = Card.create! name: 'Big Bad Sheep', type_id: Card::SignupID,
|
166
166
|
'+*account'=>{'+*email'=>'sheep@wagn.org', '+*password'=>'sheep'}
|
167
167
|
|
168
168
|
end
|
@@ -180,7 +180,7 @@ describe Card::Set::Type::Signup do
|
|
180
180
|
before do
|
181
181
|
# NOTE: by default Anonymous does not have permission to create User cards.
|
182
182
|
Card::Auth.current_id = Card::WagnBotID
|
183
|
-
@signup = Card.create! :
|
183
|
+
@signup = Card.create! name: 'Big Bad Wolf', type_id: Card::SignupID, '+*account'=>{ '+*email'=>'wolf@wagn.org'}
|
184
184
|
@account = @signup.account
|
185
185
|
end
|
186
186
|
|
@@ -198,11 +198,11 @@ describe Card::Set::Type::Signup do
|
|
198
198
|
# describe '#signup_notifications' do
|
199
199
|
# before do
|
200
200
|
# Card::Auth.as_bot do
|
201
|
-
# Card.create! :
|
201
|
+
# Card.create! name: '*request+*to', content: 'signups@wagn.org'
|
202
202
|
# end
|
203
203
|
# @user_name = 'Big Bad Wolf'
|
204
204
|
# @user_email = 'wolf@wagn.org'
|
205
|
-
# @signup = Card.create! :
|
205
|
+
# @signup = Card.create! name: @user_name, type_id: Card::SignupID, '+*account'=>{
|
206
206
|
# '+*email'=>@user_email, '+*password'=>'wolf'}
|
207
207
|
# ActionMailer::Base.deliveries = []
|
208
208
|
# @signup.signup_notifications
|
@@ -6,7 +6,7 @@ describe Card::Set::Type::Toggle do
|
|
6
6
|
end
|
7
7
|
|
8
8
|
it "should have yes/no as processed content" do
|
9
|
-
expect(render_card(:core, :
|
10
|
-
expect(render_card(:closed_content, :
|
9
|
+
expect(render_card(:core, type: 'Toggle', content: "0")).to eq('no')
|
10
|
+
expect(render_card(:closed_content, type: 'Toggle', content: "1")).to eq('yes')
|
11
11
|
end
|
12
12
|
end
|
@@ -6,22 +6,22 @@ describe Card::Set::Type::Uri do
|
|
6
6
|
end
|
7
7
|
|
8
8
|
it "renders core view links" do
|
9
|
-
card = Card.create(:
|
9
|
+
card = Card.create(type: 'URI', name: 'A URI card', content: 'http://wagn.org/Home')
|
10
10
|
assert_view_select card.format.render('core'), 'a[class="external-link"][href="http://wagn.org/Home"]' do
|
11
|
-
assert_select 'span[class="card-title"]', {:
|
11
|
+
assert_select 'span[class="card-title"]', {text: 'A URI card' }
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
15
15
|
it "renders core view links with title arg" do
|
16
|
-
card = Card.create(:
|
17
|
-
assert_view_select card.format.render('core', :
|
18
|
-
assert_select 'span[class="card-title"]', {:
|
16
|
+
card = Card.create(type: 'URI', name: 'A URI card', content: 'http://wagn.org/Home')
|
17
|
+
assert_view_select card.format.render('core', title: 'My Title'), 'a[class="external-link"][href="http://wagn.org/Home"]' do
|
18
|
+
assert_select 'span[class="card-title"]', {text: 'My Title' }
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
22
|
it "renders title view in a plain formatter" do
|
23
23
|
card = Card['A']
|
24
|
-
card.format(:text).render('title', :
|
24
|
+
card.format(:text).render('title', title: 'My Title').should == 'My Title'
|
25
25
|
card.format(:text).render('title').should == 'A'
|
26
26
|
end
|
27
27
|
|
@@ -30,12 +30,12 @@ describe Card::Set::Type::Uri do
|
|
30
30
|
card.format(:text).render('url_link').should == '/A'
|
31
31
|
assert_view_select card.format.render('url_link'),
|
32
32
|
'a[class="internal-link"][href="/A"]',
|
33
|
-
{:
|
33
|
+
{text: '/A' }
|
34
34
|
end
|
35
35
|
|
36
36
|
it "renders a url_link view" do
|
37
|
-
card = Card.create(:
|
38
|
-
assert_view_select card.format.render('url_link'), 'a[class="external-link"]', {:
|
37
|
+
card = Card.create(type: 'URI', name: 'A URI card', content: 'http://wagn.org/Home')
|
38
|
+
assert_view_select card.format.render('url_link'), 'a[class="external-link"]', {text: 'http://wagn.org/Home'}
|
39
39
|
card.format(:text).render('url_link').should == 'http://wagn.org/Home'
|
40
40
|
end
|
41
41
|
end
|
@@ -1,13 +1,13 @@
|
|
1
1
|
format :html do
|
2
2
|
def glyphicon icon_type, extra_class=''
|
3
|
-
content_tag(:span, '', :
|
3
|
+
content_tag(:span, '', class: "glyphicon glyphicon-#{icon_type} #{extra_class}", 'aria-hidden'=>true)
|
4
4
|
end
|
5
5
|
|
6
6
|
def button_link link_text, target, html_args={}
|
7
7
|
html_args[:class] ||= ''
|
8
8
|
btn_type = html_args[:btn_type] || 'primary'
|
9
9
|
html_args[:class] += " btn btn-#{btn_type}"
|
10
|
-
smart_link link_text, target, html_args.merge(:
|
10
|
+
smart_link link_text, target, html_args.merge(type: 'button')
|
11
11
|
end
|
12
12
|
|
13
13
|
def dropdown_button name, opts={}
|
@@ -52,7 +52,7 @@ format :html do
|
|
52
52
|
end
|
53
53
|
|
54
54
|
def breadcrumb items
|
55
|
-
content_tag :ol, :
|
55
|
+
content_tag :ol, class: 'breadcrumb' do
|
56
56
|
items.map do |item|
|
57
57
|
content_tag :li, item
|
58
58
|
end
|
@@ -60,7 +60,7 @@ format :html do
|
|
60
60
|
end
|
61
61
|
|
62
62
|
# Options
|
63
|
-
# :
|
63
|
+
# header: { content: String, brand: ( String | {name: , href: } ) }
|
64
64
|
def navbar id, opts={}
|
65
65
|
nav_opts = opts[:navbar_opts] || {}
|
66
66
|
nav_opts[:class] ||= (opts[:class] || '')
|
@@ -73,9 +73,9 @@ format :html do
|
|
73
73
|
end
|
74
74
|
wrap_with :nav, nav_opts do
|
75
75
|
[
|
76
|
-
navbar_header(id, header_opts.delete(:content), header_opts.reverse_merge(:
|
77
|
-
(content_tag(:div, opts[:collapsed_content].html_safe, :
|
78
|
-
content_tag(:div, output(yield).html_safe, :
|
76
|
+
navbar_header(id, header_opts.delete(:content), header_opts.reverse_merge(toggle: opts[:toggle])),
|
77
|
+
(content_tag(:div, opts[:collapsed_content].html_safe, class: 'container-fluid') if opts[:collapsed_content]),
|
78
|
+
content_tag(:div, output(yield).html_safe, class: "collapse navbar-collapse", id: "navbar-collapse-#{id}"),
|
79
79
|
]
|
80
80
|
end
|
81
81
|
end
|
@@ -89,7 +89,7 @@ format :html do
|
|
89
89
|
"<a class='navbar-brand' href='#{link}#'>#{opts[:brand][:name]}</a>"
|
90
90
|
end
|
91
91
|
end
|
92
|
-
wrap_with :div, :
|
92
|
+
wrap_with :div, class: 'navbar-header' do
|
93
93
|
[
|
94
94
|
(navbar_toggle(id, opts[:toggle]) unless opts[:toggle] == :hide),
|
95
95
|
brand,
|
@@ -116,10 +116,10 @@ format :html do
|
|
116
116
|
items = yield
|
117
117
|
args[:situation] ||= 'primary'
|
118
118
|
|
119
|
-
wrap_with :div, :
|
119
|
+
wrap_with :div, class: 'btn-group' do
|
120
120
|
[
|
121
121
|
button,
|
122
|
-
button_tag(:
|
122
|
+
button_tag(situation: args[:situation], class: 'dropdown-toggle', 'data-toggle'=>'dropdown', 'aria-haspopup'=>'true', 'aria-expanded'=>'false') do
|
123
123
|
%{
|
124
124
|
<span class="caret"></span>
|
125
125
|
<span class="sr-only">Toggle Dropdown</span>
|
@@ -2,10 +2,10 @@ format :html do
|
|
2
2
|
|
3
3
|
def frame args={}, &block
|
4
4
|
args.reverse_merge!(
|
5
|
-
:
|
6
|
-
:
|
7
|
-
:
|
8
|
-
:
|
5
|
+
panel_class: 'panel panel-default',
|
6
|
+
header_class: 'panel-heading',
|
7
|
+
title_class: 'panel-title',
|
8
|
+
body_class: 'panel-body'
|
9
9
|
)
|
10
10
|
super args
|
11
11
|
end
|
@@ -4,8 +4,8 @@ describe Card::Action do
|
|
4
4
|
describe '#delete_old_actions' do
|
5
5
|
it 'puts all changes on one action' do
|
6
6
|
a = Card['A']
|
7
|
-
a.update_attributes!(:
|
8
|
-
a.update_attributes!(:
|
7
|
+
a.update_attributes!(name: "New A")
|
8
|
+
a.update_attributes!(content: "New content")
|
9
9
|
a.delete_old_actions
|
10
10
|
expect(a.actions.count).to eq(1)
|
11
11
|
expect(a.actions(true).last.new_values[:name]).to eq("New A")
|
data/spec/lib/card/cache_spec.rb
CHANGED
@@ -4,7 +4,7 @@ describe Card::Cache do
|
|
4
4
|
describe "with nil store" do
|
5
5
|
before do
|
6
6
|
expect(Card::Cache).to receive(:generate_cache_id).exactly(2).times.and_return("cache_id")
|
7
|
-
@cache = Card::Cache.new :
|
7
|
+
@cache = Card::Cache.new prefix: "prefix"
|
8
8
|
end
|
9
9
|
|
10
10
|
describe "#basic operations" do
|
@@ -22,7 +22,7 @@ describe Card::Cache do
|
|
22
22
|
before :each do
|
23
23
|
@store = ActiveSupport::Cache::MemoryStore.new
|
24
24
|
expect(Card::Cache).to receive(:generate_cache_id).and_return("cache_id")
|
25
|
-
@cache = Card::Cache.new :store
|
25
|
+
@cache = Card::Cache.new store: @store, prefix: "prefix"
|
26
26
|
end
|
27
27
|
|
28
28
|
it "#read" do
|
@@ -58,7 +58,7 @@ describe Card::Cache do
|
|
58
58
|
it "#reset" do
|
59
59
|
expect(Card::Cache).to receive(:generate_cache_id).and_return("cache_id1")
|
60
60
|
@store = ActiveSupport::Cache::MemoryStore.new
|
61
|
-
@cache = Card::Cache.new :store
|
61
|
+
@cache = Card::Cache.new store: @store, prefix: "prefix"
|
62
62
|
expect(@cache.prefix).to eq("prefix/cache_id1/")
|
63
63
|
@cache.write("foo","bar")
|
64
64
|
expect(@cache.read("foo")).to eq("bar")
|
@@ -70,7 +70,7 @@ describe Card::Cache do
|
|
70
70
|
expect(@cache.store.read("prefix/cache_id")).to eq("cache_id2")
|
71
71
|
expect(@cache.read("foo")).to be_nil
|
72
72
|
|
73
|
-
cache2 = Card::Cache.new :store
|
73
|
+
cache2 = Card::Cache.new store: @store, prefix: "prefix"
|
74
74
|
expect(cache2.prefix).to eq("prefix/cache_id2/")
|
75
75
|
end
|
76
76
|
|
@@ -92,13 +92,13 @@ describe Card::Cache do
|
|
92
92
|
#FileUtils.rm_r(files_to_remove)
|
93
93
|
|
94
94
|
expect(Card::Cache).to receive(:generate_cache_id).exactly(2).times.and_return("cache_id1")
|
95
|
-
@cache = Card::Cache.new :store
|
95
|
+
@cache = Card::Cache.new store: @store, prefix: "prefix"
|
96
96
|
end
|
97
97
|
|
98
98
|
describe "#basic operations with special symbols" do
|
99
99
|
it "should work" do
|
100
100
|
@cache.write('%\\/*:?"<>|', "foo")
|
101
|
-
cache2 = Card::Cache.new :store
|
101
|
+
cache2 = Card::Cache.new store: @store, prefix: "prefix"
|
102
102
|
expect(cache2.read('%\\/*:?"<>|')).to eq("foo")
|
103
103
|
@cache.reset
|
104
104
|
end
|
@@ -108,7 +108,7 @@ describe Card::Cache do
|
|
108
108
|
it "should work" do
|
109
109
|
@cache.write('(汉语漢語 Hànyǔ; 华语華語 Huáyǔ; 中文 Zhōngwén', "foo")
|
110
110
|
@cache.write('русский', "foo")
|
111
|
-
cache3 = Card::Cache.new :store
|
111
|
+
cache3 = Card::Cache.new store: @store, prefix: "prefix"
|
112
112
|
expect(cache3.read('(汉语漢語 Hànyǔ; 华语華語 Huáyǔ; 中文 Zhōngwén')).to eq("foo")
|
113
113
|
expect(cache3.read('русский')).to eq("foo")
|
114
114
|
@cache.reset
|
@@ -2,51 +2,47 @@
|
|
2
2
|
require 'card/content'
|
3
3
|
|
4
4
|
EXAMPLES = {
|
5
|
-
:
|
6
|
-
:
|
7
|
-
[
|
5
|
+
nests: {
|
6
|
+
content: [
|
8
7
|
"Some Literals: \\[{I'm not| a link]}, and ",
|
9
8
|
"\\{{This Card|Is not Included}}",
|
10
9
|
", but ",
|
11
10
|
"{{this is}}",
|
12
11
|
", and some tail"
|
13
12
|
].join(''),
|
14
|
-
:
|
15
|
-
[
|
13
|
+
rendered: [
|
16
14
|
"Some Literals: \\[{I'm not| a link]}, and ",
|
17
15
|
"<span>{</span>{This Card|Is not Included}}",
|
18
16
|
", but ",
|
19
|
-
{:
|
17
|
+
{options: {inc_name: "this is",inc_syntax: "this is"}},
|
20
18
|
", and some tail"
|
21
19
|
],
|
22
|
-
:
|
20
|
+
classes: [String, :EscapedLiteral, String, :Include, String ]
|
23
21
|
},
|
24
22
|
|
25
|
-
:
|
26
|
-
:
|
23
|
+
links_and_nests: {
|
24
|
+
content: %(Some Links and includes: [[the card|the text]], and {{This Card|Is Included}}{{this too}}
|
27
25
|
and [[http://external.wagn.org/path|link text]]{{Included|open}}),
|
28
|
-
:
|
29
|
-
[
|
26
|
+
rendered: [
|
30
27
|
"Some Links and includes: ",
|
31
28
|
"<a class=\"wanted-card\" href=\"/the_card?card%5Bname%5D=the+card\">the text</a>",
|
32
29
|
", and ",
|
33
|
-
{ :
|
34
|
-
{ :
|
30
|
+
{ options: { view: "Is Included", inc_name: "This Card", inc_syntax: "This Card|Is Included"}},
|
31
|
+
{ options: { inc_name: "this too", inc_syntax: "this too"}},
|
35
32
|
"\n and ",
|
36
33
|
"<a target=\"_blank\" class=\"external-link\" href=\"http://external.wagn.org/path\">link text</a>",
|
37
|
-
{ :
|
34
|
+
{ options: { view: "open", inc_name: "Included", inc_syntax: "Included|open" }}
|
38
35
|
],
|
39
|
-
:
|
36
|
+
classes: [String, :Link, String, :Include, :Include, String, :Link, :Include ]
|
40
37
|
},
|
41
38
|
|
42
|
-
:
|
43
|
-
:
|
39
|
+
uris_and_links: {
|
40
|
+
content: %(Some URIs and Links: http://a.url.com/
|
44
41
|
More urls: wagn.com/a/path/to.html
|
45
42
|
http://localhost:2020/path?cgi=foo&bar=baz [[http://brain.org/Home|extra]]
|
46
43
|
[ http://gerry.wagn.com/a/path ]
|
47
44
|
{ https://brain.org/more?args }),
|
48
|
-
:
|
49
|
-
[
|
45
|
+
rendered: [
|
50
46
|
"Some URIs and Links: ", '<a target="_blank" class="external-link" href="http://a.url.com/">http://a.url.com/</a>',
|
51
47
|
"\n More urls: ",
|
52
48
|
"<a target=\"_blank\" class=\"external-link\" href=\"http://wagn.com/a/path/to.html\">wagn.com/a/path/to.html</a>",
|
@@ -60,8 +56,7 @@ EXAMPLES = {
|
|
60
56
|
"<a target=\"_blank\" class=\"external-link\" href=\"https://brain.org/more?args\">https://brain.org/more?args</a>",
|
61
57
|
" }"
|
62
58
|
],
|
63
|
-
:
|
64
|
-
[
|
59
|
+
text_rendered: [
|
65
60
|
"Some URIs and Links: ", 'http://a.url.com/',
|
66
61
|
"\n More urls: ",
|
67
62
|
"wagn.com/a/path/to.html[http://wagn.com/a/path/to.html]",
|
@@ -75,17 +70,16 @@ EXAMPLES = {
|
|
75
70
|
"https://brain.org/more?args",
|
76
71
|
" }"
|
77
72
|
],
|
78
|
-
:
|
73
|
+
classes: [String, :URI, String, :HostURI, String, :URI, String, :Link, String, :URI, String, :URI, String ]
|
79
74
|
},
|
80
75
|
|
81
|
-
:
|
82
|
-
:
|
76
|
+
uris_and_links_2: {
|
77
|
+
content: %(Some URIs and Links: http://a.url.com
|
83
78
|
More urls: wagn.com/a/path/to.html
|
84
79
|
[ http://gerry.wagn.com/a/path ]
|
85
80
|
{ https://brain.org/more?args }
|
86
81
|
http://localhost:2020/path?cgi=foo&bar=baz [[http://brain.org/Home|extra]]),
|
87
|
-
:
|
88
|
-
[
|
82
|
+
rendered: [
|
89
83
|
"Some URIs and Links: ","<a target=\"_blank\" class=\"external-link\" href=\"http://a.url.com\">http://a.url.com</a>",
|
90
84
|
"\n More urls: ",
|
91
85
|
"<a target=\"_blank\" class=\"external-link\" href=\"http://wagn.com/a/path/to.html\">wagn.com/a/path/to.html</a>",
|
@@ -98,21 +92,21 @@ EXAMPLES = {
|
|
98
92
|
" ",
|
99
93
|
"<a target=\"_blank\" class=\"external-link\" href=\"http://brain.org/Home\">extra</a>"
|
100
94
|
],
|
101
|
-
:
|
95
|
+
classes: [String, :URI, String, :HostURI, String, :URI, String, :URI, String, :URI, String, :Link ]
|
102
96
|
},
|
103
97
|
|
104
|
-
:
|
105
|
-
:
|
106
|
-
:
|
98
|
+
no_chunks: {
|
99
|
+
content: "No chunks",
|
100
|
+
rendered: "No chunks"
|
107
101
|
},
|
108
102
|
|
109
|
-
:
|
110
|
-
:
|
111
|
-
:
|
103
|
+
single_nest: {
|
104
|
+
content: "{{one inclusion|size;large}}",
|
105
|
+
classes: [:Include]
|
112
106
|
},
|
113
107
|
|
114
|
-
:
|
115
|
-
:
|
108
|
+
css: {
|
109
|
+
content: %~
|
116
110
|
/* body text */
|
117
111
|
body {
|
118
112
|
color: #444444;
|
@@ -171,7 +165,7 @@ describe Card::Content do
|
|
171
165
|
@card = card
|
172
166
|
|
173
167
|
# non-nil valued opts only ...
|
174
|
-
@render_block = Proc.new do |opts| {:
|
168
|
+
@render_block = Proc.new do |opts| {options: opts.inject({}) {|i,v| !v[1].nil? && i[v[0]]=v[1]; i } } end
|
175
169
|
end
|
176
170
|
|
177
171
|
let(:example) { EXAMPLES[@example] }
|
@@ -254,7 +248,7 @@ describe Card::Content do
|
|
254
248
|
it "renders links correctly for text formatters" do
|
255
249
|
@example = :uris_and_links
|
256
250
|
card2 = Card[@card.id]
|
257
|
-
format = card2.format :
|
251
|
+
format = card2.format format: :text
|
258
252
|
cobj = Card::Content.new content, format
|
259
253
|
cobj.process_content_object &@render_block
|
260
254
|
expect(cobj.as_json.to_json).to eq(text_rendered.to_json)
|