app/assets/javascripts/models/active_page.coffee in kindred-0.0.3 vs app/assets/javascripts/models/active_page.coffee in kindred-0.0.4

- old
+ new

@@ -44,10 +44,13 @@ update_displays_on_page: -> $.each @attributes, (attr, val) => # TODO make this work with span and p $("div[data-k-uuid='" + @uuid + "'][data-attr='" + attr + "'], span[data-k-uuid='" + @uuid + "'][data-attr='" + attr + "'], p[data-k-uuid='" + @uuid + "'][data-attr='" + attr + "']").html(val) + update_meta_on_page: -> + $("[data-kindred-model]").find("div[data-k-uuid='" + @uuid + "']").data("meta", @meta) + dirty_from_page: -> dirty = [] $.each $("input[data-k-uuid='" + @uuid + "'], select[data-k-uuid='" + @uuid + "']"), (i, input) => $input = $(input) @@ -73,10 +76,12 @@ model_data = $("[data-kindred-model]").find("[data-k-uuid='" + @uuid + "']") if !isNaN(parseFloat(model_data.data("id"))) && isFinite(model_data.data("id")) @id = model_data.data("id") + @meta = model_data.data("meta") + $("select[data-k-uuid='" + @uuid + "']").each (i, select) => @set $(select).data("attr"), $(select).val() @ @@ -89,15 +94,21 @@ model_data.data("id", @id) $.each @attributes, (attr, val) => $("[data-k-uuid='" + @uuid + "'][data-attr='" + attr + "']").data("val", val) _append_data_model_to_page: -> - model_div = "<div data-k-uuid=" + @uuid + " data-id=" + @id + " data-class=" + @snake_name + "></div>" + model_div = "<div data-k-uuid=" + @uuid + " data-id=" + @id + " data-class=" + @snake_name + " data-meta=" + @_stringified_meta() + " ></div>" $("[data-kindred-model]").append(model_div) _input_dirty: (input) -> if input.is("select") && input.data("val").length == 0 false else if input.is(":checkbox") !(input.data("val").toString() == input.prop("checked").toString()) else !(input.data("val").toString() == input.val().toString()) + + _stringified_meta: -> + if @meta? + JSON.stringify(@meta) + else + ""