/**
  *	getProjectGroups - get an array of ProjectGroup objects.
  *
  *	@return	array	The array of ProjectGroups.
  */
 function &getProjectGroups()
 {
     if ($this->projectGroups) {
         return $this->projectGroups;
     }
     if (session_loggedin()) {
         $perm =& $this->Group->getPermission(session_get_user());
         if (!$perm || !is_object($perm) || !$perm->isMember()) {
             $public_flag = '=1';
             $exists = '';
         } else {
             $public_flag = '<3';
             if ($perm->isPMAdmin()) {
                 $exists = '';
             } else {
                 $exists = " AND group_project_id IN (SELECT role_setting.ref_id\n\t\t\t\t\tFROM role_setting, user_group\n\t\t\t\t\tWHERE role_setting.value::integer >= 0\n                                          AND role_setting.section_name = 'pm'\n                                          AND role_setting.ref_id=project_group_list_vw.group_project_id\n                                          \n   \t\t\t\t\t  AND user_group.role_id = role_setting.role_id\n\t\t\t\t\t  AND user_group.user_id='" . user_getid() . "') ";
             }
         }
     } else {
         $public_flag = '=1';
         $exists = '';
     }
     $sql = "SELECT *\n\t\t\tFROM project_group_list_vw\n\t\t\tWHERE group_id='" . $this->Group->getID() . "' \n\t\t\tAND is_public {$public_flag} {$exists}\n\t\t\tORDER BY group_project_id;";
     $result = db_query($sql);
     $rows = db_numrows($result);
     if (!$result || $rows < 1) {
         $this->setError(_('No ProjectGroups Found') . db_error());
         $this->projectGroups = NULL;
     } else {
         while ($arr = db_fetch_array($result)) {
             $this->projectGroups[] = new ProjectGroup($this->Group, $arr['group_project_id'], $arr);
         }
     }
     return $this->projectGroups;
 }
Ejemplo n.º 2
0
/**
 * GForge SCM Library
 *
 * Copyright 2004 (c) GForge LLC
 *
 * @version   $Id$
 * @author Tim Perdue tim@gforge.org
 * @date 2005-04-16
 *
 * This file is part of GForge.
 *
 * GForge is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * GForge is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with GForge; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */
