123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <?php
- /**
- * The wire's JavaScript
- */
- $site_url = elgg_get_site_url();
- ?>
- elgg.provide('elgg.thewire');
- elgg.thewire.init = function() {
- $("#thewire-textarea").live('keydown', function() {
- elgg.thewire.textCounter(this, $("#thewire-characters-remaining span"), 140);
- });
- $("#thewire-textarea").live('keyup', function() {
- elgg.thewire.textCounter(this, $("#thewire-characters-remaining span"), 140);
- });
- $(".thewire-previous").live('click', elgg.thewire.viewPrevious);
- };
- /**
- * Update the number of characters left with every keystroke
- *
- * @param {Object} textarea
- * @param {Object} status
- * @param {integer} limit
- * @return void
- */
- elgg.thewire.textCounter = function(textarea, status, limit) {
- var remaining_chars = limit - $(textarea).val().length;
- status.html(remaining_chars);
- if (remaining_chars < 0) {
- status.parent().addClass("thewire-characters-remaining-warning");
- $("#thewire-submit-button").attr('disabled', 'disabled');
- $("#thewire-submit-button").addClass('elgg-state-disabled');
- } else {
- status.parent().removeClass("thewire-characters-remaining-warning");
- $("#thewire-submit-button").removeAttr('disabled', 'disabled');
- $("#thewire-submit-button").removeClass('elgg-state-disabled');
- }
- };
- /**
- * Display the previous wire post
- *
- * Makes Ajax call to load the html and handles changing the previous link
- *
- * @param {Object} event
- * @return void
- */
- elgg.thewire.viewPrevious = function(event) {
- var $link = $(this);
- var postGuid = $link.attr("href").split("/").pop();
- var $previousDiv = $("#thewire-previous-" + postGuid);
- if ($link.html() == elgg.echo('thewire:hide')) {
- $link.html(elgg.echo('thewire:previous'));
- $link.attr("title", elgg.echo('thewire:previous:help'));
- $previousDiv.slideUp(400);
- } else {
- $link.html(elgg.echo('thewire:hide'));
- $link.attr("title", elgg.echo('thewire:hide:help'));
-
- $.ajax({type: "GET",
- url: elgg.config.wwwroot + "ajax/view/thewire/previous",
- dataType: "html",
- cache: false,
- data: {guid: postGuid},
- success: function(htmlData) {
- if (htmlData.length > 0) {
- $previousDiv.html(htmlData);
- $previousDiv.slideDown(600);
- }
- }
- });
- }
- event.preventDefault();
- };
- elgg.register_hook_handler('init', 'system', elgg.thewire.init);
|