Commit Graph

370 Commits

Author SHA1 Message Date
Zach Copley
c05b3b5bd2 Revert "Kill off all document._importNode() calls except the ones used with the JQuery Form plugin (fixes an IE7 issue)"
This reverts commit 997d160002.

Conflicts:

	js/util.min.js
2011-05-02 11:57:25 -07:00
Zach Copley
dab27ac9fd Revert "Fix syntax error"
This reverts commit d1d530370d.
2011-05-02 11:55:28 -07:00
Zach Copley
6af7f8cd64 Revert "Revert back to using document._importNode() for ajax posting"
This reverts commit b6ed694995.
2011-05-02 11:55:16 -07:00
Zach Copley
3187d6184f Revert "Arg. Gotta remember to take out console.log() debug statements before committing :D"
This reverts commit bd3eb331a8.
2011-05-02 11:55:04 -07:00
Zach Copley
bd3eb331a8 Arg. Gotta remember to take out console.log() debug statements before committing :D 2011-04-27 19:34:51 -07:00
Zach Copley
b6ed694995 Revert back to using document._importNode() for ajax posting 2011-04-27 19:31:27 -07:00
Zach Copley
d1d530370d Fix syntax error 2011-04-27 18:27:42 -07:00
Zach Copley
997d160002 Kill off all document._importNode() calls except the ones used with the JQuery Form plugin (fixes an IE7 issue) 2011-04-26 17:14:45 -07:00
Zach Copley
76ea9384a3 Remove billions of debugging statements and extra space 2011-04-18 16:49:32 -07:00
Zach Copley
583b903559 More work trying to understand util.js and get my ajax working right 2011-04-18 16:49:00 -07:00
Zach Copley
d1443a6bd9 Getting some traction here on better QnA Ajax 2011-04-18 16:47:33 -07:00
Zach Copley
6bf29ff684 QnA - Work on getting questions and answers to appear correctly inline 2011-04-18 16:46:11 -07:00
Samantha Doherty
e8e6d494d2 This util.min.js is pining for the fjords. 2011-04-18 12:42:00 -04:00
Samantha Doherty
027cdd4620 Need to be a little more specific about infield input labels. 2011-04-18 11:45:02 -04:00
Samantha Doherty
3b5966430c Apply infield labels to notice form inputs. 2011-04-18 00:38:26 -04:00
Samantha Doherty
572f1d582c Only auto-focus on textarea for main notice form. 2011-04-18 00:31:47 -04:00
Zach Copley
443b495a0b Fix inline replies (pretty sure I got it this time) 2011-04-17 20:34:17 -07:00
Zach Copley
eaca17be58 Allow sending in a function to be run on successful XHR 2011-04-17 18:36:59 -07:00
Evan Prodromou
82577a9dc2 don't try to pre-init the @-reply 2011-04-16 16:23:31 -04:00
Brion Vibber
79190c87b2 Fix regression in inline replies to newly added messages (regression from my fixes w/ the realtime stuff) 2011-04-15 15:03:20 -07:00
Zach Copley
03de85ed46 Make it so input forms that don't have navigation don't accidentally get hidden. Add a "nonav" class to them. 2011-04-12 14:20:19 -07:00
Evan Prodromou
09cffc1928 hide and disable ToSelector for replies 2011-04-11 12:55:49 -04:00
Shashi Gowda
c44a94e8f5 Port autocomplete from tagInput to jQuery UI, send Last-Modified header and look for it in JS. 2011-04-08 14:51:05 +05:30
Shashi Gowda
ad86eb78d3 Merge remote-tracking branch 'mainline/1.0.x' into people_tags_rebase
Conflicts:
	js/util.min.js
	lib/default.php
2011-04-07 23:13:45 +05:30
Evan Prodromou
ac24ed3dff add checkbox initialization 2011-04-05 11:48:53 -04:00
Shashi Gowda
5a2bab07b2 Merge remote-tracking branch 'mainline/1.0.x' into people_tags_rebase
Conflicts:
	actions/tagother.php
	classes/Profile.php
	classes/Profile_tag.php
	js/util.min.js
2011-03-30 15:47:42 +05:30
Brion Vibber
2707a481e4 Enhancement for 'ajax' form class: submit buttons behave more like normal submissions, submitting their name/values through a hidden field.
This should work well for simple cases, but could conceivably create false positives if there's a click handler on the specific buttons, depending on whether event processing passes it on. Double-check if you're doing such forms along with the 'ajax' class!
2011-03-23 15:21:31 -07:00
Shashi Gowda
31c1177970 Merge branch '1.0.x' into people_tags_rebase
Conflicts:
	EVENTS.txt
	actions/peopletag.php
	actions/tagother.php
	classes/Notice.php
	js/util.js
	js/util.min.js
	lib/accountprofileblock.php
	lib/action.php
	lib/activityobject.php
	lib/command.php
	lib/personalgroupnav.php
	plugins/OStatus/OStatusPlugin.php
