protected static function getSettingsItem(&$target, $source, $name = '', $default = false)
	{
		/**
		 * if $target is already set,
		 * return it unchanged
		 */
		if(isset($target)) {
			return $target;
		}

		$useSource = true;

		/**
		 * if $source is false,
		 * or $source[$name] is not set,
		 * set $useSource false
		 */
		if($source === false || !isset($source[$name])) {
			$useSource = false;
		}

		$target = ($useSource ? $source[$name] : $default);
		return $target;
	}