diff options
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/classes/ElggEntity.php | 23 | ||||
| -rw-r--r-- | engine/classes/ElggMenuItem.php | 5 | ||||
| -rw-r--r-- | engine/classes/ElggPAM.php | 7 | ||||
| -rw-r--r-- | engine/classes/ElggUser.php | 8 | ||||
| -rw-r--r-- | engine/handlers/cache_handler.php | 15 | ||||
| -rw-r--r-- | engine/lib/actions.php | 6 | ||||
| -rw-r--r-- | engine/lib/cache.php | 2 | ||||
| -rw-r--r-- | engine/lib/deprecated-1.8.php | 28 | ||||
| -rw-r--r-- | engine/lib/elgglib.php | 76 | ||||
| -rw-r--r-- | engine/lib/entities.php | 2 | ||||
| -rw-r--r-- | engine/lib/metastrings.php | 2 | ||||
| -rw-r--r-- | engine/lib/output.php | 2 | ||||
| -rw-r--r-- | engine/lib/sessions.php | 4 | ||||
| -rw-r--r-- | engine/lib/upgrade.php | 2 | ||||
| -rw-r--r-- | engine/lib/upgrades/2011010101.php | 18 | ||||
| -rw-r--r-- | engine/lib/upgrades/2011032300-1.8_svn-update_default_widgets-7daf5a459720d06d.php | 60 | ||||
| -rw-r--r-- | engine/lib/widgets.php | 1 | ||||
| -rw-r--r-- | engine/tests/api/entity_getter_functions.php | 51 | ||||
| -rw-r--r-- | engine/tests/api/helpers.php | 4 | ||||
| -rw-r--r-- | engine/tests/objects/entities.php | 2 | ||||
| -rw-r--r-- | engine/tests/services/api.php | 8 | 
21 files changed, 177 insertions, 149 deletions
diff --git a/engine/classes/ElggEntity.php b/engine/classes/ElggEntity.php index cfdaede71..79b8c2a4e 100644 --- a/engine/classes/ElggEntity.php +++ b/engine/classes/ElggEntity.php @@ -246,18 +246,20 @@ abstract class ElggEntity extends ElggData implements  	 * @return mixed The value, or NULL if not found.  	 */  	public function getMetaData($name) { -		if ((int) ($this->guid) > 0) { -			$md = elgg_get_metadata(array( -				'guid' => $this->getGUID(), -				'metadata_name' => $name, -				'limit' => 0, -			)); -		} else { +		if ((int) ($this->guid) == 0) {  			if (isset($this->temp_metadata[$name])) {  				return $this->temp_metadata[$name]; +			} else { +				return null;  			}  		} +		$md = elgg_get_metadata(array( +			'guid' => $this->getGUID(), +			'metadata_name' => $name, +			'limit' => 0, +		)); +  		if ($md && !is_array($md)) {  			return $md->value;  		} elseif (count($md) == 1) { @@ -717,6 +719,9 @@ abstract class ElggEntity extends ElggData implements  	 *  	 * @warning By default, annotations are private.  	 * +	 * @warning Annotating an unsaved entity more than once with the same name +	 *          will only save the last annotation. +	 *  	 * @param string $name      Annotation name  	 * @param mixed  $value     Annotation value  	 * @param int    $access_id Access ID @@ -761,8 +766,10 @@ abstract class ElggEntity extends ElggData implements  			}  			return elgg_get_annotations($options); +		} else if (isset($this->temp_annotations[$name])) { +			return array($this->temp_annotations[$name]);  		} else { -			return $this->temp_annotations[$name]; +			return array();  		}  	} diff --git a/engine/classes/ElggMenuItem.php b/engine/classes/ElggMenuItem.php index 98a3d7d24..bf6cf2edc 100644 --- a/engine/classes/ElggMenuItem.php +++ b/engine/classes/ElggMenuItem.php @@ -127,6 +127,11 @@ class ElggMenuItem {  			$item->setLinkClass($options['class']);  			unset($options['class']);  		} + +		if (isset($options['item_class'])) { +			$item->setItemClass($options['item_class']); +			unset($options['item_class']); +		}  		foreach ($options as $key => $value) {  			$item->$key = $value; diff --git a/engine/classes/ElggPAM.php b/engine/classes/ElggPAM.php index 37436fba3..0681a909b 100644 --- a/engine/classes/ElggPAM.php +++ b/engine/classes/ElggPAM.php @@ -41,9 +41,14 @@ class ElggPAM {  	 * @param array $credentials Credentials array dependant on policy type  	 * @return bool  	 */ -	public function authenticate($credentials) { +	public function authenticate($credentials = array()) {  		global $_PAM_HANDLERS; +		if (!isset($_PAM_HANDLERS[$this->policy]) || +			!is_array($_PAM_HANDLERS[$this->policy])) { +			return false; +		} +  		$authenticated = false;  		foreach ($_PAM_HANDLERS[$this->policy] as $k => $v) { diff --git a/engine/classes/ElggUser.php b/engine/classes/ElggUser.php index 5c65a4d66..1af4cdc3a 100644 --- a/engine/classes/ElggUser.php +++ b/engine/classes/ElggUser.php @@ -59,9 +59,11 @@ class ElggUser extends ElggEntity  				// See if this is a username  			} else if (is_string($guid)) { -				$guid = get_user_by_username($guid); -				foreach ($guid->attributes as $key => $value) { -					$this->attributes[$key] = $value; +				$user = get_user_by_username($guid); +				if ($user) { +					foreach ($user->attributes as $key => $value) { +						$this->attributes[$key] = $value; +					}  				}  				// Is $guid is an ElggUser? Use a copy constructor diff --git a/engine/handlers/cache_handler.php b/engine/handlers/cache_handler.php index 05c35171b..7d6f42dc3 100644 --- a/engine/handlers/cache_handler.php +++ b/engine/handlers/cache_handler.php @@ -3,7 +3,7 @@   * Cache handler.   *   * External access to cached CSS and JavaScript views. The cached file URLS - * should be of the form: cache/<type>/<view>/<viewtype>/<unique_id> where + * should be of the form: cache/<type>/<viewtype>/<name/of/view>.<unique_id>.<type> where   * type is either css or js, view is the name of the cached view, and   * unique_id is an identifier that is updated every time the cache is flushed.   * The simplest way to maintain a unique identifier is to use the lastcache @@ -50,13 +50,16 @@ if (!$request || !$simplecache_enabled) {  	echo 'Cache error: bad request';  	exit;  } -$request = explode('/', $request); +// testing showed regex to be marginally faster than array / string functions over 100000 reps +// it won't make a difference in real life and regex is easier to read. +// <type>/<viewtype>/<name/of/view.and.dots>.<ts>.<type> +$regex = '|([^/]+)/([^/]+)/(.+)\.([^\.]+)\.([^.]+)$|'; +preg_match($regex, $request, $matches); -//cache/<type>/<view>/<viewtype>/ -$type = $request[0]; -$view = $request[1]; -$viewtype = $request[2]; +$type = $matches[1]; +$viewtype = $matches[2]; +$view = $matches[3];  switch ($type) {  	case 'css': diff --git a/engine/lib/actions.php b/engine/lib/actions.php index 407b99f87..47e4dd4a4 100644 --- a/engine/lib/actions.php +++ b/engine/lib/actions.php @@ -113,7 +113,11 @@ function action($action, $forwarder = "") {  		register_error(elgg_echo('actionundefined', array($action)));  	} -	forward($forwarder); +	if (!empty($forwarder)) { +		forward($forwarder); +	} else { +		forward(REFERER); +	}  }  /** diff --git a/engine/lib/cache.php b/engine/lib/cache.php index d4888f9d9..8529ae7fa 100644 --- a/engine/lib/cache.php +++ b/engine/lib/cache.php @@ -166,7 +166,7 @@ function elgg_get_simplecache_url($type, $view) {  	if (elgg_is_simplecache_enabled()) {  		$viewtype = elgg_get_viewtype(); -		$url = elgg_get_site_url() . "cache/$type/$view/$viewtype/$view.$lastcache.$type"; +		$url = elgg_get_site_url() . "cache/$type/$viewtype/$view.$lastcache.$type";  	} else {  		$url = elgg_get_site_url() . "$type/$view.$lastcache.$type";  	} diff --git a/engine/lib/deprecated-1.8.php b/engine/lib/deprecated-1.8.php index 165546d31..bb52881cd 100644 --- a/engine/lib/deprecated-1.8.php +++ b/engine/lib/deprecated-1.8.php @@ -115,7 +115,7 @@ function get_entities_from_annotations_calculate_x($sum = "sum", $entity_type =  	$options['limit'] = $limit;  	$options['offset'] = $offset; -	$options['order_by'] = "calculated $orderdir"; +	$options['order_by'] = "calculation $orderdir";  	$options['count'] = $count; @@ -179,7 +179,7 @@ function get_entities_from_annotation_count($entity_type = "", $entity_subtype =  	$options['limit'] = $limit;  	$options['offset'] = $offset; -	$options['order_by'] = "calculated $orderdir"; +	$options['order_by'] = "calculation $orderdir";  	$options['count'] = $count; @@ -241,7 +241,7 @@ function list_entities_from_annotation_count($entity_type = "", $entity_subtype  	$options['limit'] = $limit; -	$options['order_by'] = "calculated $orderdir"; +	$options['order_by'] = "calculation $orderdir";  	return elgg_get_entities_from_annotation_calculation($options);  } @@ -1152,10 +1152,22 @@ function list_entities_from_metadata($meta_name, $meta_value = "", $entity_type  	$offset = (int)get_input('offset');  	$limit = (int)$limit; -	$options = array('metadata_name' => $meta_name, 'metadata_value' => $meta_value, -		'types' => $entity_type, 'subtypes' => $entity_subtype, 'owner_guid' => $owner_guid, -		'limit' => $limit, 'offset' => $offset, 'count' => TRUE, -		'metadata_case_sensitive' => $case_sensitive); +	$options = array( +		'metadata_name' => $meta_name, +		'metadata_value' => $meta_value, +		'types' => $entity_type, +		'subtypes' => $entity_subtype, +		'limit' => $limit, +		'offset' => $offset, +		'count' => TRUE, +		'metadata_case_sensitive' => $case_sensitive +	); + +	// previous function allowed falsy $owner_guid for anything +	if ($owner_guid) { +		$options['owner_guid'] = $owner_guid; +	} +  	$count = elgg_get_entities_from_metadata($options);  	$options['count'] = FALSE; @@ -3492,7 +3504,7 @@ $asc = false, $fullview = true, $listtypetoggle = false, $pagination = true, $or  	$options['limit'] = $limit; -	$options['order_by'] = "calculated $orderdir"; +	$options['order_by'] = "calculation $orderdir";  	return elgg_get_entities_from_annotation_calculation($options);  } diff --git a/engine/lib/elgglib.php b/engine/lib/elgglib.php index 1aef48ef4..6c94133df 100644 --- a/engine/lib/elgglib.php +++ b/engine/lib/elgglib.php @@ -400,7 +400,7 @@ function elgg_get_loaded_external_files($type, $location) {  	if (isset($CONFIG->externals) && isset($CONFIG->externals[$type])) {  		$items = array_values($CONFIG->externals[$type]); -		$callback = "return \$v->loaded == true && \$v->location == $location;"; +		$callback = "return \$v->loaded == true && \$v->location == '$location';";  		$items = array_filter($items, create_function('$v', $callback));  		if ($items) {  			usort($items, create_function('$a,$b','return $a->priority >= $b->priority;')); @@ -1685,21 +1685,7 @@ function _elgg_shutdown_hook() {   * @elgg_pagehandler js   */  function elgg_js_page_handler($page) { -	if (is_array($page) && sizeof($page)) { -		$js = implode('/', $page); -		$js = substr($js, 0, strpos($js, '.')); -		$return = elgg_view('js/' . $js); - -		header('Content-type: text/javascript'); - -		// @todo should js be cached when simple cache turned off -		//header('Expires: ' . date('r', time() + 864000)); -		//header("Pragma: public"); -		//header("Cache-Control: public"); -		//header("Content-Length: " . strlen($return)); - -		echo $return; -	} +	return elgg_cacheable_view_page_handler($page, 'js');  }  /** @@ -1749,18 +1735,60 @@ function elgg_css_page_handler($page) {  		// default css  		$page[0] = 'elgg';  	} +	 +	return elgg_cacheable_view_page_handler($page, 'css'); +} + +/** + * Serves a JS or CSS view with headers for caching. + * + * /<css||js>/name/of/view.<last_cache>.<css||js> + * + * @param array  $page  The page array + * @param string $type  The type: js or css + * + * @return mixed + */ +function elgg_cacheable_view_page_handler($page, $type) { + +	switch ($type) { +		case 'js': +			$content_type = 'text/javascript'; +			break; + +		case 'css': +			$content_type = 'text/css'; +			break; + +		default: +			return false; +			break; +	} -	$css = substr($page[0], 0, strpos($page[0], '.')); -	$return = elgg_view("css/$css"); +	if ($page) { +		// the view file names can have multiple dots +		// eg: views/default/js/calendars/jquery.fullcalendar.min.php +		// translates to the url /js/calendars/jquery.fullcalendar.min.<ts>.js +		// and the view js/calendars/jquery.fullcalendar.min +		// we ignore the last two dots for the ts and the ext. +		$page = implode('/', $page); +		$regex = '|(.+)\.([^\.]+)\.([^.]+)$|'; +		preg_match($regex, $page, $matches); +		$view = $matches[1]; +		$return = elgg_view("$type/$view"); -	header("Content-type: text/css", true); +		header("Content-type: $content_type"); -	// @todo should css be cached when simple cache is turned off -	//header('Expires: ' . date('r', time() + 86400000), true); -	//header("Pragma: public", true); -	//header("Cache-Control: public", true); +		// @todo should js be cached when simple cache turned off +		//header('Expires: ' . date('r', time() + 864000)); +		//header("Pragma: public"); +		//header("Cache-Control: public"); +		//header("Content-Length: " . strlen($return)); -	echo $return; +		echo $return; +	} + +	return true;  }  /** diff --git a/engine/lib/entities.php b/engine/lib/entities.php index 742630cc7..685c68a5b 100644 --- a/engine/lib/entities.php +++ b/engine/lib/entities.php @@ -740,7 +740,7 @@ function elgg_entity_exists($guid) {   * 	type_subtype_pairs => NULL|ARR (array('type' => 'subtype'))   *                        (type = '$type' AND subtype = '$subtype') pairs   * - *	entity_guids => NULL|ARR Array of entity guids + *	guids => NULL|ARR Array of entity guids   *   * 	owner_guids => NULL|ARR Array of owner guids   * diff --git a/engine/lib/metastrings.php b/engine/lib/metastrings.php index 6db4e6d7c..604c7f765 100644 --- a/engine/lib/metastrings.php +++ b/engine/lib/metastrings.php @@ -75,7 +75,7 @@ function get_metastring_id($string, $case_sensitive = TRUE) {  				$ids[] = $metaString->id;  			}  			return $ids; -		} else if ($metaStrings) { +		} else if (isset($metaStrings[0])) {  			$row = $metaStrings[0];  		}  	} diff --git a/engine/lib/output.php b/engine/lib/output.php index 8c2a3d50d..3f35a1576 100644 --- a/engine/lib/output.php +++ b/engine/lib/output.php @@ -170,7 +170,7 @@ function elgg_format_attributes(array $attrs) {  		}  		// ignore $vars['entity'] => ElggEntity stuff -		if (is_not_null($val) && (is_array($val) || !is_object($var))) { +		if (is_not_null($val) && (is_array($val) || !is_object($val))) {  			// allow $vars['class'] => array('one', 'two');  			// @todo what about $vars['style']? Needs to be semi-colon separated... diff --git a/engine/lib/sessions.php b/engine/lib/sessions.php index 5d45cc73d..ae42956a9 100644 --- a/engine/lib/sessions.php +++ b/engine/lib/sessions.php @@ -155,9 +155,9 @@ function elgg_authenticate($username, $password) {   * @return bool   * @throws LoginException   */ -function pam_auth_userpass($credentials = NULL) { +function pam_auth_userpass(array $credentials = array()) { -	if (!is_array($credentials) || !isset($credentials['username']) || !isset($credentials['password'])) { +	if (!isset($credentials['username']) || !isset($credentials['password'])) {  		return false;  	} diff --git a/engine/lib/upgrade.php b/engine/lib/upgrade.php index 755c100dd..85810956b 100644 --- a/engine/lib/upgrade.php +++ b/engine/lib/upgrade.php @@ -147,6 +147,8 @@ function elgg_get_upgrade_files($upgrade_path = null) {  		$upgrade_files[] = $upgrade_file;  	} +	sort($upgrade_files); +  	return $upgrade_files;  } diff --git a/engine/lib/upgrades/2011010101.php b/engine/lib/upgrades/2011010101.php index be1adac1a..9dbaff1e4 100644 --- a/engine/lib/upgrades/2011010101.php +++ b/engine/lib/upgrades/2011010101.php @@ -73,3 +73,21 @@ remove_metadata($site->guid, 'pluginorder');  remove_metadata($site->guid, 'enabled_plugins');  elgg_set_ignore_access($old_id); + +/** + * @hack + * + * We stop the upgrade at this point because plugins weren't given the chance to + * load due to the new plugin code introduced with Elgg 1.8. Instead, we manually + * set the version and start the upgrade process again. + * + * The variables from upgrade_code() are available because this script was included + */ +if ($upgrade_version > $version) { +	datalist_set('version', $upgrade_version); +} + +$processed_upgrades = array_unique($processed_upgrades); +datalist_set('processed_upgrades', serialize($processed_upgrades)); + +forward('upgrade.php'); diff --git a/engine/lib/upgrades/2011032300-1.8_svn-update_default_widgets-7daf5a459720d06d.php b/engine/lib/upgrades/2011032300-1.8_svn-update_default_widgets-7daf5a459720d06d.php deleted file mode 100644 index 6a5f2fa02..000000000 --- a/engine/lib/upgrades/2011032300-1.8_svn-update_default_widgets-7daf5a459720d06d.php +++ /dev/null @@ -1,60 +0,0 @@ -<?php -/** - * Elgg 1.8-svn upgrade 2011032300 - * update_default_widgets - * - * Pre-1.8, default widgets were stored as metadata on a defaultwidgets object. - * Now they are stored as widget objects owned by the site. - */ - -$object = elgg_get_entities(array( -	'type' => 'object', -	'subtype' => 'moddefaultwidgets', -	'limit' => 1, -)); - -if (!$object) { -	// nothing to upgrade -	return true; -} - -$object = $object[0]; - -$site = elgg_get_site_entity(); - -$ia = elgg_set_ignore_access(true); -foreach (array('profile', 'dashboard') as $context) { -	if (isset($object->$context)) { -		elgg_push_context($context); -		elgg_push_context('default_widgets'); -		elgg_push_context('widgets'); - -		// deserialize the widget information -		list($left, $middle, $right) = split('%%', $object->$context); -		$left_widgets = split('::', $left); -		$middle_widgets = split('::', $middle); -		$right_widgets = split('::', $right); - -		// 1st column is right column in default theme -		$widgets = array( -			1 => array_reverse($right_widgets), -			2 => array_reverse($middle_widgets), -			3 => array_reverse($left_widgets), -		); - -		foreach ($widgets as $column => $column_widgets) { -			foreach ($column_widgets as $handler) { -				$guid = elgg_create_widget($site->getGUID(), $handler, $context); -				if ($guid) { -					$widget = get_entity($guid); -					$widget->move($column, 0); -				} -			} -		} - -		elgg_pop_context(); -		elgg_pop_context(); -		elgg_pop_context(); -	} -} -elgg_set_ignore_access($ia); diff --git a/engine/lib/widgets.php b/engine/lib/widgets.php index b20f92f74..cc3cf20e4 100644 --- a/engine/lib/widgets.php +++ b/engine/lib/widgets.php @@ -272,6 +272,7 @@ function elgg_widgets_init() {  	elgg_register_action('widgets/add');  	elgg_register_action('widgets/move');  	elgg_register_action('widgets/delete'); +	elgg_register_action('widgets/upgrade', '', 'admin');  	run_function_once("elgg_widget_run_once");  } diff --git a/engine/tests/api/entity_getter_functions.php b/engine/tests/api/entity_getter_functions.php index 1633cbe19..aef7a991e 100644 --- a/engine/tests/api/entity_getter_functions.php +++ b/engine/tests/api/entity_getter_functions.php @@ -1341,7 +1341,7 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$invalid_md_name = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; +		$e->$invalid_md_name = $md_value;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1406,11 +1406,13 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		// make some bad ones  		$invalid_md_name = 'test_metadata_name_' . rand(); +		$invalid_md_name2 = 'test_metadata_name_' . rand(); +		$invalid_md_name3 = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; -		$e->$md_name2 = $invalid_md_value; -		$e->$md_name3 = $invalid_md_value; +		$e->$invalid_md_name = $md_value; +		$e->$invalid_md_name2 = $md_value2; +		$e->$invalid_md_name3 = $md_value3;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1483,10 +1485,11 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		// make some bad ones  		$invalid_md_name = 'test_metadata_name_' . rand(); +		$invalid_md_name2 = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; -		$e->$md_name2 = $invalid_md_value; +		$e->$invalid_md_name = $md_value; +		$e->$invalid_md_name2 = $md_value2;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1572,11 +1575,11 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$invalid_md_name = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; -		$e->$md_name2 = $invalid_md_value; -		$e->$md_name3 = $invalid_md_value; -		$e->$md_name4 = $invalid_md_value; -		$e->$md_name5 = $invalid_md_value; +		$e->$invalid_md_name = $md_value; +		$e->$md_name2 = $md_value2; +		$e->$md_name3 = $md_value3; +		$e->$md_name4 = $md_value4; +		$e->$md_name5 = $md_value5;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1649,7 +1652,7 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$invalid_md_name = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; +		$e->$invalid_md_name = $md_value;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1694,7 +1697,7 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$invalid_md_name = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; +		$e->$invalid_md_name = $md_value;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1758,7 +1761,7 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$invalid_md_name = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; +		$e->$invalid_md_name = $md_value;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1836,7 +1839,7 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$invalid_md_name = 'test_metadata_name_' . rand();  		$e = new ElggObject();  		$e->subtype = $subtype; -		$e->$md_name = $invalid_md_value; +		$e->$invalid_md_name = $md_value;  		$e->save();  		$guids[] = $e->getGUID(); @@ -1888,33 +1891,32 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$subtypes = $this->getRandomValidSubtypes(array('object'), 1);  		$subtype = $subtypes[0];  		$md_name = 'test_metadata_name_' . rand(); -		$md_value = 2;  		$guids = array();  		$valid_guids = array();  		// our targets  		$valid = new ElggObject();  		$valid->subtype = $subtype; -		$valid->$md_name = $md_value; +		$valid->$md_name = 1;  		$valid->save();  		$guids[] = $valid->getGUID();  		$valid_guids[] = $valid->getGUID();  		$valid2 = new ElggObject();  		$valid2->subtype = $subtype; -		$valid2->$md_name = 3; +		$valid2->$md_name = 2;  		$valid2->save();  		$guids[] = $valid->getGUID();  		$valid_guids[] = $valid2->getGUID();  		$valid3 = new ElggObject();  		$valid3->subtype = $subtype; -		$valid3->$md_name = 1; +		$valid3->$md_name = 3;  		$valid3->save();  		$guids[] = $valid->getGUID();  		$valid_guids[] = $valid3->getGUID(); -		$md_valid_values = array($md_value, $md_value2); +		$md_valid_values = array(1, 2, 3);  		$options = array(  			'type' => 'object', @@ -1947,33 +1949,32 @@ class ElggCoreEntityGetterFunctionsTest extends ElggCoreUnitTest {  		$subtypes = $this->getRandomValidSubtypes(array('object'), 1);  		$subtype = $subtypes[0];  		$md_name = 'test_metadata_name_' . rand(); -		$md_value = 'b';  		$guids = array();  		$valid_guids = array();  		// our targets  		$valid = new ElggObject();  		$valid->subtype = $subtype; -		$valid->$md_name = $md_value; +		$valid->$md_name = 'a';  		$valid->save();  		$guids[] = $valid->getGUID();  		$valid_guids[] = $valid->getGUID();  		$valid2 = new ElggObject();  		$valid2->subtype = $subtype; -		$valid2->$md_name = 'c'; +		$valid2->$md_name = 'b';  		$valid2->save();  		$guids[] = $valid->getGUID();  		$valid_guids[] = $valid2->getGUID();  		$valid3 = new ElggObject();  		$valid3->subtype = $subtype; -		$valid3->$md_name = 'a'; +		$valid3->$md_name = 'c';  		$valid3->save();  		$guids[] = $valid->getGUID();  		$valid_guids[] = $valid3->getGUID(); -		$md_valid_values = array($md_value, $md_value2); +		$md_valid_values = array('a', 'b', 'c');  		$options = array(  			'type' => 'object', diff --git a/engine/tests/api/helpers.php b/engine/tests/api/helpers.php index 1362b3c9d..461627547 100644 --- a/engine/tests/api/helpers.php +++ b/engine/tests/api/helpers.php @@ -109,7 +109,7 @@ class ElggCoreHelpersTest extends ElggCoreUnitTest {  		$this->assertIdentical('http://test1.com', $CONFIG->externals['js']['key']->url);  		// send a bad url -		$result = elgg_register_js(); +		$result = @elgg_register_js('bad');  		$this->assertFalse($result);  	} @@ -140,7 +140,7 @@ class ElggCoreHelpersTest extends ElggCoreUnitTest {  		$result = elgg_unregister_js('id1');  		$this->assertTrue($result); -		$this->assertNULL($CONFIG->externals['js']['head']['id1']); +		@$this->assertNULL($CONFIG->externals['js']['head']['id1']);  		$result = elgg_unregister_js('id1');  		$this->assertFalse($result); diff --git a/engine/tests/objects/entities.php b/engine/tests/objects/entities.php index ca3abb274..c04bc60ff 100644 --- a/engine/tests/objects/entities.php +++ b/engine/tests/objects/entities.php @@ -107,7 +107,7 @@ class ElggCoreEntityTest extends ElggCoreUnitTest {  		// set and check temp annotation  		$this->assertTrue($this->entity->annotate('non_existent', 'testing')); -		$this->assertIdentical($this->entity->getAnnotations('non_existent'), 'testing'); +		$this->assertIdentical($this->entity->getAnnotations('non_existent'), array('testing'));  		$this->assertTrue(array_key_exists('non_existent', $this->entity->expose_annotations()));  		// save entity and check for annotation diff --git a/engine/tests/services/api.php b/engine/tests/services/api.php index 39951da1c..3d07c0bbb 100644 --- a/engine/tests/services/api.php +++ b/engine/tests/services/api.php @@ -19,7 +19,7 @@ class ElggCoreServicesApiTest extends ElggCoreUnitTest {  // expose_function  	public function testExposeFunctionNoMethod() {  		try { -			expose_function(); +			@expose_function();  			$this->assertTrue(FALSE);  		} catch (Exception $e) {  			$this->assertIsA($e, 'InvalidParameterException'); @@ -29,7 +29,7 @@ class ElggCoreServicesApiTest extends ElggCoreUnitTest {  	public function testExposeFunctionNoFunction() {  		try { -			expose_function('test'); +			@expose_function('test');  			$this->assertTrue(FALSE);  		} catch (Exception $e) {  			$this->assertIsA($e, 'InvalidParameterException'); @@ -39,7 +39,7 @@ class ElggCoreServicesApiTest extends ElggCoreUnitTest {  	public function testExposeFunctionBadParameters() {  		try { -			expose_function('test', 'test', 'BAD'); +			@expose_function('test', 'test', 'BAD');  			$this->assertTrue(FALSE);  		} catch (Exception $e) {  			$this->assertIsA($e, 'InvalidParameterException'); @@ -59,7 +59,7 @@ class ElggCoreServicesApiTest extends ElggCoreUnitTest {  	public function testExposeFunctionBadHttpMethod() {  		try { -			expose_function('test', 'test', null, '', 'BAD'); +			@expose_function('test', 'test', null, '', 'BAD');  			$this->assertTrue(FALSE);  		} catch (Exception $e) {  			$this->assertIsA($e, 'InvalidParameterException');  | 
