gforge-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gforge-commits] gforge/www/frs/admin editrelease.php, NONE, 1.1 index.p


From: tperdue
Subject: [Gforge-commits] gforge/www/frs/admin editrelease.php, NONE, 1.1 index.php, NONE, 1.1 qrs.php, NONE, 1.1 showreleases.php, NONE, 1.1
Date: Tue, 10 Feb 2004 16:14:41 -0600

Update of /cvsroot/gforge/gforge/www/frs/admin
In directory db.perdue.net:/home/tperdue/share/dev.gforge.org/www/frs/admin

Added Files:
        editrelease.php index.php qrs.php showreleases.php 
Log Message:
Massive reorg of FRS system

--- NEW FILE: editrelease.php ---
<?php
/**
 * Project Admin: Edit Releases of Packages
 *
 * SourceForge: Breaking Down the Barriers to Open Source Development
 * Copyright 1999-2001 (c) VA Linux Systems
 * http://sourceforge.net
 *
 * @version   $Id: editrelease.php,v 1.1 2004/02/10 22:14:38 tperdue Exp $
 */


require_once('pre.php');
require_once('common/frs/FRSPackage.class');
require_once('common/frs/FRSRelease.class');
require_once('common/frs/FRSFile.class');
require_once('www/frs/include/frs_utils.php');

if (!$group_id) {
        exit_no_group();
}

$g =& group_get_object($group_id);
if (!$g || $g->isError()) {
        exit_error('Error',$g->getErrorMessage());
}
$perm =& $g->getPermission(session_get_user());
if (!$perm->isReleaseTechnician()) {
        exit_permission_denied();
}

if (!$package_id || !$release_id) {
        header("Location: /frs/admin/?group_id=$group_id");
        exit;
}

//
//  Get the package
//
$frsp = new FRSPackage($g,$package_id);
if (!$frsp || !is_object($frsp)) {
        exit_error('Error','Could Not Get FRSPackage');
} elseif ($frsp->isError()) {
        exit_error('Error',$frsp->getErrorMessage());
}

//
//  Get the release
//
$frsr = new FRSRelease($frsp,$release_id);
if (!$frsr || !is_object($frsr)) {
        exit_error('Error','Could Not Get FRSRelease');
} elseif ($frsr->isError()) {
        exit_error('Error',$frsr->getErrorMessage());
}


/*
 * Here's where we do the dirty work based on the step the user has chosen
 */

// Edit release info
if ($step1) {
        $exec_changes = true;

        // Check for uploaded release notes
        if ($uploaded_notes != "" && $uploaded_notes != "none") {
                if (!is_uploaded_file($uploaded_notes)) {
                        exit_error('Error','Attempted File Upload Attack');
                }
                $notes = 
addslashes(fread(fopen($HTTP_POST_FILES['uploaded_notes']['tmp_name'],'r'),filesize($HTTP_POST_FILES['uploaded_notes']['tmp_name'])));
                if (strlen($notes) < 20) {
                        $feedback .= 
$Language->getText('project_admin_editrelease','release_notes_too_small');
                        $exec_changes = false;
                }
        } else {
                $notes = $release_notes;
        }

        // Check for uploaded change logs
        if ($uploaded_changes != "" && $uploaded_changes != "none") {
                if (!is_uploaded_file($uploaded_changes)) {
                        exit_error('Error','Attempted File Upload Attack');
                }
                $changes = 
addslashes(fread(fopen($HTTP_POST_FILES['uploaded_changes']['tmp_name'],'r'), 
filesize($HTTP_POST_FILES['uploaded_changes']['tmp_name'])));
                if (strlen($changes) < 20) {
                        $feedback .= 
$Language->getText('project_admin_editrelease','changelog_too_small');
                        $exec_changes = false;
                }
        } else {
                $changes = $release_changes;
        }

        // If we haven't encountered any problems so far then save the changes
        if ($exec_changes == true) {
                $date_list = split('[- :]',$release_date,5);
                $release_date = 
mktime($date_list[3],$date_list[4],0,$date_list[1],$date_list[2],$date_list[0]);
                if 
(!$frsr->update($status_id,$release_name,$notes,$changes,$preformatted,$release_date))
 {
                        exit_error('Error',$frsr->getErrorMessage());
                } else {
                        $feedback .= 
$Language->getText('project_admin_editrelease','data_saved');
                }
        }
}

