<?php
/**
- * GForge File Release Facility
+ * FusionForge File Release Facility
*
- * Copyright 2002 GForge, LLC
- * http://gforge.org/
+ * Copyright 1999-2001 (c) VA Linux Systems , Darrell Brogdon
+ * Copyright 2002 (c) GForge, LLC
+ * Copyright 2010 (c), FusionForge Team
+ * http://fusionforge.org/
*
+ * This file is part of FusionForge. FusionForge 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 Licence, or (at your option)
+ * any later version.
+ *
+ * FusionForge 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 FusionForge; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
require_once('../../env.inc.php');
$group_id = getIntFromRequest('group_id');
$package_id = getIntFromRequest('package_id');
-if (!$group_id) {
+if (!$group_id)
exit_no_group();
-}
-$g =& group_get_object($group_id);
-if (!$g || $g->isError()) {
- exit_error('Error',$g->getErrorMessage());
+$g = group_get_object($group_id);
+
+if (!$g || !is_object($g)) {
+ exit_no_group();
+} elseif ($g->isError()) {
+ exit_error('Error',$g->getErrorMessage(),'frs');
}
// check the permissions and see if this user is a release manager.
$upload_dir = forge_get_config('ftp_upload_dir') . "/" . $g->getUnixName();
-/*
- Quick file release system , Darrell Brogdon, SourceForge, Aug, 2000
-
- With much code horked from editreleases.php
-*/
-
if (getStringFromRequest('submit')) {
$release_name = trim(getStringFromRequest('release_name'));
$userfile = getUploadedFile('userfile');
$manual_filename = getStringFromRequest('manual_filename');
$group_unix_name=group_getunixname($group_id);
- $feedback = '' ;
+ $warning_msg = '' ;
if (!$release_name) {
- $feedback .= _('Must define a release name.');
+ $warning_msg .= _('Must define a release name.');
} else if (!$package_id) {
- $feedback .= _('Must select a package.');
+ $warning_msg .= _('Must select a package.');
} else if (!$type_id || $type_id == "100") {
- $feedback .= _('Must select a file type.');
+ $warning_msg .= _('Must select a file type.');
} else if (!$processor_id || $processor_id == "100") {
- $feedback .= _('Must select a processor type.');
+ $warning_msg .= _('Must select a processor type.');
} else {
//
//
$frsp = new FRSPackage($g,$package_id);
if (!$frsp || !is_object($frsp)) {
- exit_error('Error','Could Not Get FRSPackage');
+ exit_error(_('Could Not Get FRSPackage'),'frs');
} elseif ($frsp->isError()) {
- exit_error('Error',$frsp->getErrorMessage());
+ exit_error($frsp->getErrorMessage(),'frs');
} else {
//
// Create a new FRSRelease in the db
//
$frsr = new FRSRelease($frsp);
if (!$frsr || !is_object($frsr)) {
- exit_error('Error','Could Not Get FRSRelease');
+ exit_error(_('Could Not Get FRSRelease'),'frs');
} elseif ($frsr->isError()) {
- exit_error('Error',$frsr->getErrorMessage());
+ exit_error($frsr->getErrorMessage(),'frs');
} else {
db_begin();
if (!$frsr->create($release_name,$release_notes,$release_changes,
$preformatted,$release_date)) {
db_rollback();
- exit_error('Error',$frsr->getErrorMessage());
+ exit_error($frsr->getErrorMessage(),'frs');
}
$ret = frs_add_file_from_form ($frsr, $type_id, $processor_id, $release_date,
$userfile, $ftp_filename, $manual_filename) ;
if ($ret != true) {
db_rollback() ;
- exit_error ($ret) ;
+ exit_error ($ret,'frs') ;
}
$frsr->sendNotice();
-
+
frs_admin_header(array('title'=>_('Quick Release System'),'group'=>$group_id));
echo '<p>' ;
printf (_('You can now <a href="%1$s"><strong>add files to this release</strong></a> if you wish, or edit the release. Please note that file(s) may not appear immediately on the <a href="%2$s">download page</a>. Allow several hours for propagation.'),
if (!$res || $rows < 1) {
echo '<h4>'._('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') .
}
?>
-
+
<?php printf(_('Or %1$s create a new package %2$s'), '<a href="'.util_make_url ('/frs/admin/?group_id='.$group_id).'">', '</a>') ?>
</td>
</tr>
<strong><?php echo _('Release name') ?>:<?php echo utils_requiredField();?></strong>
</td>
<td>
- <input type="text" name="release_name" value="<?php echo htmlspecialchars(stripslashes($release_name)) ?>" />
+ <input type="text" required="required" name="release_name" value="<?php echo htmlspecialchars($release_name) ?>" />
</td>
</tr>
<tr>
<h4><?php echo _('File Name') ?>:<?php echo utils_requiredField();?></h4>
</td>
<td>
- <span class="important">
+ <div class="important">
<?php echo _('NOTE: In some browsers you must select the file in the file-upload dialog and click "OK". Double-clicking doesn\'t register the file.')?>
- </span><br />
+ <?php printf(_('You can probably not upload files larger than about %.2f MiB in size.'), util_get_maxuploadfilesize() / 1048576); ?><br />
+ </div>
<?php echo _('Upload a new file') ?>: <input type="file" name="userfile" size="30" />
<?php if (forge_get_config('use_ftp_uploads')) {
printf(_('Alternatively, you can use FTP to upload a new file at %1$s.'), forge_get_config('ftp_upload_host'));
echo '<br />';
echo _('Choose an FTP file instead of uploading:').'<br />';
- $ftp_files_arr=ls($upload_dir,true);
+ $ftp_files_arr=frs_filterfiles(ls($upload_dir,true));
echo html_build_select_box_from_arrays($ftp_files_arr,$ftp_files_arr,'ftp_filename',''); ?>
-
+
</p>
<?php } ?>
<?php if (forge_get_config('use_manual_uploads')) {
$incoming, "sftp://" . forge_get_config ('web_host') . $incoming . "/");
echo ' ' . _('This direct <tt>sftp://</tt> link only works with some browsers, such as Konqueror.') . '<br />';
echo _('Choose an already uploaded file:').'<br />';
- $manual_files_arr=ls($incoming,true);
+ $manual_files_arr=frs_filterfiles(ls($incoming,true));
echo html_build_select_box_from_arrays($manual_files_arr,$manual_files_arr,'manual_filename',''); ?>
</p>
<?php } ?>
<td>
<?php
print frs_show_processor_popup ('processor_id',$processor_id);
-?>
+?>
</td>
</tr>
<tr>
- <td valign="top">
+ <td class="top">
<strong><?php echo _('Release Notes') ?>:</strong>
</td>
<td>
- <textarea name="release_notes" rows="7" cols="50"><?php echo htmlspecialchars(stripslashes($release_notes)); ?></textarea>
+ <textarea name="release_notes" rows="7" cols="50"><?php echo htmlspecialchars($release_notes); ?></textarea>
</td>
</tr>
<tr>
- <td valign="top">
+ <td class="top">
<strong><?php echo _('Change Log') ?>:</strong>
</td>
<td>
- <textarea name="release_changes" rows="7" cols="50"><?php echo htmlspecialchars(stripslashes($release_changes)); ?></textarea>
+ <textarea name="release_changes" rows="7" cols="50"><?php echo htmlspecialchars($release_changes); ?></textarea>
</td>
</tr>
<tr>