Plugin($id) ; $this->name = "doaprdf"; $this->text = "DoaPRDF!"; // To show in the tabs, use... //$this->_addHook("user_personal_links");//to make a link to the user's personal part of the plugin //$this->_addHook("usermenu"); //$this->_addHook("groupmenu"); // To put into the project tabs //$this->_addHook("groupisactivecheckbox"); // The "use ..." checkbox in editgroupinfo //$this->_addHook("groupisactivecheckboxpost"); // //$this->_addHook("userisactivecheckbox"); // The "use ..." checkbox in user account //$this->_addHook("userisactivecheckboxpost"); // //$this->_addHook("project_admin_plugins"); // to show up in the admin page fro group $this->_addHook("script_accepted_types"); $this->_addHook("content_negociated_project_home"); } /* function CallHook ($hookname, &$params) { global $use_doaprdfplugin,$G_SESSION,$HTML; if ($hookname == "usermenu") { $text = $this->text; // this is what shows in the tab if ($G_SESSION->usesPlugin("doaprdf")) { $param = '?type=user&id=' . $G_SESSION->getId() . "&pluginname=" . $this->name; // we indicate the part we're calling is the user one echo ' | ' . $HTML->PrintSubMenu (array ($text), array ('/plugins/doaprdf/index.php' . $param )); } } elseif ($hookname == "groupmenu") { $group_id=$params['group']; $project = &group_get_object($group_id); if (!$project || !is_object($project)) { return; } if ($project->isError()) { return; } if (!$project->isProject()) { return; } if ( $project->usesPlugin ( $this->name ) ) { $params['TITLES'][]=$this->text; $params['DIRS'][]=util_make_url ('/plugins/doaprdf/index.php?type=group&id=' . $group_id . "&pluginname=" . $this->name) ; // we indicate the part we're calling is the project one } else { $params['TITLES'][]=$this->text." is [Off]"; $params['DIRS'][]=''; } (($params['toptab'] == $this->name) ? $params['selected']=(count($params['TITLES'])-1) : '' ); } elseif ($hookname == "groupisactivecheckbox") { //Check if the group is active // this code creates the checkbox in the project edit public info page to activate/deactivate the plugin $group_id=$params['group']; $group = &group_get_object($group_id); echo "
' ; echo util_make_link ("/plugins/doaprdf/index.php?id=$userid&type=user&pluginname=".$this->name, _('View Personal DoaPRDF') ); echo '
'; } } elseif ($hookname == "project_admin_plugins") { // this displays the link in the project admin options page to it's DoaPRDF administration $group_id = $params['group_id']; $group = &group_get_object($group_id); if ( $group->usesPlugin ( $this->name ) ) { echo ''.util_make_link ("/plugins/doaprdf/admin/index.php?id=".$group->getID().'&type=admin&pluginname='.$this->name, _('DoaPRDF Admin')).'
' ; } } elseif ($hookname == "blahblahblah") { // ... } } */ /** * Declares itself as accepting RDF XML on /users * @param unknown_type $params */ function script_accepted_types (&$params) { $script = $params['script']; if ($script == 'project_home') { $params['accepted_types'][] = 'application/rdf+xml'; } } /** * Outputs user's FOAF profile * @param unknown_type $params */ function content_negociated_project_home (&$params) { $projectname = $params['groupname']; $accept = $params['accept']; if($accept == 'application/rdf+xml') { $params['content_type'] = 'application/rdf+xml'; $params['content'] = '