// Add file(s) to the release
if ($step2) {
        // Build a Unix time value from the supplied Y-m-d value
        $group_unix_name=group_getunixname($group_id);

        if ($userfile && is_uploaded_file($userfile)) {
                //
                //  Now create the new FRSFile in the db
                //
                $frsf = new FRSFile($frsr);
                if (!$frsf || !is_object($frsf)) {
                        exit_error('Error','Could Not Get FRSFile');
                } elseif ($frsf->isError()) {
                        exit_error('Error',$frsf->getErrorMessage());
                } else {
                        if 
(!$frsf->create($userfile_name,$userfile,$type_id,$processor_id,$release_date)) 
{
                                db_rollback();
                                exit_error('Error',$frsf->getErrorMessage());
                        }
                        
$feedback=$Language->getText('project_admin_editrelease','file_released');
                }
        }
}

// Edit/Delete files in a release
if ($step3) {
        // If the user chose to delete the file and he's sure then delete the 
file
        if( $step3 == "Delete File" && $im_sure ) {
                $frsf = new FRSFile($frsr,$file_id);
                if (!$frsf || !is_object($frsf)) {
                        exit_error('Error','Could Not Get FRSFile');
                } elseif ($frsf->isError()) {
                        exit_error('Error',$frsf->getErrorMessage());
                } else {
                        if (!$frsf->delete()) {
                                exit_error('Error',$frsf->getErrorMessage());
                        } else {
                                $feedback .= 
$Language->getText('project_admin_editrelease','file_deleted');
                        }
                }
        // Otherwise update the file information
        } else {
                $frsf = new FRSFile($frsr,$file_id);
                if (!$frsf || !is_object($frsf)) {
                        exit_error('Error','Could Not Get FRSFile');
                } elseif ($frsf->isError()) {
                        exit_error('Error',$frsf->getErrorMessage());
                } else {
                        $date_list = split('[- :]',$release_time,5);
                        $release_time = 
mktime($date_list[3],$date_list[4],0,$date_list[1],$date_list[2],$date_list[0]);
                        if 
(!$frsf->update($type_id,$processor_id,$release_time)) {
                                exit_error('Error',$frsf->getErrorMessage());
                        } else {
                                $feedback .= 
$Language->getText('project_admin_editrelease','file_updated');
                        }
                }
        }
}

frs_admin_header(array('title'=>$Language->getText('project_admin_editrelease','title'),'group'=>$group_id,'pagename'=>'project_admin_editreleases','sectionvals'=>array(group_getname($group_id))));
/*
 * Show the forms for each step
 */
?>

<h3><?php echo $Language->getText('project_admin_editrelease','step_1') ?></h3>

<form enctype="multipart/form-data" method="post" action="<?php echo 
$PHP_SELF."?group_id=$group_id&release_id=$release_id&package_id=$package_id"; 
?>">
<input type="hidden" name="step1" value="1" />
<table border="0" cellpadding="1" cellspacing="1">
<tr>
        <td width="10%"><strong><?php echo 
$Language->getText('project_admin_editrelease','release_date') ?>:<strong></td>
        <td><input type="text" name="release_date" value="<?php echo 
date('Y-m-d H:i',$frsr->getReleaseDate()) ?>" size="16" maxlength="16" /></td>
</tr>
<tr>
        <td><strong><?php echo 
$Language->getText('project_admin_editrelease','release_name') ?>:<strong></td>
        <td><input type="text" name="release_name" value="<?php echo 
htmlspecialchars($frsr->getName()); ?>" /></td>
</tr>
<tr>
        <td><strong><?php echo 
$Language->getText('project_admin_editrelease','status') ?>:</strong></td>
        <td>
                <?php
                        echo 
frs_show_status_popup('status_id',$frsr->getStatus());
                ?>
        </td>
</tr>
<tr>
        <td colspan="2">
                <br />
                <?php echo 
$Language->getText('project_admin_editrelease','note') ?>
        </td>
</tr>
<tr>
        <td><strong><?php echo 
