diff options
Diffstat (limited to 'mod/blog')
| -rw-r--r-- | mod/blog/lib/blog.php | 8 | ||||
| -rw-r--r-- | mod/blog/views/default/forms/blog/save.php | 2 | ||||
| -rw-r--r-- | mod/blog/views/default/input/datetime.php | 10 | ||||
| -rw-r--r-- | mod/blog/views/default/js/blog/save_draft.php | 121 | 
4 files changed, 57 insertions, 84 deletions
diff --git a/mod/blog/lib/blog.php b/mod/blog/lib/blog.php index 326b224bb..5287844ab 100644 --- a/mod/blog/lib/blog.php +++ b/mod/blog/lib/blog.php @@ -309,9 +309,11 @@ function blog_get_page_content_edit($page, $guid = 0, $revision = NULL) {  			elgg_push_breadcrumb($blog->title, $blog->getURL());  			elgg_push_breadcrumb(elgg_echo('edit')); +			 +			$blog_js = elgg_get_simplecache_url('js', 'blog/save_draft'); +			elgg_register_js($blog_js, 'blog');  			$content = elgg_view_form('blog/save', $vars, $body_vars); -			$content .= elgg_view('js/blog/save_draft');  			$sidebar = elgg_view('blog/sidebar/revisions', $vars);  		} else {  			$content = elgg_echo('blog:error:cannot_edit_post'); @@ -328,7 +330,9 @@ function blog_get_page_content_edit($page, $guid = 0, $revision = NULL) {  		$title = elgg_echo('blog:add');  		$content = elgg_view_form('blog/save', $vars, $body_vars); -		$content .= elgg_view('js/blog/save_draft'); +		 +		$blog_js = elgg_get_simplecache_url('js', 'blog/save_draft'); +		elgg_register_js($blog_js, 'blog');  	}  	$return['title'] = $title; diff --git a/mod/blog/views/default/forms/blog/save.php b/mod/blog/views/default/forms/blog/save.php index 6020ad4b0..c0c9ea7cd 100644 --- a/mod/blog/views/default/forms/blog/save.php +++ b/mod/blog/views/default/forms/blog/save.php @@ -19,7 +19,7 @@ if ($vars['guid']) {  	$delete_link = elgg_view('output/confirmlink', array(  		'href' => $delete_url,  		'text' => elgg_echo('delete'), -		'class' => 'elgg-button-action elgg-state-disabled' +		'class' => 'elgg-button elgg-button-delete elgg-state-disabled'  	));  } diff --git a/mod/blog/views/default/input/datetime.php b/mod/blog/views/default/input/datetime.php index 3a7244b88..1f4a33ecd 100644 --- a/mod/blog/views/default/input/datetime.php +++ b/mod/blog/views/default/input/datetime.php @@ -18,31 +18,31 @@ $month = elgg_view('input/dropdown', array(  	'name' => 'publish_month',  	'value' => date('m', $publish_date),  	'options_values' => $months, -	'class' => 'blog_publish_month', +	'class' => 'elgg-input-datetime-month',  ));  $day = elgg_view('input/text', array(  	'name' => 'publish_day',  	'value' => date('d', $publish_date), -	'class' => 'blog_publish_day', +	'class' => 'elgg-input-datetime-day',  ));  $year = elgg_view('input/text', array(  	'name' => 'publish_year',  	'value' => date('Y', $publish_date), -	'class' => 'blog_publish_year', +	'class' => 'elgg-input-datetime-year',  ));  $hour = elgg_view('input/text', array(  	'name' => 'publish_hour',  	'value' => date('H', $publish_date), -	'class' => 'blog_publish_hour', +	'class' => 'elgg-input-datetime-hour',  ));  $minute = elgg_view('input/text', array(  	'name' => 'publish_minute',  	'value' => date('i', $publish_date), -	'class' => 'blog_publish_minute', +	'class' => 'elgg-input-datetime-minute',  ));  echo "$month $day, $year @ $hour:$minute"; diff --git a/mod/blog/views/default/js/blog/save_draft.php b/mod/blog/views/default/js/blog/save_draft.php index 7f3c3bb12..990ab357d 100644 --- a/mod/blog/views/default/js/blog/save_draft.php +++ b/mod/blog/views/default/js/blog/save_draft.php @@ -3,97 +3,66 @@   * Save draft through ajax   *   * @package Blog - *  - * @todo JS 1.8: no. Convert to use elgg.blog.*   */  ?> -<script type="text/javascript"> -	setInterval("blogSaveDraft()", 60000); +elgg.provide('elgg.blog'); -	/* -	 * Attempt to save and update the input with the guid. -	 */ -	function blogSaveDraftCallback(data, textStatus, XHR) { -		if (textStatus == 'success' && data.success == true) { -			var form = $('form[name=blog_post]'); +/* + * Attempt to save and update the input with the guid. + */ +elgg.blog.saveDraftCallback = function(data, textStatus, XHR) { +	if (textStatus == 'success' && data.success == true) { +		var form = $('form[name=blog_post]'); -			// update the guid input element for new posts that now have a guid -			form.find('input[name=guid]').val(data.guid); +		// update the guid input element for new posts that now have a guid +		form.find('input[name=guid]').val(data.guid); -			oldDescription = form.find('textarea[name=description]').val(); +		oldDescription = form.find('textarea[name=description]').val(); -			var d = new Date(); -			var mins = d.getMinutes() + ''; -			if (mins.length == 1) { -				mins = '0' + mins; -			} -			$(".blog-save-status-time").html(d.toLocaleDateString() + " @ " + d.getHours() + ":" + mins); -		} else { -			$(".blog-save-status-time").html("<?php echo elgg_echo('error'); ?>"); +		var d = new Date(); +		var mins = d.getMinutes() + ''; +		if (mins.length == 1) { +			mins = '0' + mins;  		} +		$(".blog-save-status-time").html(d.toLocaleDateString() + " @ " + d.getHours() + ":" + mins); +	} else { +		$(".blog-save-status-time").html(elgg.echo('error'));  	} +} -	function blogSaveDraft() { -		if (typeof(tinyMCE) != 'undefined') { -			tinyMCE.triggerSave(); -		} - -		// only save on changed content -		var form = $('form[name=blog_post]'); -		var description = form.find('textarea[name=description]').val(); -		var title = form.find('input[name=title]').val(); - -		if (!(description && title) || (description == oldDescription)) { -			return false; -		} - -		var draftURL = "<?php echo elgg_get_site_url(); ?>action/blog/auto_save_revision"; -		var postData = form.serializeArray(); - -		// force draft status -		$(postData).each(function(i, e) { -			if (e.name == 'status') { -				e.value = 'draft'; -			} -		}); - -		$.post(draftURL, postData, blogSaveDraftCallback, 'json'); +elgg.blog.saveDraft = function() { +	if (typeof(tinyMCE) != 'undefined') { +		tinyMCE.triggerSave();  	} -	$(document).ready(function() { -		// get a copy of the body to compare for auto save -		oldDescription = $('form[name=blog_post]').find('textarea[name=description]').val(); - -/* we don't seems to be using the text counter anymore� -		$('#excerpt.excerpt').each(function(){ -			var allowed = 200; - -			// set the initial value -			$('#countervalue').text(allowed); +	// only save on changed content +	var form = $('form[name=blog_post]'); +	var description = form.find('textarea[name=description]').val(); +	var title = form.find('input[name=title]').val(); -			// bind on key up event -			$(this).keyup(function(){ -				var counter_value = ((allowed - ($(this).val().length))); +	if (!(description && title) || (description == oldDescription)) { +		return false; +	} -				$("#countervalue").removeClass(); +	var draftURL = elgg.config.wwwroot + "action/blog/auto_save_revision"; +	var postData = form.serializeArray(); -				if ((counter_value > 10)) { -					$("#countervalue").addClass("positive"); -				} -				else if ((counter_value <= 10) && (counter_value >= 0)) { -					$("#countervalue").addClass("gettingclose"); -				} -				else if ((counter_value < 0)) { -					$("#countervalue").addClass("negative"); -				} +	// force draft status +	$(postData).each(function(i, e) { +		if (e.name == 'status') { +			e.value = 'draft'; +		} +	}); -				// insert new length -				$('#countervalue').text(counter_value); +	$.post(draftURL, postData, blogSaveDraftCallback, 'json'); +} -			}); -		}); -*/ -	}); +elgg.blog.init = function() { +	// get a copy of the body to compare for auto save +	oldDescription = $('form[name=blog_post]').find('textarea[name=description]').val(); +	 +	setInterval(elgg.blog.saveDraft, 60000); +}; -</script> +elgg.register_event_handler('init', 'system', elgg.blog.init);
\ No newline at end of file  | 