function scm_header($params)
{
    global $HTML, $sys_use_scm;
    if (!$sys_use_scm) {
        exit_disabled();
    }
    $project =& group_get_object($params['group']);
    if (!$project || !is_object($project)) {
        exit_error('Error', 'Could Not Get Project');
    } elseif ($project->isError()) {
        exit_error('Error', $project->getErrorMessage());
    }
    if (!$project->usesSCM()) {
        exit_error('Error', _('Error - This project has turned off SCM.'));
    }
    site_project_header(array('title' => _('SCM Repository'), 'group' => $params['group'], 'toptab' => 'scm'));
    /*
    	Show horizontal links
    */
    if (session_loggedin()) {
        $perm =& $project->getPermission(session_get_user());
        if ($perm && is_object($perm) && !$perm->isError() && $perm->isAdmin()) {
            echo $HTML->subMenu(array(_('SCM'), _('Admin'), _('Reporting')), array('/scm/?group_id=' . $params['group'], '/scm/admin/?group_id=' . $params['group'], '/scm/reporting/?group_id=' . $params['group']));
        }
    }
    echo '<div style="width:99%">';
}
Ejemplo n.º 3
0
function survey_header($params)
{
    global $group_id, $is_admin_page, $HTML, $sys_use_survey;
    if (!$sys_use_survey) {
        exit_disabled();
    }
    $params['toptab'] = 'surveys';
    $params['group'] = $group_id;
    if ($project =& group_get_object($group_id)) {
        if (!$project->usesSurvey()) {
            exit_error(_('Error'), _('This Group Has Turned Off Surveys.'));
        }
        site_project_header($params);
        if ($is_admin_page && $group_id) {
            echo $HTML->subMenu(array(_('Surveys'), _('Admin'), _('Add Survey'), _('Edit Survey'), _('Add Questions'), _('Edit Questions'), _('Show Results')), array('/survey/?group_id=' . $group_id, '/survey/admin/?group_id=' . $group_id, '/survey/admin/add_survey.php?group_id=' . $group_id, '/survey/admin/edit_survey.php?group_id=' . $group_id, '/survey/admin/add_question.php?group_id=' . $group_id, '/survey/admin/show_questions.php?group_id=' . $group_id, '/survey/admin/show_results.php?group_id=' . $group_id));
        } else {
            if (session_loggedin()) {
                $perm =& $project->getPermission(session_get_user());
                if ($perm && is_object($perm) && !$perm->isError() && $perm->isAdmin()) {
                    echo $HTML->subMenu(array(_('Admin')), array('/survey/admin/?group_id=' . $group_id));
                }
            }
        }
    }
    // end if (valid group id)
}
Ejemplo n.º 4
0
    function showRelatedArtifacts()
    {
        $res = $this->getRelatedArtifacts();
        $rows = db_numrows($res);
        if ($rows > 0) {
            $perm =& $this->ProjectGroup->Group->getPermission(session_get_user());
            if (!$perm || !is_object($perm) || !$perm->isPMAdmin()) {
                $is_admin = false;
            } else {
                $is_admin = true;
            }
            echo '
			<h3>' . _('Related Tracker Items') . '</h3>
			<p>';
            $title_arr = array();
            $title_arr[] = _('Task Summary');
            $title_arr[] = _('Tracker');
            $title_arr[] = _('Open Date');
            $is_admin ? $title_arr[] = _('Remove Relation') : '';
            echo $GLOBALS['HTML']->listTableTop($title_arr);
            for ($i = 0; $i < $rows; $i++) {
                echo '
				<tr ' . $GLOBALS['HTML']->boxGetAltRowStyle($i) . '>
					<td>' . util_make_link('/tracker/?func=detail&aid=' . db_result($res, $i, 'artifact_id') . '&group_id=' . db_result($res, $i, 'group_id') . '&atid=' . db_result($res, $i, 'group_artifact_id'), db_result($res, $i, 'summary')) . '</td>
					<td>' . db_result($res, $i, 'name') . '</td>
					<td>' . date(_('Y-m-d H:i'), db_result($res, $i, 'open_date')) . '</td>' . ($is_admin ? '<td><input type="checkbox" name="rem_artifact_id[]" value="' . db_result($res, $i, 'artifact_id') . '"></td>' : '') . '</tr>';
            }
            echo $GLOBALS['HTML']->listTableBottom();
        } else {
            echo '
			<h3>' . _('No Related Tracker Items Have Been Added') . '</h3>';
        }
    }
Ejemplo n.º 5
0
function news_header($params)
{
    global $HTML, $group_id, $news_name, $news_id, $sys_news_group, $sys_use_news;
    if (!$sys_use_news) {
        exit_disabled();
    }
    $params['toptab'] = 'news';
    $params['group'] = $group_id;
    /*
    	Show horizontal links
    */
    if ($group_id && $group_id != $sys_news_group) {
        site_project_header($params);
    } else {
        $HTML->header($params);
    }
    if ($group_id && $group_id != $sys_news_group) {
        $menu_texts = array();
        $menu_links = array();
        $menu_texts[] = _('Submit');
        $menu_links[] = '/news/submit.php?group_id=' . $group_id;
        if (session_loggedin()) {
            $project =& group_get_object($params['group']);
            if ($project && is_object($project) && !$project->isError()) {
                $perm =& $project->getPermission(session_get_user());
                if ($perm && is_object($perm) && !$perm->isError() && $perm->isAdmin()) {
                    $menu_texts[] = _('Admin');
                    $menu_links[] = '/news/admin/?group_id=' . $group_id;
                }
            }
        }
        echo $HTML->subMenu($menu_texts, $menu_links);
    }
}
Ejemplo n.º 6
0
 function header()
 {
     global $HTML, $group_id, $group_public_name, $request, $project;
     $pagename = $request->getArg('pagename');
     $submenu = Template('navbar');
     //group is private
     if (!$project->isPublic()) {
         //if it's a private group, you must be a member of that group
         session_require_perm('project_read', $group_id);
     }
     //for dead projects must be member of admin project
     if (!$project->isActive()) {
         //only SF group can view non-active, non-holding groups
         session_require_global_perm('forge_admin');
     }
     $HTML->header(array('title' => $group_public_name . ': ' . htmlspecialchars($pagename), 'group' => $group_id, 'toptab' => 'wiki', 'submenu' => $submenu->asXML()));
     // Display a warning banner for internal users when the wiki is opened
     // to external users.
     if ($project->getIsExternal()) {
         $external_user = false;
         if (session_loggedin()) {
             $user = session_get_user();
             $external_user = $user->getIsExternal();
         }
         if (!$external_user) {
             $page = $request->getPage();
             if ($page->get('external')) {
                 $external_msg = _("This page is external.");
             }
             echo $HTML->warning_msg(_("This project is shared with third-party users (non Alcatel-Lucent users).") . (isset($external_msg) ? ' ' . $external_msg : ''));
         }
     }
 }