$Language->getText('project_admin_editrelease','upload_release_notes') 
?>:</strong></td>
        <td><input type="file" name="uploaded_notes" size="30" /></td>
</tr>
<tr>
        <td><strong><?php echo 
$Language->getText('project_admin_editrelease','upload_change_log') 
?>:</strong></td>
        <td><input type="file" name="uploaded_changes" size="30" /></td>
</tr>
<tr>
        <td colspan="2">
                <strong><?php echo 
$Language->getText('project_admin_editrelease','paste_release_notes') 
?>:</strong><br />
                <textarea name="release_notes" rows="10" cols="60" 
wrap="soft"><?php echo $frsr->getNotes(); ?></textarea>
        </td>
</tr>
<tr>
        <td colspan="2">
                <strong><?php echo 
$Language->getText('project_admin_editrelease','paste_changelog') 
?>:</strong><br />
                <textarea name="release_changes" rows="10" cols="60" 
wrap="soft"><?php echo $frsr->getChanges(); ?></textarea>
        </td>
</tr>
<tr>
        <td>
                <br />
                <input type="checkbox" name="preformatted" value="1" <?php echo 
(($frsr->getPreformatted())?'checked="checked"':''); ?> /> <?php echo 
$Language->getText('project_admin_editrelease','preserve_preformatted') ?>
                <p>
                <input type="submit" name="submit" value="<?php echo 
$Language->getText('project_admin_editrelease','submit_refresh') ?>"/></p>
        </td>
</tr>
</table>
</form>
<p>&nbsp;</p>
<hr noshade="noshade" />
<h3><?php echo $Language->getText('project_admin_editrelease','step_2') ?></h3>
<p>
<form enctype="multipart/form-data" method="post" action="<?php echo 
$PHP_SELF."?group_id=$group_id&release_id=$release_id&package_id=$package_id"; 
?>">
<input type="hidden" name="step2" value="1" />
<span style="color:red"><strong>
<?php echo $Language->getText('project_admin_editrelease','add_files_note') ?>
</strong></span><br />
<?php echo $Language->getText('project_admin_editrelease','upload_new_file') 
?>: <input type="file" name="userfile"  size="30" />
<table width="60%">
<tr>
<td>
<h4><?php echo $Language->getText('project_admin_editrelease','file_type') 
?>:</h4>
<?php
        print frs_show_filetype_popup ('type_id');
?>
</td>
<td>
<h4><?php echo $Language->getText('project_admin_editrelease','processor_type') 
?>:</h4>
<?php
        print frs_show_processor_popup ('processor_id');
?>
</td>
</tr>
</table>
<p>
<input type="submit" name="submit" value="<?php echo 
$Language->getText('project_admin_editrelease','add_file') ?>" /></p>
</form></p>
<p>&nbsp;</p>
<hr noshade="noshade" />
<p>&nbsp;</p>
<h3><?php echo $Language->getText('project_admin_editrelease','step_3') ?></h3>

