diff options
| author | brettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-03-23 19:25:14 +0000 | 
|---|---|---|
| committer | brettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-03-23 19:25:14 +0000 | 
| commit | b3e6ac6960e56001d80243f694fe2109211a5fce (patch) | |
| tree | f8dfebc35a3fabda7a615b389b8758b88358f63b /mod/blog/blog_lib.php | |
| parent | c71f11c1b7a4a2ee634acd50582e5202da5389cc (diff) | |
| download | elgg-b3e6ac6960e56001d80243f694fe2109211a5fce.tar.gz elgg-b3e6ac6960e56001d80243f694fe2109211a5fce.tar.bz2 | |
Added an ElggBlog class to override the time_created field.
Added extra language files.
git-svn-id: http://code.elgg.org/elgg/trunk@5486 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/blog/blog_lib.php')
| -rw-r--r-- | mod/blog/blog_lib.php | 128 | 
1 files changed, 21 insertions, 107 deletions
| diff --git a/mod/blog/blog_lib.php b/mod/blog/blog_lib.php index 993728dcc..6f52e53ec 100644 --- a/mod/blog/blog_lib.php +++ b/mod/blog/blog_lib.php @@ -98,120 +98,34 @@ function blog_get_page_content_edit($guid, $revision = NULL) {  }  /** - * Saves a blog - * - * @param array $info An array of name=>value pairs to save to the blog entity + * Returns an appropriate excerpt for a blog.   * - * @return array('success' => BOOL, 'message' => string); + * @param string $text + * @return string   */ -function blog_save_blog($info) { -	// store errors to pass along -	$error = FALSE; - -	if ($info['guid']) { -		$entity = get_entity($info['guid']); -		if (elgg_instanceof($entity, 'object', 'blog') && $entity->canEdit()) { -			$blog = $entity; -		} else { -			$error = elgg_echo('blog:error:post_not_found'); -		} -	} else { -		$blog = new ElggObject(); -		$blog->subtype = 'blog'; -	} - -	// check required vars -	$required = array('title', 'description'); - -	// load from POST and do sanity and access checking -	foreach ($info as $name => $value) { -		if (in_array($name, $required) && empty($value)) { -			$error = elgg_echo("blog:error:missing:$name"); -		} - -		if ($error) { -			break; -		} - -		switch ($name) { -			case 'tags': -				if ($value) { -					$info[$name] = string_to_tag_array($value); -				} else { -					unset ($info[$name]); -				} -				break; - -			case 'excerpt': -				// restrict to 300 chars -				if ($value) { -					$value = substr(strip_tags($value), 0, 300); -				} else { -					$value = substr(strip_tags($info['description']), 0, 300); -				} -				$info[$name] = $value; -				break; - -			case 'container_guid': -				// this can't be empty. -				if (!empty($value)) { -					if (can_write_to_container($user->getGUID(), $value)) { -						$info[$name] = $value; -					} else { -						$error = elgg_echo("blog:error:cannot_write_to_container"); -					} -				} else { -					unset($info[$name]); -				} -				break; +function blog_make_excerpt($text) { +	return substr(strip_tags($text), 0, 300); +} -			// don't try to set the guid -			case 'guid': -				unset($info['guid']); -				break; +/** + * Extended class to override the time_created + */ +class ElggBlog extends ElggObject { +	protected function initialise_attributes() { +		parent::initialise_attributes(); -			default: -				$info[$name] = $value; -				break; -		} +		// override the default file subtype. +		$this->attributes['subtype'] = 'blog';  	} -	// assign values to the entity, stopping on error. -	if (!$error) { -		foreach ($info as $name => $value) { -			if (!$blog->$name = $value) { -				$error = elgg_echo('blog:error:cannot_save'); -				break; -			} +	/** +	 * Override the value returned for time_created +	 */ +	public function __get($name) { +		if ($name == 'time_created') { +			$name = 'time_created';  		} -	} - -	// only try to save base entity if no errors -	if (!$error && !$blog->save()) { -		$error = elgg_echo('blog:error:cannot_save'); -	} -	if ($error) { -		$return = array( -			'success' => FALSE, -			'message' => $error -		); -	} else { -		$return = array( -			'success' => TRUE, -			'message' => elgg_echo('blog:message:saved') -		); +		return $this->get($name);  	} - -	return $return; -} - -/** - * Returns an appropriate excerpt for a blog. - * - * @param string $text - * @return string - */ -function blog_make_excerpt($text) { -	return substr(strip_tags($text), 0, 300);  }
\ No newline at end of file | 