Ejemplo n.º 7
0
function doc_droplist_count($l_group_id, $language_id, $g)
{
    if (session_loggedin()) {
        $perm =& $g->getPermission(session_get_user());
        if (!$perm || !is_object($perm) || !$perm->isMember()) {
            $public_flag = 'AND dd.stateid=1';
        } else {
            $public_flag = 'AND dd.stateid IN (1,4,5)';
        }
    } else {
        $public_flag = 'AND dd.stateid=1';
    }
    $query = "select dd.language_id, sl.name, count(*) as count\n\t\t from doc_groups as dg, doc_data as dd, supported_languages as sl\n\t\t where dg.doc_group = dd.doc_group\n\t\t and dg.group_id = '{$l_group_id}'\n\t\t {$public_flag}\n\t\t and sl.language_id = dd.language_id\n\t\t group by dd.language_id,sl.name";
    $gresult = db_query($query);
    if (db_numrows($gresult) >= 1) {
        print "<form name=\"langchoice\" action=\"index.php?group_id=" . $l_group_id . "\" method=\"post\"><table border=\"0\">" . " <tr><td valign=\"middle\"><strong>" . _('Language') . " </strong></td>" . " <td valign=\"middle\"><select name=\"language_id\">\n\n";
        print "<option value=\"*\">" . _('All Languages') . " </option>";
        while ($grow = db_fetch_array($gresult)) {
            if ($language_id == $grow['language_id']) {
                print "<option value=\"" . $grow['language_id'] . "\" selected=\"selected\">" . $grow['name'] . " (" . $grow['count'] . ") </option>";
            } else {
                print "<option value=\"" . $grow['language_id'] . "\">" . $grow['name'] . " (" . $grow['count'] . ") </option>";
            }
        }
        print "</select></td><td valign=\"middle\"><input type=\"submit\" value=\"" . _('Go') . "\" /></td></tr></table></form>";
    } else {
        echo db_error();
    }
}
Ejemplo n.º 8
0
 function SiteblogCommentForm()
 {
     parent::MailForm();
     global $cgi;
     $this->parseSettings('inc/app/siteblog/forms/comment/settings.php');
     if (isset($cgi->_key) && !empty($cgi->_key)) {
         //edit a comment
         page_title('Editing Comment');
         $comment = db_single('select * from siteblog_comment where id = ?', $cgi->_key);
         $this->widgets['name']->setValue($comment->author);
         $this->widgets['email']->setValue($comment->email);
         $this->widgets['url']->setValue($comment->url);
         $this->widgets['body']->setValue($comment->body);
     } elseif (!isset($cgi->post)) {
         header('Location: ' . site_prefix() . '/index');
         exit;
     } else {
         if (session_valid()) {
             $this->widgets['name']->setValue(session_username());
             $user = session_get_user();
             $this->widgets['email']->setValue($user->email);
             $this->widgets['url']->setValue($user->website);
         }
         $this->widgets['post']->setValue($cgi->post);
         //page_title ('Post a Comment');
     }
     if (!appconf('comments_security')) {
         unset($this->widgets['security_test']);
     }
 }
