/[drupal]/contributions/modules/netforum_nodes/jquery.netforum_node.js
ViewVC logotype

Contents of /contributions/modules/netforum_nodes/jquery.netforum_node.js

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.5 - (show annotations) (download) (as text)
Thu Nov 29 03:28:51 2007 UTC (23 months, 4 weeks ago) by jamesmichaelhill
Branch: MAIN
CVS Tags: DRUPAL-5--0-8-2, DRUPAL-5--0-8-5, DRUPAL-5--0-8-7, DRUPAL-5--0-8-6, DRUPAL-5--0-8-8, HEAD
Branch point for: DRUPAL-5
Changes since 1.4: +11 -3 lines
File MIME type: text/javascript
Expanded template code options for creating and linking to nodes
1 // $Id: jquery.netforum_node.js,v 1.4 2007/11/14 14:48:07 jamesmichaelhill Exp $
2 var keepHelpCollapsed = false;
3
4 if (Drupal.jsEnabled){
5 $(document).ready(function(){
6 $('#edit-obj-type-name').bind("blur",setObjectType);
7 $('#edit-key-submit').click(function(){return keyHelpSubmit();});
8 });
9 }
10
11
12 function setObjectKey(obj_key){
13 if (obj_key != ''){
14 $("#edit-nfn-key").fadeOut("normal", function() { $(this).val(obj_key); }).fadeIn("normal");
15 }
16 return false;
17 }
18
19 function setObjectName(obj_type_name){
20 obj_type_name += "";
21 if (obj_type_name.toString().toLowerCase() != $('#edit-obj-type-name').val().toLowerCase() && obj_type_name != ''){
22 $("#edit-obj-type-name").fadeOut("normal", function() { $(this).val(obj_type_name).blur(); }).fadeIn("normal");
23 }
24 return false;
25 }
26
27 function setObjectType(){
28 // If there's an autocomplete box up then wait till it closes to make our move.
29 if ($('#autocomplete').length && $('#autocomplete').css("visibility") == 'visible'){
30 return;
31 }
32
33 var objName = $(this).val();
34 var prevObjName = '';
35 if ( $('#edit-key-obj-type-name').length ) {
36 prevObjName = $('#edit-key-obj-type-name').val();
37 }
38 if ( objName.toLowerCase() != prevObjName.toLowerCase()) {
39
40 //update our autocomplete
41 var fieldAutocomplete = location.protocol + "//" + location.host + BASE_URL + 'admin/content/netforum-object-fields-autocomplete/' + escape(objName);
42 $('#edit-obj-field-help-autocomplete').val(fieldAutocomplete);
43 //the url should have changed from something like http://www.example.com/admin/content/netforum-object-fields-autocomplete/9afef9a3-69fc-4c61-8114-02baefca77e7
44 // to http://www.example.com/admin/content/netforum-object-fields-autocomplete/Individual
45
46 //update our OTHER autocomplete
47 var codeAutocomplete = location.protocol + "//" + location.host + BASE_URL + 'admin/content/netforum-template-code-autocomplete/' + escape(objName);
48 $('#edit-template-code-autocomplete').val(codeAutocomplete );
49
50 //Remove the previous autocompletes
51 $('#edit-obj-field-help').unbind('keyup');
52 $('#edit-obj-field-help').unbind('keydown');
53 $('#edit-obj-field-help').unbind('blur');
54 //yes, all of them
55 $('#edit-template-code').unbind('keyup');
56 $('#edit-template-code').unbind('keydown');
57 $('#edit-template-code').unbind('blur');
58 //re-bind the autocomplete actions to the form
59 Drupal.autocompleteAutoAttach();
60
61 if ($('#find_key_help').length){
62 //Update the object search help if there's somewhere for it to go to
63 keyHelpSubmit();
64 }
65
66 }
67
68 return false;
69 }
70
71 function keyHelpSubmit(newObjName) {
72 // If there's an autocomplete box up then wait till it closes to make our move
73 if ($('#autocomplete').length && $('#autocomplete').css("visibility") == 'visible'){
74 return;
75 }
76
77 if (! newObjName){
78 newObjName = $('#edit-obj-type-name').val();
79 }
80
81 // Find any data they're submitting and package it into the get request
82 var objLookupFields = [];
83 if ( $('#edit-search-on').length ) {
84 objLookupFields = Drupal.parseJson($('#edit-search-on').val());
85 }
86 var queryString = '';
87 for ( item in objLookupFields){
88 var objItem = objLookupFields[item].replace(/ /gi,""); //strip whitespace
89 var formItem = '#edit-' + objItem.replace(/_/gi,"-").toLowerCase(); //replace underscores with dashes
90 if ($(formItem).val()){
91 queryString += objItem + "=" + escape($(formItem).val()) + "&";
92 }
93 }
94
95 queryString += "url_lookup=" + escape($('#edit-url-lookup').val());
96
97
98 uri = location.protocol + "//" + location.host + BASE_URL + 'admin/content/netforum-node-object-lookup/' + escape(newObjName);
99 //I know that I didn't HAVE to build this query string, and that the null parameter to
100 // $.get is the data, but I've already written it and it doesn't seem to be breaking
101 //anything
102 uri += "?" + queryString;
103
104 //If the help fieldset is expanded, hide it during the query and show our
105 //updating animation.
106 var helpCollapsed = $('#object_help').is('.collapsed');
107 if ( helpCollapsed != true && keepHelpCollapsed == false){
108 Drupal.toggleFieldset($('#object_help'));
109 $('#object_help_status').show();
110 }
111 $('#find_key_help').html(''); //set the panel to be blank to keep them from firing two requests
112 $.get(uri, null, function(data){ //get the data and do the following when it gets back
113 $('#find_key_help').html(data);
114 //re-bind our events
115 $('#edit-key-submit').click(function(){keepHelpCollapsed = false; return keyHelpSubmit();} );
116 $('a.key-help').click(function(){return setObjectKey(this.id);} );
117 $('a.obj-help').click(function(){ //this is the link they click on after searching based off of a netforum URL
118 setObjectName($('#new_obj_name').html());
119 setObjectKey($('#new_obj_key').html());
120 keepHelpCollapsed = true;
121 Drupal.toggleFieldset($('#object_help'));
122 return false;
123 } );
124
125 if (helpCollapsed != true && keepHelpCollapsed == false) { //display the help if it was showing before
126 Drupal.toggleFieldset($('#object_help'));
127 $('#object_help_status').hide();
128 }
129 }); //end of the get
130
131 return false;
132 }

  ViewVC Help
Powered by ViewVC 1.1.2