1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- (function ($) {
- Drupal.behaviors.view_boxes = {
- attach: function(context) {
- //All of this code is for the custom id field
-
- // Bind an update event to all of our id-value fields
- // this takes the values from all of the corresponding
- // id-fields parse and update our value
- $(".id-value").bind("update", function(e) {
- values = [];
- groupid = $(this).attr('group');
- $("#" + groupid).find(".id-field").each(function(i) {
- value = $(this).val();
- re = /.*id:(.*)\]/;
- if(value.match(re)) {
- id = value.replace(re, "$1");
- values.push(id);
- }
- });
- $(this).val(values.join("+"));
- });
- // make all wrappers sortable
- // and set up an update whenever a field is left
- $(".id-group", context).each(function () {
- $(this, context).find(".id-field").focusout(function (e){
- valueid = $(this).attr("key").replace(/_/g,"-");
- $("#edit-" + valueid).trigger("update");
- });
- $(this, context).find("input.form-submit").click(function (e){
- valueid = $(this).attr("key").replace(/_/g,"-");
- $("#edit-" + valueid).trigger("update");
- });
- $(this, context).find(".id-sortable", context).sortable({
- stop: function(event, ui) {
- valueid = $(this).attr("key").replace(/_/g,"-");
- $("#edit-" + valueid).trigger("update");
- }
- });
- });
-
- // Redefining this here as the popup wasn't hiding properly following a click
- if (Drupal.jsAC != null) {
- Drupal.jsAC.prototype.select = function (node) {
- this.input.value = $(node).data('autocompleteValue');
- $(this.popup).css({ visibility: 'hidden' });
- valueid = $(this.input).attr("key").replace(/_/g,"-");
- $("#edit-" + valueid).trigger("update");
- };
- }
- }
- };
- })(jQuery);
|