brain_damage 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.byebug_history +32 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +4 -0
- data/CODE_OF_CONDUCT.md +13 -0
- data/Gemfile +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +41 -0
- data/Rakefile +6 -0
- data/app/assets/javascripts/ajax_delete.js.coffee +14 -0
- data/app/assets/javascripts/ajax_form.js.coffee +94 -0
- data/app/assets/javascripts/autocomplete-input.js.coffee +43 -0
- data/app/assets/javascripts/autocomplete-list.js.coffee +41 -0
- data/app/assets/javascripts/autocomplete-simple-select.js.coffee +39 -0
- data/app/assets/javascripts/autocomplete.js.coffee +17 -0
- data/app/assets/javascripts/brain_damage.js +3 -0
- data/app/assets/javascripts/datepicker.js.coffee +49 -0
- data/app/assets/javascripts/document_validity_input.js.coffee +16 -0
- data/app/assets/javascripts/expandable-list.js.coffee +16 -0
- data/app/assets/javascripts/form_initializer.js.coffee +8 -0
- data/app/assets/javascripts/helpers/conditionally-visible-field.js.coffee +13 -0
- data/app/assets/javascripts/hideable_content.js.coffee +25 -0
- data/app/assets/javascripts/inline_edit.js.coffee +58 -0
- data/app/assets/javascripts/label_file_field.js.coffee +22 -0
- data/app/assets/javascripts/label_file_field_ui_initializer.js.coffee +10 -0
- data/app/assets/javascripts/list_item.js.coffee +10 -0
- data/app/assets/javascripts/nested_form_controls.js.coffee +84 -0
- data/app/assets/javascripts/polymorphic_hibrid_input.js.coffee +14 -0
- data/app/assets/javascripts/polymorphic_select_input.js.coffee +28 -0
- data/app/assets/javascripts/rails.validations.actionView.js.coffee +18 -0
- data/app/assets/javascripts/scroll_loader.js.coffee +28 -0
- data/app/assets/javascripts/searchable_contents.js.coffee +62 -0
- data/app/assets/javascripts/selectable-list.js.coffee +92 -0
- data/app/assets/javascripts/sensible_to_ajax_view.js.coffee +60 -0
- data/app/assets/javascripts/single_page_manager.js.coffee +60 -0
- data/app/assets/javascripts/stylesheets/_custom-best-in-place.css.sass +12 -0
- data/app/assets/javascripts/stylesheets/_top-search.css.sass +0 -0
- data/app/assets/javascripts/stylesheets/application.css +0 -0
- data/app/assets/javascripts/trailing_form.js.coffee +16 -0
- data/app/assets/javascripts/ui_initializer.js.coffee +23 -0
- data/app/assets/javascripts/underscore.min.js +6 -0
- data/app/assets/stylesheets/brain_damage.css.sass +214 -0
- data/app/views/brain_damage/_empty.html.haml +1 -0
- data/app/views/brain_damage/empty.html.haml +1 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/brain_damage.gemspec +36 -0
- data/lib/brain_damage.rb +16 -0
- data/lib/brain_damage/brain_damage_helper.rb +75 -0
- data/lib/brain_damage/version.rb +3 -0
- data/lib/generators/brain_damage/full/full_generator.rb +37 -0
- data/lib/generators/brain_damage/lib/controller/controller_generator.rb +45 -0
- data/lib/generators/brain_damage/lib/controller/templates/controller.rb +9 -0
- data/lib/generators/brain_damage/lib/controller/templates/private_methods/get_partial_locals.rb +3 -0
- data/lib/generators/brain_damage/lib/controller/templates/private_methods/set_singular_table_name.rb +3 -0
- data/lib/generators/brain_damage/lib/controller/templates/private_methods/singular_table_name_params.rb +3 -0
- data/lib/generators/brain_damage/lib/controller/templates/public_methods/create.rb +21 -0
- data/lib/generators/brain_damage/lib/controller/templates/public_methods/destroy.rb +14 -0
- data/lib/generators/brain_damage/lib/controller/templates/public_methods/edit.rb +2 -0
- data/lib/generators/brain_damage/lib/controller/templates/public_methods/index.rb +3 -0
- data/lib/generators/brain_damage/lib/controller/templates/public_methods/new.rb +3 -0
- data/lib/generators/brain_damage/lib/controller/templates/public_methods/show.rb +2 -0
- data/lib/generators/brain_damage/lib/controller/templates/public_methods/update.rb +25 -0
- data/lib/generators/brain_damage/lib/field.rb +163 -0
- data/lib/generators/brain_damage/lib/field_white_list.rb +21 -0
- data/lib/generators/brain_damage/lib/includes.rb +12 -0
- data/lib/generators/brain_damage/lib/migration.rb +76 -0
- data/lib/generators/brain_damage/lib/model/model_generator.rb +115 -0
- data/lib/generators/brain_damage/lib/model/templates/model.rb +12 -0
- data/lib/generators/brain_damage/lib/parametizer.rb +19 -0
- data/lib/generators/brain_damage/lib/relation/base.rb +50 -0
- data/lib/generators/brain_damage/lib/relation/belongs_to.rb +29 -0
- data/lib/generators/brain_damage/lib/relation/has_and_belongs_to_many.rb +22 -0
- data/lib/generators/brain_damage/lib/relation/has_many.rb +35 -0
- data/lib/generators/brain_damage/lib/relation/has_one.rb +18 -0
- data/lib/generators/brain_damage/lib/resource.rb +150 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/block.rb +33 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/class_definition.rb +19 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/code_line.rb +16 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/global_context.rb +8 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/line_classifier.rb +107 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/method.rb +23 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/parser.rb +114 -0
- data/lib/generators/brain_damage/lib/ruby_simple_parser/ruby_simple_parser.rb +11 -0
- data/lib/generators/brain_damage/lib/templateable/base.rb +53 -0
- data/lib/generators/brain_damage/lib/templateable/class_templateable.rb +88 -0
- data/lib/generators/brain_damage/lib/templateable/field_templateable.rb +42 -0
- data/lib/generators/brain_damage/lib/templateable/view_templateable.rb +23 -0
- data/lib/generators/brain_damage/lib/views/displays/base.rb +14 -0
- data/lib/generators/brain_damage/lib/views/displays/bright_text.rb +14 -0
- data/lib/generators/brain_damage/lib/views/displays/collection_list.rb +22 -0
- data/lib/generators/brain_damage/lib/views/displays/default.rb +11 -0
- data/lib/generators/brain_damage/lib/views/displays/foreign_single_page_manager.rb +46 -0
- data/lib/generators/brain_damage/lib/views/displays/hidden.rb +26 -0
- data/lib/generators/brain_damage/lib/views/displays/inline_editable.rb +27 -0
- data/lib/generators/brain_damage/lib/views/displays/link_to.rb +42 -0
- data/lib/generators/brain_damage/lib/views/displays/linked_collection_list.rb +26 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/bright_text.html.haml +7 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/collection_list.html.haml +31 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/custom.html.haml +5 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/default.html.haml +4 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/foreign_single_page_manager.html.haml +1 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/inline_editable.html.haml +8 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/link_to.html.haml +9 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/linked_collection_list.html.haml +31 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/text.html.haml +4 -0
- data/lib/generators/brain_damage/lib/views/displays/templates/yes_or_no.html.haml +4 -0
- data/lib/generators/brain_damage/lib/views/displays/text.rb +43 -0
- data/lib/generators/brain_damage/lib/views/factory.rb +29 -0
- data/lib/generators/brain_damage/lib/views/inputs/autocompletable.rb +26 -0
- data/lib/generators/brain_damage/lib/views/inputs/autocompletable_multiple_selection.rb +25 -0
- data/lib/generators/brain_damage/lib/views/inputs/autocompletable_simple_selection.rb +21 -0
- data/lib/generators/brain_damage/lib/views/inputs/base.rb +23 -0
- data/lib/generators/brain_damage/lib/views/inputs/checkbox.rb +14 -0
- data/lib/generators/brain_damage/lib/views/inputs/collection_checkboxes.rb +10 -0
- data/lib/generators/brain_damage/lib/views/inputs/collection_select.rb +11 -0
- data/lib/generators/brain_damage/lib/views/inputs/default.rb +11 -0
- data/lib/generators/brain_damage/lib/views/inputs/hierarchy_picker.rb +11 -0
- data/lib/generators/brain_damage/lib/views/inputs/nested_form.rb +34 -0
- data/lib/generators/brain_damage/lib/views/inputs/nested_on_hideable.rb +22 -0
- data/lib/generators/brain_damage/lib/views/inputs/polymorphic_hybrid.rb +44 -0
- data/lib/generators/brain_damage/lib/views/inputs/polymorphic_select.rb +33 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/autocompletable_multiple_selection.html.haml +20 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/autocompletable_simple_selection.html.haml +25 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/checkbox.html.haml +3 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/collection_checkboxes.html.haml +6 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/collection_select.html.haml +9 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/custom.html.haml +5 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/default.html.haml +1 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/file.html.haml +5 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/hierarchy_picker.html.haml +19 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/nested_form.html.haml +2 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/polymorphic_hybrid.html.haml +20 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/polymorphic_select.html.haml +22 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/simple_select.html.haml +1 -0
- data/lib/generators/brain_damage/lib/views/inputs/templates/text.html.haml +1 -0
- data/lib/generators/brain_damage/lib/views/labels/base.rb +26 -0
- data/lib/generators/brain_damage/lib/views/labels/default.rb +15 -0
- data/lib/generators/brain_damage/lib/views/labels/templates/default.html.haml +6 -0
- data/lib/generators/brain_damage/lib/views/modules/inline_editable.rb +16 -0
- data/lib/generators/brain_damage/lib/views/schemas/autocompletable.rb +36 -0
- data/lib/generators/brain_damage/lib/views/schemas/autocompletable/base.rb +26 -0
- data/lib/generators/brain_damage/lib/views/schemas/autocompletable/templates/_links.html.haml +8 -0
- data/lib/generators/brain_damage/lib/views/schemas/autocompletable/templates/_multiple_selection.html.haml +6 -0
- data/lib/generators/brain_damage/lib/views/schemas/autocompletable/templates/_simple_selection.html.haml +6 -0
- data/lib/generators/brain_damage/lib/views/schemas/base.rb +97 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/base.rb +86 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/form.rb +24 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/_fields.html.haml +10 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/_form.html.haml +15 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/index.html.haml +16 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/list/_index.html.haml +4 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/list/_item.html.haml +5 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/new.html.haml +3 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/show.html.haml +9 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/table/_header.html.haml +5 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/table/_index.html.haml +8 -0
- data/lib/generators/brain_damage/lib/views/schemas/base/templates/table/_item.html.haml +5 -0
- data/lib/generators/brain_damage/lib/views/schemas/custom.rb +36 -0
- data/lib/generators/brain_damage/lib/views/schemas/factory.rb +13 -0
- data/lib/generators/brain_damage/lib/views/schemas/inline_editable.rb +27 -0
- data/lib/generators/brain_damage/lib/views/schemas/inline_editable/base.rb +20 -0
- data/lib/generators/brain_damage/lib/views/schemas/inline_editable/field.rb +47 -0
- data/lib/generators/brain_damage/lib/views/schemas/inline_editable/inline_edit.rb +10 -0
- data/lib/generators/brain_damage/lib/views/schemas/inline_editable/templates/inline_edit/_field.html.haml +33 -0
- data/lib/generators/brain_damage/lib/views/schemas/inline_editable/templates/inline_edit/_inline_edit.html.haml +0 -0
- data/lib/generators/brain_damage/lib/views/schemas/nested_fields.rb +14 -0
- data/lib/generators/brain_damage/lib/views/schemas/nested_fields/base.rb +20 -0
- data/lib/generators/brain_damage/lib/views/schemas/nested_fields/templates/_nested.fields.html.haml +33 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager.rb +22 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/base.rb +40 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/list_item.rb +16 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/_single_page_manager.html.haml +20 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/index.html.haml +1 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/list/_index.form.html.haml +20 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/list/_index.html.haml +27 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/list/_item.display.html.haml +5 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/list/_item.form.html.haml +21 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/list/_item.html.haml +33 -0
- data/lib/generators/brain_damage/lib/views/schemas/single_page_manager/templates/list/_simple.html.haml +4 -0
- data/lib/generators/brain_damage/lib/views/views_generator.rb +37 -0
- data/lib/generators/brain_damage/resource/USAGE +8 -0
- data/lib/generators/brain_damage/resource/helpers.rb +117 -0
- data/lib/generators/brain_damage/resource/monkeys/string.rb +17 -0
- data/lib/generators/brain_damage/resource/resource_generator.rb +139 -0
- data/lib/generators/brain_damage/resource/templates/controller.rb +40 -0
- data/lib/generators/brain_damage/resource/templates/inputs/_simple_select.html.haml +1 -0
- data/lib/generators/brain_damage/resource/templates/views/common/_fields.html.haml +11 -0
- data/lib/generators/brain_damage/resource/templates/views/common/show.html.haml +11 -0
- data/lib/generators/brain_damage/resource/templates/views/full_entity/_form.html.haml +13 -0
- data/lib/generators/brain_damage/resource/templates/views/full_entity/_index.body.html.haml +4 -0
- data/lib/generators/brain_damage/resource/templates/views/full_entity/_index.html.haml +5 -0
- data/lib/generators/brain_damage/resource/templates/views/full_entity/_table.header.html.haml +7 -0
- data/lib/generators/brain_damage/resource/templates/views/full_entity/_table.item.html.haml +8 -0
- data/lib/generators/brain_damage/resource/templates/views/full_entity/index.html.haml +16 -0
- data/lib/generators/brain_damage/resource/templates/views/full_entity/new.html.haml +3 -0
- data/lib/generators/brain_damage/resource/templates/views/scaffold/_menu.entry.html.haml +1 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_form.html.haml +15 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_index.body.html.haml +4 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_single_page_manager.html.haml +17 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_table.form.html.haml +21 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_table.header.html.haml +12 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_table.html.haml +27 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_table.item.form.html.haml +21 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_table.item.html.haml +32 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/_table.item.show.html.haml +13 -0
- data/lib/generators/brain_damage/resource/templates/views/single_page_manager/index.html.haml +4 -0
- data/lib/generators/brain_damage/resource/templates/views/special/_fields.show.inline.html.haml +10 -0
- data/lib/generators/brain_damage/resource/templates/views/special/_inline_edit.html.haml +2 -0
- data/lib/generators/brain_damage/resource/templates/views/special/_inner.show.inline.html.haml +20 -0
- data/lib/generators/brain_damage/resource/templates/views/special/_nested.fields.html.haml +33 -0
- data/lib/generators/brain_damage/resource/templates/views/special/_show.inline.html.haml +10 -0
- data/lib/generators/brain_damage/resource/templates/views/special/_trailing_form.show.inline.html.haml +12 -0
- metadata +328 -0
@@ -0,0 +1,60 @@
|
|
1
|
+
@BrainDamage ?= {}
|
2
|
+
|
3
|
+
class @BrainDamage.SensibleToAjaxView
|
4
|
+
constructor: (wrapper_selector) ->
|
5
|
+
@wrapper = $ wrapper_selector
|
6
|
+
@wrapper.on 'ajax:success', @replaceSensible
|
7
|
+
|
8
|
+
@displaySelector = '.best_in_place, .sensible-to-ajax-display'
|
9
|
+
|
10
|
+
$: (selector) ->
|
11
|
+
$ selector, @wrapper
|
12
|
+
|
13
|
+
replaceSensible: (response, responseText) =>
|
14
|
+
# try
|
15
|
+
@newHtmls = $ JSON.parse(responseText).html
|
16
|
+
|
17
|
+
# find changes
|
18
|
+
@changed = $()
|
19
|
+
@removed = $()
|
20
|
+
|
21
|
+
@$('.sensible-to-ajax').each @checkForReplacement
|
22
|
+
|
23
|
+
@changed.show()
|
24
|
+
@changed.transition
|
25
|
+
animation: 'shake'
|
26
|
+
duration: '1s'
|
27
|
+
interval: 200
|
28
|
+
|
29
|
+
@removed.fadeOut
|
30
|
+
complete: (e) =>
|
31
|
+
@removed.html ''
|
32
|
+
|
33
|
+
checkForReplacement: (i, _e) =>
|
34
|
+
withCurrentValue = $ _e
|
35
|
+
fieldName = withCurrentValue.attr 'data-ajax-sensibility-field'
|
36
|
+
|
37
|
+
cl = (fieldName == 'secondary_instrutec_paid_value')
|
38
|
+
|
39
|
+
unless fieldName
|
40
|
+
return true
|
41
|
+
|
42
|
+
withNewValue = $ "[data-ajax-sensibility-field=#{fieldName}]", @newHtmls
|
43
|
+
|
44
|
+
newDisplay = $ @displaySelector, withNewValue
|
45
|
+
currentDisplay = $ @displaySelector, withCurrentValue
|
46
|
+
|
47
|
+
if cl
|
48
|
+
console.log fieldName, withCurrentValue, newDisplay, currentDisplay
|
49
|
+
|
50
|
+
if newDisplay.length == 0 and currentDisplay.length > 0
|
51
|
+
@removed = @removed.add withCurrentValue
|
52
|
+
|
53
|
+
else if newDisplay.length > 0 and currentDisplay.length == 0
|
54
|
+
withCurrentValue.html withNewValue.html()
|
55
|
+
@changed = @changed.add withCurrentValue
|
56
|
+
|
57
|
+
else if newDisplay.html() != currentDisplay.html()
|
58
|
+
withCurrentValue.after withNewValue
|
59
|
+
withCurrentValue.remove()
|
60
|
+
@changed = @changed.add withNewValue
|
@@ -0,0 +1,60 @@
|
|
1
|
+
@BrainDamage ?= {}
|
2
|
+
|
3
|
+
class @BrainDamage.SinglePageManager
|
4
|
+
constructor: (wrapper_selector) ->
|
5
|
+
@wrapper = $ wrapper_selector
|
6
|
+
|
7
|
+
if @wrapper.is '.brain-damage-list'
|
8
|
+
@list = @wrapper
|
9
|
+
|
10
|
+
else
|
11
|
+
@list = $ '.brain-damage-list', @wrapper
|
12
|
+
|
13
|
+
@forms_wrappers = $ '.brain-damage-add-form-wrapper', @wrapper
|
14
|
+
|
15
|
+
$('.brain-damage-list-item-wrapper', @list).each @iterate_install
|
16
|
+
|
17
|
+
@forms_wrappers.each (i, _form_wrapper) =>
|
18
|
+
form_wrapper = $ _form_wrapper
|
19
|
+
form = $ 'form', form_wrapper
|
20
|
+
|
21
|
+
callbacks = BrainDamage.SinglePageManager.registered_ajax_forms_callbacks form
|
22
|
+
callbacks.complete = @install_list_item
|
23
|
+
|
24
|
+
if 'leading_form' == form.attr 'data-single-page-manager-form-context'
|
25
|
+
options =
|
26
|
+
target: form.parents 'tbody'
|
27
|
+
strategy: 'after'
|
28
|
+
callbacks: callbacks
|
29
|
+
|
30
|
+
else
|
31
|
+
options =
|
32
|
+
target: $ '.brain-damage-list-header', @list
|
33
|
+
strategy: 'after'
|
34
|
+
callbacks: callbacks
|
35
|
+
|
36
|
+
BrainDamage.SinglePageManager.register_form form, new BrainDamage.AjaxForm(form_wrapper, options)
|
37
|
+
|
38
|
+
iterate_install: (i, _item_wrapper) =>
|
39
|
+
@install_list_item _item_wrapper
|
40
|
+
|
41
|
+
install_list_item: (item_wrapper) =>
|
42
|
+
new BrainDamage.ListItem item_wrapper
|
43
|
+
|
44
|
+
@register_form: (form, ajax_form) ->
|
45
|
+
BrainDamage.SinglePageManager.forms ?= {}
|
46
|
+
BrainDamage.SinglePageManager.forms[form.attr('id')] = ajax_form
|
47
|
+
|
48
|
+
@ajax_form_for: (form) ->
|
49
|
+
BrainDamage.SinglePageManager.forms[form.attr('id')]
|
50
|
+
|
51
|
+
@register_ajax_form_callback: (form, name, f) ->
|
52
|
+
BrainDamage.SinglePageManager.ajax_forms_callbacks ?= {}
|
53
|
+
BrainDamage.SinglePageManager.ajax_forms_callbacks[form.attr 'id'] ?= {}
|
54
|
+
BrainDamage.SinglePageManager.ajax_forms_callbacks[form.attr 'id'][name] = f
|
55
|
+
|
56
|
+
@registered_ajax_forms_callbacks: (form) ->
|
57
|
+
return {} unless BrainDamage.SinglePageManager.ajax_forms_callbacks and
|
58
|
+
BrainDamage.SinglePageManager.ajax_forms_callbacks[form.attr 'id']
|
59
|
+
|
60
|
+
$.extend {}, BrainDamage.SinglePageManager.ajax_forms_callbacks[form.attr 'id']
|
File without changes
|
File without changes
|
@@ -0,0 +1,16 @@
|
|
1
|
+
@BrainDamage ?= {}
|
2
|
+
|
3
|
+
class @BrainDamage.TrailingForm
|
4
|
+
constructor: (wrapper_selector, partial_to_show, hideable_args = {}) ->
|
5
|
+
hideable_args.wrapper_selector = wrapper_selector unless hideable_args.wrapper_selector?
|
6
|
+
|
7
|
+
@hideable_content = new BrainDamage.HideableContent hideable_args.wrapper_selector, hideable_args
|
8
|
+
form = $ 'form', $ wrapper_selector
|
9
|
+
|
10
|
+
BrainDamage.SinglePageManager.register_ajax_form_callback form, 'success', @hide_form
|
11
|
+
|
12
|
+
if partial_to_show
|
13
|
+
form.append "<input type='hidden' name='partial_to_show' value='#{partial_to_show}' />"
|
14
|
+
|
15
|
+
hide_form: =>
|
16
|
+
@hideable_content.hide()
|
@@ -0,0 +1,23 @@
|
|
1
|
+
@BrainDamage ?= {}
|
2
|
+
|
3
|
+
class @BrainDamage.UIInitializer
|
4
|
+
constructor: (@initializers = []) ->
|
5
|
+
@setup()
|
6
|
+
@install()
|
7
|
+
|
8
|
+
setup: (context = 'body') ->
|
9
|
+
window.showLoading = ->
|
10
|
+
$('#page-dimmer').addClass 'active'
|
11
|
+
|
12
|
+
window.hideLoading = ->
|
13
|
+
$('#page-dimmer').removeClass 'active'
|
14
|
+
|
15
|
+
initializer.setup(context) for initializer in @initializers
|
16
|
+
|
17
|
+
install: (context = 'body') =>
|
18
|
+
$('select', context).dropdown()
|
19
|
+
|
20
|
+
$('.dropdown', context).dropdown
|
21
|
+
on: 'hover'
|
22
|
+
|
23
|
+
initializer.install(context) for initializer in @initializers
|
@@ -0,0 +1,6 @@
|
|
1
|
+
// Underscore.js 1.8.3
|
2
|
+
// http://underscorejs.org
|
3
|
+
// (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
4
|
+
// Underscore may be freely distributed under the MIT license.
|
5
|
+
(function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=b(e,i,4);var o=!k(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=x(r,e);for(var u=O(t),i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t,r){return function(e,u,i){var o=0,a=O(e);if("number"==typeof i)n>0?o=i>=0?i:Math.max(i+a,o):a=i>=0?Math.min(i+1,a):i+a+1;else if(r&&i&&a)return i=r(e,u),e[i]===u?i:-1;if(u!==u)return i=t(l.call(e,o,a),m.isNaN),i>=0?i+o:-1;for(i=n>0?o:a-1;i>=0&&a>i;i+=n)if(e[i]===u)return i;return-1}}function e(n,t){var r=I.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||a,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=I[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var u=this,i=u._,o=Array.prototype,a=Object.prototype,c=Function.prototype,f=o.push,l=o.slice,s=a.toString,p=a.hasOwnProperty,h=Array.isArray,v=Object.keys,g=c.bind,y=Object.create,d=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):u._=m,m.VERSION="1.8.3";var b=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},x=function(n,t,r){return null==n?m.identity:m.isFunction(n)?b(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return x(n,t,1/0)};var _=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var f=o[c];t&&r[f]!==void 0||(r[f]=i[f])}return r}},j=function(n){if(!m.isObject(n))return{};if(y)return y(n);d.prototype=n;var t=new d;return d.prototype=null,t},w=function(n){return function(t){return null==t?void 0:t[n]}},A=Math.pow(2,53)-1,O=w("length"),k=function(n){var t=O(n);return"number"==typeof t&&t>=0&&A>=t};m.each=m.forEach=function(n,t,r){t=b(t,r);var e,u;if(k(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=k(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=x(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(x(t)),r)},m.every=m.all=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r,e){return k(n)||(n=m.values(n)),("number"!=typeof r||e)&&(r=0),m.indexOf(n,t,r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=k(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(k(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=x(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=x(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=F(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=F(function(n,t,r){n[r]=t}),m.countBy=F(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):k(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:k(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=x(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var S=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=O(n);a>o;o++){var c=n[o];if(k(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=S(c,t,r));var f=0,l=c.length;for(u.length+=l;l>f;)u[i++]=c[f++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return S(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){m.isBoolean(t)||(e=r,r=t,t=!1),null!=r&&(r=x(r,e));for(var u=[],i=[],o=0,a=O(n);a>o;o++){var c=n[o],f=r?r(c,o,n):c;t?(o&&i===f||u.push(c),i=f):r?m.contains(i,f)||(i.push(f),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(S(arguments,!0,!0))},m.intersection=function(n){for(var t=[],r=arguments.length,e=0,u=O(n);u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=S(arguments,!0,!0,1);return m.filter(n,function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,O).length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=O(n);u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=x(r,e,1);for(var u=r(t),i=0,o=O(n);o>i;){var a=Math.floor((i+o)/2);r(n[a])<u?i=a+1:o=a}return i},m.indexOf=r(1,m.findIndex,m.sortedIndex),m.lastIndexOf=r(-1,m.findLastIndex),m.range=function(n,t,r){null==t&&(t=n||0,n=0),r=r||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=Array(e),i=0;e>i;i++,n+=r)u[i]=n;return u};var E=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=j(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(g&&n.bind===g)return g.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return E(n,e,t,this,r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e<arguments.length;)i.push(arguments[e++]);return E(n,r,this,this,i)};return r},m.bindAll=function(n){var t,r,e=arguments.length;if(1>=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var f=m.now();a||r.leading!==!1||(a=f);var l=t-(f-a);return e=this,u=arguments,0>=l||l>t?(o&&(clearTimeout(o),o=null),a=f,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,l)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var f=m.now()-o;t>f&&f>=0?e=setTimeout(c,t-f):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var f=r&&!e;return e||(e=setTimeout(c,t)),f&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];if(v)return v(n);var t=[];for(var r in n)m.has(n,r)&&t.push(r);return M&&e(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var r in n)t.push(r);return M&&e(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=_(m.allKeys),m.extendOwn=m.assign=_(m.keys),m.findKey=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=b(t,r)):(u=S(arguments,!1,!1,1),e=function(n,t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var f=u[a],l=o[f];e(l,f,o)&&(i[f]=l)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(S(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=_(m.allKeys,!0),m.create=function(n,t){var r=j(n);return t&&m.extendOwn(r,t),r},m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=s.call(n);if(u!==s.call(t))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+n==""+t;case"[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case"[object Date]":case"[object Boolean]":return+n===+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!N(n[c],t[c],r,e))return!1}else{var f,l=m.keys(n);if(c=l.length,m.keys(t).length!==c)return!1;for(;c--;)if(f=l[c],!m.has(t,f)||!N(n[f],t[f],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return N(n,t)},m.isEmpty=function(n){return null==n?!0:k(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=h||function(n){return"[object Array]"===s.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(n){m["is"+n]=function(t){return s.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===s.call(n)},m.isNull=function(n){return null===n},m.isUndefined=function(n){return n===void 0},m.has=function(n,t){return null!=n&&p.call(n,t)},m.noConflict=function(){return u._=i,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=w,m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=b(t,r,1);for(var u=0;n>u;u++)e[u]=t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var B={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},T=m.invert(B),R=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=R(B),m.unescape=R(T),m.result=function(n,t,r){var e=null==n?void 0:n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var q=0;m.uniqueId=function(n){var t=++q+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var K=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\u2028|\u2029/g,L=function(n){return"\\"+z[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||K).source,(t.interpolate||K).source,(t.evaluate||K).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(D,L),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=i,a}var c=function(n){return o.call(this,n,m)},f=t.variable||"obj";return c.source="function("+f+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var P=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return f.apply(n,arguments),P(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=o[n];m.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],P(this,r)}}),m.each(["concat","join","slice"],function(n){var t=o[n];m.prototype[n]=function(){return P(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this);
|
6
|
+
//# sourceMappingURL=underscore-min.map
|
@@ -0,0 +1,214 @@
|
|
1
|
+
@import 'compass'
|
2
|
+
|
3
|
+
@mixin smooth-transition
|
4
|
+
transition: all .2s ease-in-out
|
5
|
+
|
6
|
+
.icon-wrapper
|
7
|
+
font-size: 14px !important
|
8
|
+
padding-left: .8em
|
9
|
+
|
10
|
+
.brain-damage-empty
|
11
|
+
font-size: 11px
|
12
|
+
color: gray
|
13
|
+
|
14
|
+
.detail-header
|
15
|
+
font-size: 11px
|
16
|
+
color: gray
|
17
|
+
text-transform: uppercase
|
18
|
+
|
19
|
+
.brain-damage-inline-edit, .polymorphic-hybrid-input-wrapper
|
20
|
+
display: inline-block
|
21
|
+
min-height: 1em
|
22
|
+
position: relative
|
23
|
+
|
24
|
+
.field
|
25
|
+
label.input-label
|
26
|
+
display: none
|
27
|
+
|
28
|
+
.brain-damage-single-page-manager-table
|
29
|
+
.field
|
30
|
+
label.input-label
|
31
|
+
display: block
|
32
|
+
|
33
|
+
.brain-damage-inline-edit-actions
|
34
|
+
display: none
|
35
|
+
|
36
|
+
.brain-damage-inline-edit-display
|
37
|
+
&:hover
|
38
|
+
padding-right: 2.25em
|
39
|
+
|
40
|
+
+smooth-transition
|
41
|
+
background-color: rgba(0, 0, 255, 0.15)
|
42
|
+
|
43
|
+
.brain-damage-inline-edit-actions
|
44
|
+
opacity: 1
|
45
|
+
display: inline
|
46
|
+
|
47
|
+
.brain-damage-single-page-manager-index-form-with-hidden-add
|
48
|
+
.brain-damage-show
|
49
|
+
display: none
|
50
|
+
|
51
|
+
&:hover
|
52
|
+
.brain-damage-show
|
53
|
+
display: block
|
54
|
+
|
55
|
+
td, .field
|
56
|
+
.brain-damage-inline-edit
|
57
|
+
display: block
|
58
|
+
|
59
|
+
.paragraph
|
60
|
+
margin-bottom: 1em
|
61
|
+
|
62
|
+
.brain-damage-edit-list-item, .brain-damage-show-inline-form, .brain-damage-inline-edit-form
|
63
|
+
display: none
|
64
|
+
|
65
|
+
.brain-damage-actions, .brain-damage-inline-edit-actions
|
66
|
+
opacity: 0
|
67
|
+
transition: opacity .25s ease-in-out
|
68
|
+
position: absolute
|
69
|
+
top: 2px
|
70
|
+
right: 2px
|
71
|
+
|
72
|
+
a
|
73
|
+
cursor: pointer
|
74
|
+
|
75
|
+
.brain-damage-list-item-wrapper
|
76
|
+
position: relative
|
77
|
+
|
78
|
+
.brain-damage-list-item-wrapper:hover, .brain-damage-with-hidden-actions:hover, .brain-damage-show-inline-display:hover
|
79
|
+
.brain-damage-actions
|
80
|
+
opacity: 1
|
81
|
+
|
82
|
+
.brain-damage-nested-form-add-button
|
83
|
+
margin-bottom: 14px !important
|
84
|
+
|
85
|
+
.brain-damage-nested-form-line
|
86
|
+
position: relative
|
87
|
+
padding: 7px
|
88
|
+
border: 1px solid rgba(34, 36, 38, 0.15)
|
89
|
+
border-radius: 0.285714rem
|
90
|
+
margin-bottom: 14px
|
91
|
+
|
92
|
+
label
|
93
|
+
font-weight: normal !important
|
94
|
+
font-size: 0.8em !important
|
95
|
+
|
96
|
+
.grid
|
97
|
+
margin-top: 0 !important
|
98
|
+
|
99
|
+
.row:first-child
|
100
|
+
padding-top: 0 !important
|
101
|
+
|
102
|
+
.brain-damage-nested-form-destroy-button
|
103
|
+
+smooth-transition
|
104
|
+
display: none
|
105
|
+
position: absolute
|
106
|
+
top: 7px
|
107
|
+
right: 7px
|
108
|
+
z-index: 2
|
109
|
+
opacity: 0.5
|
110
|
+
|
111
|
+
&:hover
|
112
|
+
opacity: 1
|
113
|
+
|
114
|
+
.brain-damage-nested-form-remove-button
|
115
|
+
@extend .brain-damage-nested-form-destroy-button
|
116
|
+
transform: scale(0.65)
|
117
|
+
|
118
|
+
&:hover
|
119
|
+
background-color: rgba(0, 0, 0, 0.1)
|
120
|
+
|
121
|
+
.brain-damage-nested-form-remove-button, .brain-damage-nested-form-destroy-button
|
122
|
+
display: inline
|
123
|
+
|
124
|
+
.ui.fluid.basic.label
|
125
|
+
&.with-checkbox
|
126
|
+
*
|
127
|
+
cursor: pointer
|
128
|
+
|
129
|
+
.fluid.checkbox
|
130
|
+
width: 100%
|
131
|
+
|
132
|
+
label
|
133
|
+
width: 100% !important
|
134
|
+
|
135
|
+
.collection-check-boxes-wrapper
|
136
|
+
max-height: 30em
|
137
|
+
overflow-y: scroll
|
138
|
+
|
139
|
+
.brain-damage-actions-wrapper
|
140
|
+
position: absolute
|
141
|
+
top: 4px
|
142
|
+
right: 4px
|
143
|
+
|
144
|
+
h3.ui.header
|
145
|
+
margin-bottom: 0 !important
|
146
|
+
|
147
|
+
h2.ui.header
|
148
|
+
font-size: 1.28rem !important
|
149
|
+
|
150
|
+
pre.preformatted
|
151
|
+
margin: 0
|
152
|
+
white-space: pre-wrap
|
153
|
+
max-height: 16em
|
154
|
+
overflow-y: scroll
|
155
|
+
|
156
|
+
.float-right
|
157
|
+
float: right
|
158
|
+
|
159
|
+
.line-with-ellipsis
|
160
|
+
max-width: 100%
|
161
|
+
display: inline-block
|
162
|
+
overflow: hidden
|
163
|
+
text-overflow: ellipsis
|
164
|
+
white-space: nowrap
|
165
|
+
|
166
|
+
.collapsible-content
|
167
|
+
position: relative
|
168
|
+
|
169
|
+
.content
|
170
|
+
+box-shadow
|
171
|
+
background-color: white
|
172
|
+
display: none
|
173
|
+
left: 0
|
174
|
+
padding: 0.5em
|
175
|
+
position: absolute
|
176
|
+
top: 100%
|
177
|
+
z-index: 1
|
178
|
+
|
179
|
+
&:hover
|
180
|
+
.content
|
181
|
+
display: block
|
182
|
+
|
183
|
+
|
184
|
+
form.ui.form.inline
|
185
|
+
display: inline
|
186
|
+
|
187
|
+
.ui.label
|
188
|
+
&.marginless
|
189
|
+
margin: 0 !important
|
190
|
+
|
191
|
+
&.circular.icon
|
192
|
+
.icon
|
193
|
+
margin: 0 !important
|
194
|
+
|
195
|
+
.button
|
196
|
+
&.icon-only
|
197
|
+
.icon
|
198
|
+
margin: 0 !important
|
199
|
+
|
200
|
+
.brain-damage-block-collection-list
|
201
|
+
.label
|
202
|
+
margin: 0 !important
|
203
|
+
|
204
|
+
.brain-damage-block-collection-list, .collection-check-boxes
|
205
|
+
max-height: 16em
|
206
|
+
overflow-y: scroll
|
207
|
+
|
208
|
+
.icon
|
209
|
+
&.action
|
210
|
+
cursor: pointer
|
211
|
+
|
212
|
+
label
|
213
|
+
&.label
|
214
|
+
font-weight: bold
|
@@ -0,0 +1 @@
|
|
1
|
+
%span.brain-damage-empty= "<#{t('common.empty')}>"
|
@@ -0,0 +1 @@
|
|
1
|
+
%span.brain-damage-empty= "<#{t('common.empty')}>"
|
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "brain_damage"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start
|
data/bin/setup
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'brain_damage/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "brain_damage"
|
8
|
+
spec.version = BrainDamage::VERSION
|
9
|
+
spec.authors = ["Pedro Bernardes"]
|
10
|
+
spec.email = ["phec06@gmail.com"]
|
11
|
+
|
12
|
+
spec.summary = %q{A application scaffold generator on roids}
|
13
|
+
spec.description = %q{Can't explain better than that :)}
|
14
|
+
spec.homepage = ""
|
15
|
+
spec.license = "MIT"
|
16
|
+
|
17
|
+
# Prevent pushing this gem to RubyGems.org by setting 'allowed_push_host', or
|
18
|
+
# delete this section to allow pushing this gem to any host.
|
19
|
+
if spec.respond_to?(:metadata)
|
20
|
+
spec.metadata['allowed_push_host'] = 'https://rubygems.org'
|
21
|
+
else
|
22
|
+
raise "RubyGems 2.0 or newer is required to protect against public gem pushes."
|
23
|
+
end
|
24
|
+
|
25
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
26
|
+
spec.bindir = "exe"
|
27
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
28
|
+
spec.require_paths = ["lib"]
|
29
|
+
|
30
|
+
spec.add_development_dependency "bundler", "~> 1.10"
|
31
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
32
|
+
spec.add_development_dependency "rspec"
|
33
|
+
|
34
|
+
spec.add_dependency 'schema_plus'
|
35
|
+
spec.add_dependency 'client_side_validations'
|
36
|
+
end
|