Ejemplo n.º 9
0
function activate_group($group_id)
{
    global $feedback;
    $group =& group_get_object($group_id);
    if (!$group || !is_object($group)) {
        $feedback .= _('Error creating group object') . '<br />';
        return false;
    } else {
        if ($group->isError()) {
            $feedback .= $group->getErrorMessage() . '<br />';
            return false;
        }
    }
    $feedback .= sprintf(_('Approving Group: %1$s'), $group->getUnixName()) . '<br />';
    if (!$group->approve(session_get_user())) {
        $feedback .= $group->getErrorMessage() . '<br />';
        return false;
    }
    $hook_params = array();
    $hook_params['group_id'] = $group_id;
    plugin_hook("group_approved", $hook_params);
    //plugin webcalendar
    //create webcal group
    plugin_hook('add_cal_group', $group_id);
    return true;
}
Ejemplo n.º 10
0
function siteevent_filter_username($user)
{
    $info = session_get_user($user);
    if (!$info) {
        return $user;
    }
    if (!empty($info->lastname)) {
        return $info->lastname . ', ' . $info->firstname;
    }
    return $user;
}
Ejemplo n.º 11
0
 function SitelliteExportForm()
 {
     parent::MailForm(__FILE__);
     $user = session_get_user();
     $groups = array('' => '- All -');
     foreach (db_pairs('select id, name from sitellite_form_type order by name asc') as $k => $v) {
         $groups[$k] = $v;
     }
     $this->widgets['group']->setValues($groups);
     page_title(intl_get('Export Contacts'));
 }
Ejemplo n.º 12
0
function msg_show_user($user)
{
    if (strstr($user, '@')) {
        return '<a href="mailto:' . $user . '">' . $user . '</a>';
    }
    $info = session_get_user($user);
    if (!$info || empty($info->lastname)) {
        return '<a href="' . site_prefix() . '/index/cms-user-view-action?user='******'">' . $user . '</a>';
    }
    return '<a href="' . site_prefix() . '/index/cms-user-view-action?user='******'">' . $info->lastname . ', ' . $info->firstname . '</a>';
}
 /**
  * isGroupMember - returns if the logged in user is member of the current group
  *
  * @param int $groupId group id
  */
 function isGroupMember($groupId)
 {
     $Group =& group_get_object($groupId);
     if ($Group && is_object($Group) && !$Group->isError() && session_loggedin()) {
         $perm =& $Group->getPermission(session_get_user());
         if ($perm && is_object($perm) && $perm->isMember()) {
             return true;
         }
     }
     return false;
 }
Ejemplo n.º 14
0
function msg_get_name($user)
{
    $info = session_get_user($user);
    if (!$info) {
        return $user;
    }
    if (!empty($info->lastname)) {
        return $info->lastname . ', ' . $info->firstname;
    }
    return $user;
}
Ejemplo n.º 15
0
 function SitelliteSendForm()
 {
     parent::MailForm(__FILE__);
     $user = session_get_user();
     $this->widgets['from_email']->setValue($user->email);
     $this->widgets['from_name']->setValue($user->firstname . ' ' . $user->lastname);
     $groups = array('' => '- All -');
     foreach (db_pairs('select id, name from sitellite_form_type order by name asc') as $k => $v) {
         $groups[$k] = $v;
     }
     $this->widgets['send_to']->setValues($groups);
     page_title(intl_get('Send Email'));
 }
