diff options
Diffstat (limited to 'mod/bookmarks/start.php')
| -rw-r--r-- | mod/bookmarks/start.php | 118 | 
1 files changed, 61 insertions, 57 deletions
| diff --git a/mod/bookmarks/start.php b/mod/bookmarks/start.php index 9b7e1566b..b775bf9b1 100644 --- a/mod/bookmarks/start.php +++ b/mod/bookmarks/start.php @@ -1,5 +1,4 @@  <?php -  /**   * Elgg Bookmarks plugin   * @@ -12,23 +11,19 @@  // Bookmarks initialisation function  function bookmarks_init() { -  	// Grab the config global  	global $CONFIG;  	//add a tools menu option  	if (isloggedin()) { -		add_menu(elgg_echo('bookmarks'), $CONFIG->wwwroot . "pg/bookmarks/" . $_SESSION['user']->username . '/items'); - -		// add "bookmark this" to owner block -		elgg_extend_view('owner_block/extend', 'bookmarks/owner_block'); +		add_menu(elgg_echo('bookmarks:yours'), $CONFIG->wwwroot . "pg/bookmarks/" . $_SESSION['user']->username . '/items');  	}  	// Register a page handler, so we can have nice URLs -	register_page_handler('bookmarks','bookmarks_page_handler'); +	register_page_handler('bookmarks', 'bookmarks_page_handler');  	// Add our CSS -	elgg_extend_view('css','bookmarks/css'); +	elgg_extend_view('css', 'bookmarks/css');  	// Register granular notification for this type  	if (is_callable('register_notification_object')) { @@ -58,52 +53,38 @@ function bookmarks_init() {   */  function bookmarks_pagesetup() {  	global $CONFIG; - -	$page_owner = page_owner_entity(); - +			 +	// Set up menu for logged in users  	//add submenu options  	if (get_context() == "bookmarks") { -  		if (isloggedin()) { -			// link to add bookmark form -			if ($page_owner instanceof ElggGroup) { -				if ($page_owner->isMember(get_loggedin_user())) { -					add_submenu_item(elgg_echo('bookmarks:add'), $CONFIG->wwwroot."pg/bookmarks/" . $page_owner->username . "/add"); -				} -			} else { -				add_submenu_item(elgg_echo('bookmarks:add'), $CONFIG->wwwroot."pg/bookmarks/" . $_SESSION['user']->username . "/add"); -				add_submenu_item(elgg_echo('bookmarks:inbox'),$CONFIG->wwwroot."pg/bookmarks/" . $_SESSION['user']->username . "/inbox"); -			}  			if (page_owner()) { -				add_submenu_item(sprintf(elgg_echo('bookmarks:read'), $page_owner->name),$CONFIG->wwwroot."pg/bookmarks/" . $page_owner->username . "/items"); +				$page_owner = page_owner_entity();	 +				add_submenu_item(elgg_echo('bookmarks:read'),$CONFIG->wwwroot."pg/bookmarks/" . $page_owner->username . "/items");  			} -			if (!$page_owner instanceof ElggGroup) { -				add_submenu_item(elgg_echo('bookmarks:friends'),$CONFIG->wwwroot."pg/bookmarks/" . $_SESSION['user']->username . "/friends"); +			if(!$page_owner instanceof ElggGroup) +				add_submenu_item(elgg_echo('bookmarks:friends'),$CONFIG->wwwroot."pg/bookmarks/" . $_SESSION['user']->username . "/friends");	  			} -		} - -		if (!$page_owner instanceof ElggGroup) { -			add_submenu_item(elgg_echo('bookmarks:everyone'),$CONFIG->wwwroot."mod/bookmarks/everyone.php"); -		} -		 -		// Bookmarklet -		if ((isloggedin()) && (page_owner()) && (can_write_to_container(0, page_owner()))) { - -			$bmtext = elgg_echo('bookmarks:bookmarklet'); -			if ($page_owner instanceof ElggGroup) { -				$bmtext = elgg_echo('bookmarks:bookmarklet:group'); +			if(!$page_owner instanceof ElggGroup) +				add_submenu_item(elgg_echo('bookmarks:everyone'),$CONFIG->wwwroot."mod/bookmarks/everyone.php"); +					 +			// Bookmarklet +			if ((isloggedin()) && (page_owner()) && (can_write_to_container(0, page_owner()))) { +				$page_owner = page_owner_entity(); +				$bmtext = elgg_echo('bookmarks:bookmarklet'); +				if ($page_owner instanceof ElggGroup) +					$bmtext = elgg_echo('bookmarks:bookmarklet:group'); +				add_submenu_item($bmtext, $CONFIG->wwwroot . "pg/bookmarks/{$page_owner->username}/bookmarklet");  			} -			add_submenu_item($bmtext, $CONFIG->wwwroot . "pg/bookmarks/{$page_owner->username}/bookmarklet");  		} - -	} - -	if ($page_owner instanceof ElggGroup && get_context() == 'groups') { -		if ($page_owner->bookmarks_enable != "no") { -			add_submenu_item(sprintf(elgg_echo("bookmarks:group"),$page_owner->name), $CONFIG->wwwroot . "pg/bookmarks/" . $page_owner->username . '/items'); -		} -	} - +				 +		$page_owner = page_owner_entity(); +				 +		if ($page_owner instanceof ElggGroup && get_context() == 'groups') { +			if($page_owner->bookmarks_enable != "no"){ +	    	add_submenu_item(sprintf(elgg_echo("bookmarks:group"),$page_owner->name), $CONFIG->wwwroot . "pg/bookmarks/" . $page_owner->username . '/items'); +    	} +	}		  }  /** @@ -122,23 +103,25 @@ function bookmarks_page_handler($page) {  	// The second part dictates what we're doing  	if (isset($page[1])) {  		switch($page[1]) { -			case "read":		set_input('guid',$page[2]); -				require(dirname(dirname(dirname(__FILE__))) . "/entities/index.php"); +			case "friends": +				include(dirname(__FILE__) . "/friends.php");   				return true;  				break; -			case "friends":		include(dirname(__FILE__) . "/friends.php"); +			case "items": +				include(dirname(__FILE__) . "/index.php");  				return true;  				break; -			case "inbox":		include(dirname(__FILE__) . "/inbox.php"); +			case "add": +				include(dirname(__FILE__) . "/add.php");  				return true;  				break; -			case "items":		include(dirname(__FILE__) . "/index.php"); +			case "edit": +				set_input('bookmark',$page[2]); +				include(dirname(__FILE__) . "/add.php");   				return true;  				break; -			case "add": 		include(dirname(__FILE__) . "/add.php"); -				return true; -				break; -			case "bookmarklet": include(dirname(__FILE__) . "/bookmarklet.php"); +			case "bookmarklet":  +				include(dirname(__FILE__) . "/bookmarklet.php");   				return true;  				break;  		} @@ -201,6 +184,26 @@ function bookmarks_notify_message($hook, $entity_type, $returnvalue, $params) {  	return null;  } +/** + * A function to generate an internal code to put on the wire in place of the full url + * to save space. + **/ +  +function create_wire_url_code(){ +	$chars = "abcdefghijkmnopqrstuvwxyz023456789"; +	srand((double)microtime()*1000000); +    $i = 0; +    $code = ''; +     +    while ($i <= 4) { +    	$num = rand() % 33; +        $tmp = substr($chars, $num, 1); +        $code = $code . $tmp; +        $i++; +  	} +  	$code = "{{L:" . $code . "}}"; +    return $code; +}  // Make sure the initialisation function is called on initialisation  register_elgg_event_handler('init','system','bookmarks_init'); @@ -209,6 +212,7 @@ register_elgg_event_handler('pagesetup','system','bookmarks_pagesetup');  // Register actions  global $CONFIG;  register_action('bookmarks/add',false,$CONFIG->pluginspath . "bookmarks/actions/add.php"); +register_action('bookmarks/edit',false,$CONFIG->pluginspath . "bookmarks/actions/edit.php");  register_action('bookmarks/delete',false,$CONFIG->pluginspath . "bookmarks/actions/delete.php"); - -?>
\ No newline at end of file +register_action('bookmarks/reference',false,$CONFIG->pluginspath . "bookmarks/actions/reference.php"); +register_action('bookmarks/remove',false,$CONFIG->pluginspath . "bookmarks/actions/remove.php");
\ No newline at end of file | 