<?php
        // Get a list of files associated with this release
        $res=db_query("SELECT * FROM frs_file WHERE release_id='$release_id'");
        $rows=db_numrows($res);
        if($rows < 1) {
                
print("<h4>".$Language->getText('project_admin_editrelease','no_files_in_release')."</h4>\n");
        } else {
                
print($Language->getText('project_admin_editrelease','file_list_note')."\n");
                
$title_arr[]=$Language->getText('project_admin_editrelease','filename_release').'<br
 />';
                
$title_arr[]=$Language->getText('project_admin_editrelease','processor_update').'<br
 />';
                
$title_arr[]=$Language->getText('project_admin_editrelease','file_type_update').'<br
 />';

                echo $GLOBALS['HTML']->listTableTop ($title_arr);

                for($x=0; $x<$rows; $x++) {
?>
                        <form action="<?php echo 
$PHP_SELF."?group_id=$group_id&release_id=$release_id&package_id=$package_id"; 
?>" method="post">
                                <input type="hidden" name="file_id" 
value="<?php echo db_result($res,$x,'file_id'); ?>" />
                                <input type="hidden" name="step3" value="1" />
                                <tr <?php echo $HTML->boxGetAltRowStyle($x); ?>>
                                        <td nowrap="nowrap"><span 
style="font-size:smaller"><?php echo db_result($res,$x,'filename'); 
?></span></td>
                                        <td><span 
style="font-size:smaller"><?php echo frs_show_processor_popup ('processor_id', 
db_result($res,$x,'processor_id')); ?></span></td>
                                        <td><span 
style="font-size:smaller"><?php echo frs_show_filetype_popup ('type_id', 
db_result($res,$x,'type_id')); ?></span></td>
                                </tr>
                                <tr <?php echo $HTML->boxGetAltRowStyle($x); ?>>
                                        <td>
                                                <span style="font-size:smaller">
                                                        <?php echo 
frs_show_release_popup ($group_id, 
$name='new_release_id',db_result($res,$x,'release_id')); ?>
                                                </span>
                                        </td>
                                        <td>
                                                <span style="font-size:smaller">
                                                        <input type="text" 
name="release_time" value="<?php echo 
date('Y-m-d',db_result($res,$x,'release_time')); ?>" size="10" maxlength="10" />
                                                </span>
                                        </td>
                                        <td><input type="submit" name="submit" 
value="<?php echo 
$Language->getText('project_admin_editrelease','update_refresh') ?> " /></td>
                                </tr>
                                </form>

                        <form action="<?php echo $PHP_SELF; ?>" method="post">
                                <input type="hidden" name="group_id" 
value="<?php echo $group_id; ?>" />
                                <input type="hidden" name="release_id" 
value="<?php echo $release_id; ?>" />
                                <input type="hidden" name="package_id" 
value="<?php echo $package_id; ?>" />
                                <input type="hidden" name="file_id" 
value="<?php echo db_result($res,$x,'file_id'); ?>" />
                                <input type="hidden" name="step3" value="Delete 
File" />
                                <tr <?php echo $HTML->boxGetAltRowStyle($x); ?>>
                                        <td>&nbsp;</td>
                                        <td>&nbsp;</td>
                                        <td>
                                                <span style="font-size:smaller">
                                                        <input type="submit" 
name="submit" value="<?php echo 
$Language->getText('project_admin_editrelease','delete_file') ?> " /> <input 
type="checkbox" name="im_sure" value="1" /> <?php echo 
$Language->getText('project_admin_editrelease','i_am_sure') ?> 
                                                </span>
                                        </td>
                                </tr>
                        </form>
<?php
                }
                echo $GLOBALS['HTML']->listTableBottom();
        }

print "<br>There are ".$frsp->getMonitorCount()." users monitoring this 
package.";
print "<hr>";

frs_admin_footer();

?>

--- NEW FILE: index.php ---
<?php
/**
 *
 * Project Admin: Edit Packages
 *
 * SourceForge: Breaking Down the Barriers to Open Source Development
 * Copyright 1999-2001 (c) VA Linux Systems
 * Copyright 2004 (c) GForge, LLC
 *
 * @version   $Id: index.php,v 1.1 2004/02/10 22:14:38 tperdue Exp $
 *
 */

require_once('pre.php');        
require_once('www/frs/include/frs_utils.php');

if (!$group_id) {
        exit_no_group();
}

$project =& group_get_object($group_id);
if (!$project || $project->isError()) {
        exit_error('Error',$project->getErrorMessage());
}
$perm =& $project->getPermission(session_get_user());
if (!$perm->isReleaseTechnician()) {
        exit_permission_denied();
}

/*

        Relatively simple form to edit/add packages of releases

*/