Ejemplo n.º 16
0
 function SitememberPreferencesForm()
 {
     parent::MailForm();
     $this->parseSettings('inc/app/sitemember/forms/preferences/settings.php');
     page_title(intl_get('Preferences'));
     $user = session_get_user();
     foreach (get_object_vars($user) as $k => $v) {
         if (is_object($this->widgets[$k])) {
             if ($k == 'public') {
                 if ($v == 'yes') {
                     $this->widgets[$k]->setValue($this->widgets['public']->value[array_shift(array_keys($this->widgets['public']->value))]);
                 }
             } else {
                 $this->widgets[$k]->setValue($v);
             }
         }
     }
 }
Ejemplo n.º 17
0
 function SitememberContactForm()
 {
     parent::MailForm();
     $this->parseSettings('inc/app/sitemember/forms/contact/settings.php');
     global $cgi;
     if (!isset($cgi->user)) {
         header('Location: ' . site_prefix() . '/index/sitemember-app');
         exit;
     }
     $this->member = session_get_user($cgi->user);
     if (!is_object($this->member) || $this->member->public != 'yes') {
         header('Location: ' . site_prefix() . '/index/sitemember-app');
         exit;
     }
     page_title(intl_get('Member Contact Form') . ': ' . $cgi->user);
     if (session_valid()) {
         $info = session_get_user();
         $this->widgets['email']->setValue($info->email);
     }
 }
Ejemplo n.º 18
0
 /**
  *	getForums - get an array of Forum objects for this Group.
  *
  *	@return	array	The array of Forum objects.
  */
 function &getForums()
 {
     global $sys_database_type;
     if ($this->forums) {
         return $this->forums;
     }
     if (session_loggedin()) {
         $perm =& $this->Group->getPermission(session_get_user());
         if (!$perm || !is_object($perm) || !$perm->isMember()) {
             $public_flag = '=1';
             $exists = '';
         } else {
             $public_flag = '<3';
             if ($perm->isForumAdmin()) {
                 $exists = '';
             } else {
                 $exists = " AND group_forum_id IN (SELECT role_setting.ref_id\n\t\t\t\t\tFROM role_setting, user_group\n\t\t\t\t\tWHERE role_setting.value::integer >= 0\n                                          AND role_setting.section_name = 'forum'\n                                          AND role_setting.ref_id=forum_group_list_vw.group_forum_id\n                                          \n   \t\t\t\t\t  AND user_group.role_id = role_setting.role_id\n\t\t\t\t\t  AND user_group.user_id='" . user_getid() . "') ";
             }
         }
     } else {
         $public_flag = '=1';
         $exists = '';
     }
     if ($sys_database_type == "mysql") {
         $sql = "SELECT fgl.*,\n\t\t\t\t\t(SELECT count(*) AS `count`\n\t\t\t\t\t\tFROM (\n\t\t\t\t\t\t\tSELECT DISTINCT group_forum_id, thread_id FROM forum\n\t\t\t\t\t\t) AS tmp\n\t\t\t\t\t\tWHERE tmp.group_forum_id = fgl.group_forum_id\n\t\t\t\t\t) AS threads \n\t\t\t\tFROM forum_group_list_vw AS fgl";
     } else {
         $sql = "SELECT *\n\t\t\t\tFROM forum_group_list_vw";
     }
     $sql .= "\n\t\t\tWHERE group_id='" . $this->Group->getID() . "' \n\t\t\tAND is_public {$public_flag} \n\t\t\t{$exists}\n\t\t\tORDER BY group_forum_id;";
     $result = db_query($sql);
     $rows = db_numrows($result);
     if (!$result) {
         $this->setError(_('Forum not found') . ' : ' . db_error());
         $this->forums = false;
     } else {
         while ($arr = db_fetch_array($result)) {
             $this->forums[] = new Forum($this->Group, $arr['group_forum_id'], $arr);
         }
     }
     return $this->forums;
 }