2011-03-22 07:56:25 +05:30
Brion Vibber
4afa3caae3 ajax load for additional inline replies; /replies variant of conversationview 2011-03-17 16:27:42 -07:00
Brion Vibber
057a831026 Fixes for race conditions between Realtime plugin and the AJAX display of inline replies.
* keep the notice-reply-placeholder around, but hidden
* insert things before the placeholder, rather than appending to the end of the list.
* append the active form after the hidden placeholder, so things inserted before the placeholder never come after it
* Realtime: check pre-existing notice visibility a second time after loading the HTML for a notice. Fixes bug where sometimes your own post would be shown twice because the Realtime notification arrived before the AJAX posting returned, but Realtime's AJAX fetch of the notice returned after.
2011-03-17 15:54:40 -07:00
Brion Vibber
7d202e9c61 Detect and show AJAX errors on FormXHR submission handling.
Previously we threw away errore reported by the actual AJAX submission and only used whatever error the browser reported to us; this didn't help if we reached the server ok but had a problem there.
We now extract the #error if given and use that in the alert().
Also should now show 'Unknown error' instead of a crappy generic 'something died in jQuery' when we get a 200 response but bogus return data.
2011-03-16 16:10:43 -07:00
Brion Vibber
2bccd18d9a JS optimization: move creation of inline reply placeholders to server-side so we don't have to create them client-side (which causes reflows and takes about 25-30ms on my test system)
Using live instead of bind for the event handling, we don't have to play any games on the ones that we do add at runtime. Yay!
2011-03-11 15:20:20 -08:00
Brion Vibber
10e5cb482e JS performance: speeding up initialization by consolidating event handlers for reply buttons
Saved about 60ms on my test system during page setup by using a single global 'live' click handler for reply links.
No longer need to seek out and attach event handlers on every notice, yay!
2011-03-11 15:03:15 -08:00
Brion Vibber
0f3af3e3b7 Keep 'Status' tab current while showing the placeholder -- pretend like it's a mini version of the status notice form :D 2011-03-10 18:01:40 -08:00
Brion Vibber
0ee5d79739 Return to placeholder entry after successful post 2011-03-10 17:54:07 -08:00
Brion Vibber
6066bce02c Clicking outside the active top posting form now returns to the placeholder if all textarea/input fields are empty 2011-03-10 17:52:03 -08:00
Brion Vibber
b89b89ce89 Focus in textarea when popping up the status tab 2011-03-10 17:44:17 -08:00
Brion Vibber
f88689cc87 Trigger status notice form when top placeholder form gets used. Delay initialization of notice ajax forms until they get shown. 2011-03-10 17:40:39 -08:00
Brion Vibber
874804a0c4 use a data attribute instead of 'title' for geo lookup api; fixes failure of cloned forms to work 2011-03-10 16:49:24 -08:00
Brion Vibber
e43ee373ae Fix disappearing reply forms when closing geo section
Missing default-cancel in the click handler allowed the event to bubble up to the body handler, where we think the click is outside of the form because the target is no longer in the form by the time we check
Now the event no longer bubbles up, as we cancel it when we're done.
2011-03-10 16:29:13 -08:00
Brion Vibber
eef9786e36 click -> focus for reply placeholder trigger; lets keyboarders use it though not super ideal :D 2011-03-10 16:23:18 -08:00
Brion Vibber
d107164aec Tweaks for closing 2011-03-10 16:15:44 -08:00
Brion Vibber
4e1ce4e5bb Remove inline reply forms on click-away if they have initial text as well as if empty (plus whitespace stripping) 2011-03-10 16:10:58 -08:00
Brion Vibber
acca8a24b4 Fix for inline reply placeholders: only remove the one we're clicking in, not all of them! 2011-03-10 16:08:28 -08:00
Brion Vibber
6b5b6d072b Make inline reply forms close when clicking outside them if there's no text again.
(That went away when we switched to reusing the main notice form)
2011-03-10 16:06:01 -08:00
Brion Vibber
ec828a094c Update LinkPreview plugin for multiple notice forms.
* main notice form setup now encapsulated into SN.Init.NoticeForm(form) -- this can be monkeypatched by plugins to append their own setup code, as LinkPreview does
* LinkPreview now supports debugging with non-minified JS source when $config['site']['minify'] is false
* tweaked core & neo styles so 'notice-status' class gets same styles as attach-status, so we can more easily add mroe statusy things. (needs more consolidation with geo-status, etc)
* tweaked LinkPreview's preview area to use that style
2011-03-09 17:43:31 -08:00
Brion Vibber
cecc2576a5 Fixes for direct message form for JS changes to the main form 2011-03-09 16:55:52 -08:00
Brion Vibber
040baf291d Fix for input tab selection 2011-03-09 13:05:12 -08:00
Brion Vibber
cbf16a4974 Bookmark and poll plugins' custom notice forms now do AJAX submit, with the resulting notice appearing in the timeline.
FormNoticeXHR now is triggered on any form labeled with class 'ajax-notice', so those other than the traditional notice form should work as long as they handle the AJAX submission and return a properly formatted notice.

Things to watch out for:
* to determine whether the resulting notice should show on the current timeline, the JS code needs to be able to check the author and such. Keeping the existing vcard bits helps for this!
* the notice form submission stuff clears out inputs from your form -- test to make sure this behaves correctly
* error messages returned from the thingy _should_ come through, but this needs more testing for consistency
* while form components that aren't in a custom form should just be ignored, this should be tested more. (eg there's no location or attachment box for poll or bookmark plugins)
* NoticeListItem isn't currently reachable via autoloader -- touch NoticeList explicitly before calling into it for now.
2011-03-08 15:10:30 -08:00
Brion Vibber
28809035d0 Replace explicit FormXHR setup for a bunch of simple AJAX form submissions with adding the 'ajax' class on them.
This avoids having to add extra custom JS bits just to initialize forms using the common AJAX submission path.
2011-03-08 13:58:28 -08:00