summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsarven <csarven@plantard.controlezvous.ca>2009-01-16 17:02:46 +0000
committersarven <csarven@plantard.controlezvous.ca>2009-01-16 17:02:46 +0000
commit877327a18e15d768df3bda658ce9dded116399fa (patch)
tree7923e352a6b241385c22b9487e8d994f4c593185
parenteacb8df69157e3151e3de5074dec6a152882e207 (diff)
Update to XHR post notice
-rw-r--r--actions/newnotice.php2
-rw-r--r--js/util.js57
-rw-r--r--lib/action.php4
3 files changed, 38 insertions, 25 deletions
diff --git a/actions/newnotice.php b/actions/newnotice.php
index cb02854a1..b6ed87f81 100644
--- a/actions/newnotice.php
+++ b/actions/newnotice.php
@@ -91,7 +91,7 @@ class NewnoticeAction extends Action
common_broadcast_notice($notice);
if ($this->boolean('ajax')) {
- common_start_html('text/xml;charset=utf-8', true);
+ $this->startHTML('text/xml;charset=utf-8', true);
$this->elementStart('head');
$this->element('title', null, _('Notice posted'));
$this->elementEnd('head');
diff --git a/js/util.js b/js/util.js
index 38a958968..c43af2333 100644
--- a/js/util.js
+++ b/js/util.js
@@ -20,21 +20,21 @@ $(document).ready(function(){
// count character on keyup
function counter(event){
var maxLength = 140;
- var currentLength = $("#status_textarea").val().length;
+ var currentLength = $("#notice_data-text").val().length;
var remaining = maxLength - currentLength;
var counter = $("#counter");
counter.text(remaining);
if (remaining <= 0) {
- $("#status_form").addClass("response_error");
+ $("#form_notice").addClass("response_error");
} else {
- $("#status_form").removeClass("response_error");
+ $("#form_notice").removeClass("response_error");
}
}
function submitonreturn(event) {
if (event.keyCode == 13) {
- $("#status_form").submit();
+ $("#form_notice").submit();
event.preventDefault();
event.stopPropagation();
return false;
@@ -42,15 +42,15 @@ $(document).ready(function(){
return true;
}
- if ($("#status_textarea").length) {
- $("#status_textarea").bind("keyup", counter);
- $("#status_textarea").bind("keydown", submitonreturn);
+ if ($("#notice_data-text").length) {
+ $("#notice_data-text").bind("keyup", counter);
+ $("#notice_data-text").bind("keydown", submitonreturn);
// run once in case there's something in there
counter();
// set the focus
- $("#status_textarea").focus();
+ $("#notice_data-text").focus();
}
// XXX: refactor this code
@@ -136,12 +136,12 @@ $(document).ready(function(){
var PostNotice = { dataType: 'xml',
- beforeSubmit: function(formData, jqForm, options) { if ($("#status_textarea").get(0).value.length == 0) {
- $("#status_form").addClass("response_error");
+ beforeSubmit: function(formData, jqForm, options) { if ($("#notice_data-text").get(0).value.length == 0) {
+ $("#form_notice").addClass("warning");
return false;
}
- $("#status_form input[type=submit]").attr("disabled", "disabled");
- $("#status_form input[type=submit]").addClass("disabled");
+ $("#notice_action-submit").attr("disabled", "disabled");
+ $("#notice_action-submit").addClass("disabled");
return true;
},
success: function(xml) { if ($("#error", xml).length > 0 || $("#command_result", xml).length > 0) {
@@ -150,28 +150,37 @@ $(document).ready(function(){
alert(result);
}
else {
- $("#notices").prepend(document._importNode($("li", xml).get(0), true));
- $("#status_textarea").val("");
+ $("#notices_primary .notices").prepend(document._importNode($("li", xml).get(0), true));
+ $("#notice_data-text").val("");
counter();
- $(".notice_single:first").css({display:"none"});
- $(".notice_single:first").fadeIn(2500);
+ $("#notices_primary .notice:first").css({display:"none"});
+ $("#notices_primary .notice:first").fadeIn(2500);
}
- $("#status_form input[type=submit]").removeAttr("disabled");
- $("#status_form input[type=submit]").removeClass("disabled");
+ $("#notice_action-submit").removeAttr("disabled");
+ $("#notice_action-submit").removeClass("disabled");
}
};
- $("#status_form").ajaxForm(PostNotice);
- $("#status_form").each(addAjaxHidden);
+ $("#form_notice").ajaxForm(PostNotice);
+ $("#form_notice").each(addAjaxHidden);
+
+ $(".notice").hover(
+ function () {
+ $(this).addClass('hover');
+ },
+ function () {
+ $(this).removeClass('hover');
+ }
+ );
});
function doreply(nick,id) {
rgx_username = /^[0-9a-zA-Z\-_.]*$/;
if (nick.match(rgx_username)) {
replyto = "@" + nick + " ";
- if ($("#status_textarea").length) {
- $("#status_textarea").val(replyto);
- $("form#status_form input#inreplyto").val(id);
- $("#status_textarea").focus();
+ if ($("#notice_data-text").length) {
+ $("#notice_data-text").val(replyto);
+ $("form#form_notice input#inreplyto").val(id);
+ $("#notice_data-text").focus();
return false;
}
}
diff --git a/lib/action.php b/lib/action.php
index 94be04b52..129a4b24b 100644
--- a/lib/action.php
+++ b/lib/action.php
@@ -128,6 +128,10 @@ class Action extends HTMLOutputter // lawsuit
'media' => 'screen, projection, tv'));
$this->element('link', array('rel' => 'stylesheet',
'type' => 'text/css',
+ 'href' => theme_path('css/thickbox.css', 'base') . '?version=' . LACONICA_VERSION,
+ 'media' => 'screen, projection, tv'));
+ $this->element('link', array('rel' => 'stylesheet',
+ 'type' => 'text/css',
'href' => theme_path('css/display.css', null) . '?version=' . LACONICA_VERSION,
'media' => 'screen, projection, tv'));
foreach (array(6,7) as $ver) {