Ejemplo n.º 19
0
 function userExists()
 {
     global $group_id;
     // Mapping (PhpWiki vs FusionForge) performed is:
     //     ANON  for non logged or non member
     //     USER  for member of the project.
     //     ADMIN for member having admin rights
     if (session_loggedin()) {
         // Get project object (if error => ANON)
         $project =& group_get_object($group_id);
         if (!$project || !is_object($project)) {
             $this->_level = WIKIAUTH_ANON;
             return false;
         } elseif ($project->isError()) {
             $this->_level = WIKIAUTH_ANON;
             return false;
         }
         $member = false;
         $user = session_get_user();
         $perm =& $project->getPermission($user);
         if (!$perm || !is_object($perm)) {
             $this->_level = WIKIAUTH_ANON;
             return false;
         } elseif (!$perm->isError()) {
             $member = $perm->isMember();
         }
         if ($member) {
             $this->_userid = $user->getRealName();
             $this->_is_external = $user->getIsExternal();
             if ($perm->isAdmin()) {
                 $this->_level = WIKIAUTH_ADMIN;
             } else {
                 $this->_level = WIKIAUTH_USER;
             }
             return $this;
         }
     }
     $this->_level = WIKIAUTH_ANON;
     return false;
 }
Ejemplo n.º 20
0
 public function getAvailableRoles()
 {
     if ($this->_cached_available_roles != NULL) {
         return $this->_cached_available_roles;
     }
     $this->_cached_available_roles = array();
     $this->_cached_available_roles[] = RoleAnonymous::getInstance();
     if (session_loggedin()) {
         $this->_cached_available_roles[] = RoleLoggedIn::getInstance();
         $user = session_get_user();
         if (USE_PFO_RBAC) {
             $res = db_query_params('SELECT role_id FROM pfo_user_role WHERE user_id=$1', array($user->getID()));
             while ($arr = db_fetch_array($res)) {
                 $this->_cached_available_roles[] = $this->getRoleById($arr['role_id']);
             }
         } else {
             $groups = $user->getGroups();
             foreach ($groups as $g) {
                 $this->_cached_available_roles[] = $user->getRole($g);
             }
         }
     }
     $params = array();
     $params['current_roles'] = $this->_cached_available_roles;
     $params['new_roles'] = array();
     plugin_hook_by_reference('get_extra_roles', $params);
     foreach ($params['new_roles'] as $r) {
         $this->addAvailableRole($r);
     }
     $params = array();
     $params['current_roles'] = $this->_cached_available_roles;
     $params['dropped_roles'] = array();
     plugin_hook_by_reference('restrict_roles', $params);
     foreach ($params['dropped_roles'] as $r) {
         $this->dropAvailableRole($r);
     }
     return $this->_cached_available_roles;
 }
 /**
  *	getMailingLists - get an array of MailingList objects for this Group.
  *
  * @param boolean $admin if we are in admin mode (we want to see deleted lists)
  *	@return	array	The array of MailingList objects.
  */
 function &getMailingLists()
 {
     if (isset($this->mailingLists) && is_array($this->mailingLists)) {
         return $this->mailingLists;
     }
     $public_flag = MAIL__MAILING_LIST_IS_PUBLIC;
     $perm =& $this->Group->getPermission(session_get_user());
     if ($perm && is_object($perm) && $perm->isMember()) {
         $public_flag = MAIL__MAILING_LIST_IS_PRIVATE . ', ' . MAIL__MAILING_LIST_IS_PUBLIC;
     }
     $sql = 'SELECT * ' . 'FROM mail_group_list ' . 'WHERE group_id=\'' . $this->Group->getID() . '\' ' . 'AND is_public IN (' . $public_flag . ') ' . 'ORDER BY list_name;';
     $result = db_query($sql);
     if (!$result) {
         $this->setError(sprintf(_('Error Getting %1$s'), _('Error Getting %1$s')) . db_error());
         return false;
     } else {
         $this->mailingLists = array();
         while ($arr = db_fetch_array($result)) {
             $this->mailingLists[] = new MailingList($this->Group, $arr['group_list_id'], $arr);
         }
     }
     return $this->mailingLists;
 }