// only admin can modify packages (vs modifying releases of packages)
if ($submit) {
        /*

                make updates to the database

        */
        if ($func=='add_package' && $package_name) {

                //create a new package
                db_query("INSERT INTO frs_package (group_id,name,status_id) ".
                        "VALUES ('$group_id','". 
htmlspecialchars($package_name)  ."','1')");
                $feedback 
.=$Language->getText('project_admin_editpackages','added_package');

        } else if ($func=='update_package' && $package_id && $package_name && 
$status_id) {
                if ($status_id != 1) {
                        //if hiding a package, refuse if it has releases under 
it
                        $res=db_query("SELECT * FROM frs_release WHERE 
package_id='$package_id' AND status_id=1");
                        if (db_numrows($res) > 0) {
                                $feedback .= ' Sorry - you cannot hide a 
package that contains active releases ';
                                $status_id=1;
                        }
                }
                //update an existing package
                db_query("UPDATE frs_package SET name='". 
htmlspecialchars($package_name)  ."', status_id='$status_id' ".
                        "WHERE package_id='$package_id' AND 
group_id='$group_id'");
                $feedback .= 
$Language->getText('project_admin_editpackages','updated_package');

        }

}


frs_admin_header(array('title'=>$Language->getText('project_admin_editpackages','title'),'group'=>$group_id,'pagename'=>'project_admin_editpackages','sectionvals'=>array(group_getname($group_id))));

$res=db_query("SELECT status_id,package_id,name AS package_name FROM 
frs_package WHERE group_id='$group_id' AND status_id=1");
$rows=db_numrows($res);
if ($res && $rows > 0) {
        echo 
'<h3>'.$Language->getText('project_admin_editpackages','qrs').'</h3>';
        echo $Language->getText('project_admin_editpackages','qrs_a_file', 
array('<a href="qrs.php?package_id=' . $package_id . '&group_id=' . $group_id . 
'">','</a>') ).'<br />';
}
?>
<?php echo  $Language->getText('project_admin_editpackages','packages_info') ?>
<p>
<?php
/*

        Show a list of existing packages
        for this project so they can
        be edited

*/

$res=db_query("SELECT status_id,package_id,name AS package_name FROM 
frs_package WHERE group_id='$group_id'");
$rows=db_numrows($res);
if (!$res || $rows < 1) {
        echo 
'<h4>'.$Language->getText('project_admin_editpackages','no_packages_defined').'</h4>';
} else {
        $title_arr=array();
        
$title_arr[]=$Language->getText('project_admin_editpackages','releases');
        
$title_arr[]=$Language->getText('project_admin_editpackages','package_name');
        
$title_arr[]=$Language->getText('project_admin_editpackages','no_packages_status');

        echo $GLOBALS['HTML']->listTableTop ($title_arr);

        for ($i=0; $i<$rows; $i++) {
                echo '
                <form action="'. $PHP_SELF .'" method="post">
                <input type="hidden" name="group_id" value="'.$group_id.'" />
                <input type="hidden" name="func" value="update_package" />
                <input type="hidden" name="package_id" value="'. 
db_result($res,$i,'package_id') .'" />
                <tr '. $GLOBALS['HTML']->boxGetAltRowStyle($i) .'>
                        <td nowrap="nowrap" align="center">
                                <span style="font-size:smaller">
                                        <a href="qrs.php?package_id='. 
                                                db_result($res,$i,'package_id') 
.'&amp;group_id='. $group_id 
.'"><strong>['.$Language->getText('project_admin_editpackages','add_release').']</strong>
                                        </a>
                                </span>
                                <span style="font-size:smaller">
                                        <a href="showreleases.php?package_id='. 
                                                db_result($res,$i,'package_id') 
.'&amp;group_id='. $group_id 
.'"><strong>['.$Language->getText('project_admin_editpackages','edit_releases').']</strong>
                                        </a>
                                </span>

                        </td>
                        <td><span style="font-size:smaller"><input type="text" 
name="package_name" value="'.db_result($res,$i,'package_name') .'" size="20" 
maxlength="30" /></span></td>
                        <td><span 
style="font-size:smaller">'.frs_show_status_popup ('status_id', 
db_result($res,$i,'status_id')).'</span></td>
                        <td><input type="submit" name="submit" 
value="'.$Language->getText('general','update').'" /></td>
                        </tr></form>';
        }

        echo $GLOBALS['HTML']->listTableBottom();

}

/*

        form to create a new package

*/

?>
</p>
<h3><?php echo 
$Language->getText('project_admin_editpackages','new_package_name') ?>:</h3>
<p>
<form action="<?php echo $PHP_SELF; ?>" method="post">
<input type="hidden" name="group_id" value="<?php echo $group_id; ?>" />
<input type="hidden" name="func" value="add_package" />
<input type="text" name="package_name" value="" size="20" maxlength="30" />
<p><input type="submit" name="submit" value="<?php echo 
$Language->getText('project_admin_editpackages','create_package') ?>" /></p>
</form></p>

<?php

frs_admin_footer();

?>

--- NEW FILE: qrs.php ---
<?php
/**
 * GForge File Release Facility
 *
 * Copyright 2002 GForge, LLC
 * http://gforge.org/
 *
 * @version   $Id: qrs.php,v 1.1 2004/02/10 22:14:38 tperdue Exp $
 */

require_once('pre.php');        
require_once('common/frs/FRSPackage.class');
require_once('common/frs/FRSRelease.class');
require_once('common/frs/FRSFile.class');
require_once('www/frs/include/frs_utils.php');

if (!$group_id) {
        exit_no_group();
}

$g =& group_get_object($group_id);
if (!$g || $g->isError()) {
        exit_error('Error',$g->getErrorMessage());
}
$perm =& $g->getPermission(session_get_user());
if (!$perm->isReleaseTechnician()) {
        exit_permission_denied();
}


/*
        Quick file release system , Darrell Brogdon, SourceForge, Aug, 2000

        With much code horked from editreleases.php
*/

if( $submit ) {
        if (!$release_name) {
                $feedback .= 
$Language->getText('project_admin_qrs','required_release_name');
        } else  if (!$package_id) {
                $feedback .= 
$Language->getText('project_admin_qrs','required_package');
        } else  if (!$userfile || $userfile == 'none') {
                // Check errors
                switch($_FILES['userfile']['error']) {
                        case UPLOAD_ERR_INI_SIZE:
                        case UPLOAD_ERR_FORM_SIZE:
                                $feedback .= 
$Language->getText('project_admin_qrs','exceed_file_size');
                        break;
                        case UPLOAD_ERR_PARTIAL:
                                $feedback .= 
$Language->getText('project_admin_qrs','partial_file');
                        break;
                        case UPLOAD_ERR_NO_FILE:
                                $feedback .= 
$Language->getText('project_admin_qrs','required_file');
                        break;
                        default:
                                $feedback .= 
$Language->getText('project_admin_qrs','unknown_file_error');
                        break;
                }
        } else  if (!$type_id || $type_id == "100") {
                $feedback .= 
$Language->getText('project_admin_qrs','required_file_type');
        } else  if (!$processor_id || $processor_id == "100")  {
                $feedback .= 
$Language->getText('project_admin_qrs','required_processor_type');
        } else {

                //
                //      Get the package
                //
                $frsp = new FRSPackage($g,$package_id);
                if (!$frsp || !is_object($frsp)) {
                        exit_error('Error','Could Not Get FRSPackage');
                } elseif ($frsp->isError()) {
                        exit_error('Error',$frsp->getErrorMessage());
                } else {
                        if ($userfile && is_uploaded_file($userfile)) {
                                //
                                //      Create a new FRSRelease in the db
                                //
                                $frsr = new FRSRelease($frsp);
                                if (!$frsr || !is_object($frsr)) {
                                        exit_error('Error','Could Not Get 
FRSRelease');
                                } elseif ($frsr->isError()) {
                                        
exit_error('Error',$frsr->getErrorMessage());
                                } else {
                                        $date_list = split('[- 
:]',$release_date,5);
                                        $release_date = 
mktime($date_list[3],$date_list[4],0,$date_list[1],$date_list[2],$date_list[0]);
                                        db_begin();
                                        if 
(!$frsr->create($release_name,$release_notes,$release_changes,
                                                $preformatted,$release_date)) {
                                                db_rollback();
                                                
exit_error('Error',$frsr->getErrorMessage());
                                        }

                                        //
                                        //      Now create the new FRSFile in 
the db
                                        //
                                        $frsf = new FRSFile($frsr);
                                        if (!$frsf || !is_object($frsf)) {
                                                exit_error('Error','Could Not 
Get FRSFile');
                                        } elseif ($frsf->isError()) {
                                                
exit_error('Error',$frsf->getErrorMessage());
                                        } else {
                                                if 
(!$frsf->create($userfile_name,$userfile,$type_id,$processor_id,$release_date)) 
{
                                                        db_rollback();
                                                        
exit_error('Error',$frsf->getErrorMessage());
                                                }
                                                $frsr->sendNotice();
                                                $feedback .= 
$Language->getText('project_admin_qrs','file_released');

                                                
frs_admin_header(array('title'=>$Language->getText('project_admin_qrs','title'),'group'=>$group_id,'pagename'=>'project_admin_qrs','sectionvals'=>array(group_getname($group_id))));
                                                ?>
                                                <p>
                                                <?php echo 
$Language->getText('project_admin_qrs','qrs_info',
                                                        array('<a 
href="/project/admin/editrelease.php?release_id='.$frsr->getID().'&amp;group_id='.$group_id.'&amp;package_id='.$package_id.'
 "><strong>',
                                                        '</strong></a>',
                                                        '<a 
href="/frs/?group_id='.$group_id.'">','</a>')) ?>
                                                <?php
                                                db_commit();
                                                frs_admin_footer(array());
                                                exit(); //quite dirty but less 
that a buggy output like before
                                                
                                        }

                                }

                        } else {
                                exit_error('Error','Could Not Upload User File: 
'.$userfile);
                        }

                }

        }

}

frs_admin_header(array('title'=>$Language->getText('project_admin_qrs','title'),'group'=>$group_id,'pagename'=>'project_admin_qrs','sectionvals'=>array(group_getname($group_id))));

?>

<form enctype="multipart/form-data" method="post" action="<?php echo 
$PHP_SELF."?group_id=$group_id"; ?>">
        <table border="0" cellpadding="2" cellspacing="2">
        <tr>
                <td>
                        <h4><?php echo 
$Language->getText('project_admin_qrs','package_id') ?>:</h4>
                </td>
                <td>
<?php
        $sql="SELECT * FROM frs_package WHERE group_id='$group_id' AND 
status_id='1'";
        $res=db_query($sql);
        $rows=db_numrows($res);
        if (!$res || $rows < 1) {
                echo 
'<h4>'.$Language->getText('project_admin_qrs','no_file_types_available').'</h4>';
        } else {
                
                echo '<select name="package_id">';
                for ($i=0; $i<$rows; $i++) {
                        echo '<option value="' . 
db_result($res,$i,'package_id') .
                                ((db_result($res,$i,'package_id') 
==$package_id) ? '" selected="selected"' : '"').'>' .
                                db_result($res,$i,'name') . '</option>';
                }
                echo '</select>';
        }
?>
                        &nbsp;&nbsp;
                        
                        <?php echo 
$Language->getText('project_admin_qrs','create_new_package',array('<a 
href="/frs/admin/?group_id='.$group_id.'">','</a>')) ?>
                </td>
        </tr>
        <tr>
                <td>
                        <h4><?php echo 
$Language->getText('project_admin_qrs','release_name') ?>:<?php echo 
utils_requiredField();?></h4>
                </td>
                <td>
                        <input type="text" name="release_name" value="<?php 
echo $release_name ?>" />
                </td>
        </tr>
        <tr>
                <td>
                        <h4><?php echo 
$Language->getText('project_admin_qrs','release_date') ?>:</h4>
                </td>
                <td>
                        <input type="text" name="release_date" value="<?php 
echo date('Y-m-d H:i'); ?>" size="16" maxlength="16" />
                </td>
        </tr>
        <tr>
                <td>
                        <h4><?php echo 
$Language->getText('project_admin_qrs','file_name') ?>:<?php echo 
utils_requiredField();?></h4>
                </td>
                <td>
                <span style="color:red"><strong>
                <?php echo 
$Language->getText('project_admin_qrs','release_note').' 
('.$Language->getText('project_admin_qrs','maximum_file_size').' '. 
ini_get('upload_max_filesize')?>)</strong></span><br />
                <?php echo 
$Language->getText('project_admin_qrs','upload_new_file') ?>: <input 
type="file" name="userfile"  size="30" />
                </td>
        </tr>
        <tr>
                <td>
                        <h4><?php echo 
$Language->getText('project_admin_qrs','file_type') ?>:<?php echo 
utils_requiredField();?></h4>
                </td>
                <td>
<?php
        print frs_show_filetype_popup ('type_id',$type_id) . "<br />";
?>
                </td>
        </tr>
        <tr>
                <td>
                        <h4><?php echo 
$Language->getText('project_admin_qrs','processor_type') ?>:<?php echo 
utils_requiredField();?></h4>
                </td>
                <td>
<?php
        print frs_show_processor_popup ('processor_id',$processor_id);
?>              
                </td>
        </tr>
        <tr>
                <td valign="top">
                        <h4><?php echo 
$Language->getText('project_admin_qrs','release_notes') ?>:</h4>
                </td>
                <td>
                        <textarea name="release_notes" rows="7" cols="50"><?php 
echo $release_notes; ?></textarea>
                </td>
        </tr>
        <tr>
                <td valign="top">
                        <h4><?php echo 
$Language->getText('project_admin_qrs','changelog') ?>:</h4>
                </td>
                <td>
                        <textarea name="release_changes" rows="7" 
cols="50"><?php echo $release_changes; ?></textarea>
                </td>
        </tr>
        <tr>
                <td colspan="2" align="center">
                        <input type="checkbox" name="preformatted" value="1" /> 
<?php echo $Language->getText('project_admin_qrs','preserve_text') ?>
                        <p><input type="submit" name="submit" value="<?php echo 
$Language->getText('project_admin_qrs','release_file') ?>" /></p>
                </td>
        </tr>
        </table>
</form>

<?php

frs_admin_footer();

?>

--- NEW FILE: showreleases.php ---
<?php
/**
 *
 * Project Admin: Edit Releases of Packages
 *
 * SourceForge: Breaking Down the Barriers to Open Source Development
 * Copyright 1999-2001 (c) VA Linux Systems
 * Copyright 2004 (c) GForge, LLC
 *
 * @version   $Id: showreleases.php,v 1.1 2004/02/10 22:14:38 tperdue Exp $
 *
 */


/* Updated rewrite of the File Release System to clean up the UI 
 * a little and incorporate FRS.class.          -Darrell
 */

require_once('pre.php');        
require_once('www/frs/include/frs_utils.php');

if (!$group_id) {
        exit_no_group();
}

$project =& group_get_object($group_id);
if (!$project || $project->isError()) {
        exit_error('Error',$project->getErrorMessage());
}
$perm =& $project->getPermission(session_get_user());
if (!$perm->isReleaseTechnician()) {
        exit_permission_denied();
}

if (!$package_id) {
        header("Location 
/frs/admin/?group_id=$group_id?feedback=Choose+Package");
        exit;
}

/*
        Get the releases of this package
*/
$res=db_query("SELECT p.name AS package_name,r.* 
        FROM frs_release r, frs_package p 
        WHERE 
        p.package_id=r.package_id
        AND p.group_id='$group_id' 
        AND p.package_id='$package_id'");
if (!$res || db_numrows($res) < 1) {
        
exit_error($Language->getText('general','error'),$Language->getText('project_admin_showreleases','no_release'));
}

/*
        Display a list of releases in this package
*/
frs_admin_header(array('title'=>$Language->getText('project_admin_showreleases','title'),'group'=>$group_id,'pagename'=>'project_admin_editreleases','sectionvals'=>array(group_getname($group_id))));

$title_arr=array();
$title_arr[]=$Language->getText('project_admin_showreleases','package_name');
$title_arr[]=$Language->getText('project_admin_showreleases','release_name');
$title_arr[]=$Language->getText('project_admin_showreleases','date');

echo $GLOBALS['HTML']->listTableTop ($title_arr);

for ($i=0; $i<db_numrows($res); $i++) {
        echo '<tr "'. $HTML->boxGetAltRowStyle($i) .'">
                        <td>'.db_result($res,$i,'package_name').'</td>
                        <td><a href="editrelease.php?group_id='.$group_id
                                .'&amp;package_id='.$package_id
                                
.'&amp;release_id='.db_result($res,$i,'release_id').'">'. 
                                db_result($res,$i,'name').' 
['.$Language->getText('general','edit').']</a></td><td>'.
                                date('Y-m-d 
H:i',db_result($res,$i,'release_date')).'</td></tr>';
}

echo $GLOBALS['HTML']->listTableBottom();

frs_admin_footer(array());

?>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]