Ejemplo n.º 22
0
function frs_header($params)
{
    global $group_id, $HTML, $sys_use_frs;
    /*
    	Does this site use FRS?
    */
    if (!$sys_use_frs) {
        exit_disabled();
    }
    $project =& group_get_object($group_id);
    if (!$project || !is_object($project)) {
        exit_no_group();
    }
    $params['toptab'] = 'frs';
    $params['group'] = $group_id;
    site_project_header($params);
    if (session_loggedin()) {
        $perm =& $project->getPermission(session_get_user());
        if ($perm && is_object($perm) && !$perm->isError() && $perm->isReleaseTechnician()) {
            echo $HTML->subMenu(array(_('Files'), _('Admin')), array('/frs/?group_id=' . $group_id, '/frs/admin/?group_id=' . $group_id));
        }
    }
}
Ejemplo n.º 23
0
/**
 * GForge Mailing Lists Facility
 *
 * Portions Copyright 1999-2001 (c) VA Linux Systems
 * The rest Copyright 2003 (c) Guillaume Smet
 *
 * @version   $Id$
 *
 */
function mail_header($params)
{
    global $HTML, $group_id;
    if ($group_id) {
        //required for site_project_header
        $params['group'] = $group_id;
        $params['toptab'] = 'mail';
        $project =& group_get_object($group_id);
        if ($project && is_object($project)) {
            if (!$project->usesMail()) {
                exit_error(_('Error'), _('This Project Has Turned Off The Mailing Lists'));
            }
        }
        site_project_header($params);
        if (session_loggedin()) {
            $perm =& $project->getPermission(session_get_user());
            if ($perm && is_object($perm) && !$perm->isError() && $perm->isAdmin()) {
                echo $HTML->subMenu(array(_('Admin')), array('/mail/admin/?group_id=' . $group_id));
            }
        }
    } else {
        exit_no_group();
    }
}
Ejemplo n.º 24
0
 function get($name)
 {
     // get e-mail address from FusionForge
     if (FUSIONFORGE && session_loggedin()) {
         $user = session_get_user();
         return $user->getEmail();
     } else {
         parent::get($name);
     }
 }
Ejemplo n.º 25
0
require_once $gfcommon . 'pm/ProjectCategory.class.php';
if (!session_loggedin()) {
    exit_not_logged_in();
}
$group_id = getIntFromRequest('group_id');
$group_project_id = getIntFromRequest('group_project_id');
if (!$group_id) {
    exit_no_group();
}
$g =& group_get_object($group_id);
if (!$g || !is_object($g)) {
    exit_no_group();
} elseif ($g->isError()) {
    exit_error('Error', $g->getErrorMessage());
}
$perm =& $g->getPermission(session_get_user());
$update_cat = getStringFromRequest('update_cat');
$add_cat = getStringFromRequest('add_cat');
$delete = getStringFromRequest('delete');
$id = getIntFromRequest('id');
if (getStringFromRequest('post_changes')) {
    /*
    	Update the database
    */
    $pg = new ProjectGroup($g, $group_project_id);
    if (!$pg || !is_object($pg)) {
        exit_error('Error', 'Unable to create ProjectCategory Object');
    } elseif ($pg->isError()) {
        exit_error('Error', $pg->getErrorMessage());
    }
    if (getStringFromRequest('addproject')) {
Ejemplo n.º 26
0
<?php

$info = session_get_user($parameters['user']);
if (!$info) {
    page_title(intl_get('Viewing User'));
    echo '<p>' . intl_get('Error') . ': ' . intl_get('User not found.') . '</p>';
}
if (empty($info->lastname)) {
    $name = $info->username;
} else {
    $name = $info->lastname . ', ' . $info->firstname;
}
page_title(intl_get('Viewing User') . ': ' . $name);
echo template_simple('user/view.spt', $info);
//info ($info);
Ejemplo n.º 27
0
 function delete()
 {
     $perm =& $this->Group->getPermission(session_get_user());
     if (!$perm || !is_object($perm) || !$perm->isDocEditor()) {
         $this->setPermissionDeniedError();
         return false;
     }
     $sql = 'DELETE FROM doc_data WHERE docid=' . $this->getID();
     $result = db_query($sql);
     if (!$result) {
         $this->setError('Error Deleting Document: ' . db_error());
         db_rollback();
         return false;
     }
     return true;
 }
Ejemplo n.º 28
0
}
// Check permissions
$Group =& group_get_object_by_name($projectName);
if (!$Group || !is_object($Group) || $Group->isError()) {
    exit_no_group();
}
if (!$Group->usesSCM()) {
    exit_error(_('Error'), _('Error - This project has turned off SCM.'));
}
// check if the scm_box is located in another server
$scm_box = $Group->getSCMBox();
//$external_scm = (gethostbyname($sys_default_domain) != gethostbyname($scm_box));
$external_scm = !$sys_scm_single_host;
if (session_loggedin()) {
    if (user_ismember($Group->getID())) {
        $perm =& $Group->getPermission(session_get_user());
        if (!($perm && is_object($perm) && $perm->isCVSReader()) && !$Group->enableAnonSCM()) {
            exit_permission_denied();
        }
    } else {
        if (!$Group->enableAnonSCM()) {
            exit_permission_denied();
        }
    }
} else {
    if (!$Group->enableAnonSCM()) {
        // user is not logged in... check if group accepts anonymous CVS
        exit_permission_denied();
    }
}
if ($external_scm) {
Ejemplo n.º 29
0
    exit_disabled();
}
session_require(array('group' => '1', 'admin_flags' => 'A'));
if (getStringFromRequest('submit')) {
    $group_id = getIntFromRequest('group_id');
    $groupname = getStringFromRequest('groupname');
    $dbname = getStringFromRequest('dbname');
    if ($groupname) {
        $group =& group_get_object_by_name($groupname);
        if (!$group || !is_object($group)) {
            exit_error('Error', 'Could Not Get Group');
        } elseif ($group->isError()) {
            exit_error('Error', $group->getErrorMessage());
        }
        $group_id = $group->getID();
        $user =& session_get_user();
        if (!$user || !is_object($user)) {
            exit_error('Error', 'Could Not Get User');
        } elseif ($user->isError()) {
            exit_error('Error', $u->getErrorMessage());
        }
        $res = db_query("\n\t\t\tINSERT INTO prdb_dbs(group_id, dbname, dbusername, dbuserpass, requestdate, dbtype, created_by, state)\n\t\t\tVALUES ({$group_id},'{$dbname}','{$dbname}','xxx'," . time() . ",1," . $user->getID() . ",1)\n\t\t");
        if (!$res || db_affected_rows($res) < 1) {
            $feedback .= _('Error Adding Database') . db_error();
        } else {
            $feedback .= _('Group') . " <em>" . $group->getUnixName() . "</em>" . _('added already active database');
        }
    } else {
        $feedback .= "<strong>" . _('Unable to insert already active database.') . "</strong>";
    }
}
Ejemplo n.º 30
0
require_once dirname(__FILE__) . "/../../env.inc.php";
require_once $gfcommon . 'include/pre.php';
require_once forge_get_config('plugins_path') . 'wiki/common/WikiPlugin.class.php';
require_once forge_get_config('plugins_path') . 'wiki/common/wikiconfig.class.php';
// the header that displays for the user portion of the plugin
function wiki_Project_Header($params)
{
    global $id;
    $params['toptab'] = 'wiki';
    $params['group'] = $id;
    /*
        Show horizontal links
    */
    site_project_header($params);
}
$user = session_get_user();
// get the session user
if (!$user || !is_object($user) || $user->isError() || !$user->isActive()) {
    exit_error("Invalid User", "Cannot Process your request for this user.");
}
$type = getStringFromRequest('type');
$id = getIntFromRequest('id');
$pluginname = 'wiki';
$config = getArrayFromRequest('config');
if (!$type) {
    exit_error("Cannot Process your request", "No TYPE specified");
} elseif (!$id) {
    exit_error("Cannot Process your request", "No ID specified");
} else {
    if ($type == 'admin_post') {
        $group = group_get_object($id);