2004-12-12 03:51:51 +00:00
< ? php
2004-12-25 20:08:00 +00:00
/*******************************/
/* code to submit a maintainer */
/*******************************/
2004-11-09 22:41:18 +00:00
2004-12-25 20:08:00 +00:00
/*
2004-12-27 23:54:55 +00:00
* application environment
2004-12-25 20:08:00 +00:00
*/
include ( " path.php " );
2005-02-02 00:12:35 +00:00
require ( BASE . " include/incl.php " );
require ( BASE . " include/category.php " );
2005-02-07 04:31:26 +00:00
require ( BASE . " include/application.php " );
2004-12-25 20:08:00 +00:00
/**
* Check the input of a submitted form . And output with a list
* of errors . ( < ul ></ ul > )
*/
2004-11-09 22:41:18 +00:00
function checkAppMaintainerInput ( $fields )
{
$errors = " " ;
if ( empty ( $fields [ 'maintainReason' ]) )
{
2005-01-10 22:15:44 +00:00
$errors .= " <li>Please enter why you would like to be an application maintainer.</li> \n " ;
2004-11-09 22:41:18 +00:00
}
if ( empty ( $errors ) )
{
return " " ;
}
else
{
return $errors ;
}
}
2005-01-30 23:12:48 +00:00
if ( ! $_SESSION [ 'current' ] -> isLoggedIn ())
2004-11-09 22:41:18 +00:00
{
errorpage ( " You need to be logged in to apply to be a maintainer. " );
exit ;
}
$appId = strip_tags ( $_POST [ 'appId' ]);
$versionId = strip_tags ( $_POST [ 'versionId' ]);
2004-12-10 00:18:01 +00:00
$superMaintainer = strip_tags ( $_POST [ 'superMaintainer' ]);
2004-11-09 22:41:18 +00:00
/* if the user is already a maintainer don't add them again */
2005-01-30 23:12:48 +00:00
if ( $_SESSION [ 'current' ] -> isMaintainer ( $appId , $versionId ))
2004-11-09 22:41:18 +00:00
{
echo " You are already a maintainer of this app! " ;
exit ;
}
2004-12-10 00:18:01 +00:00
/* if this user is a super maintainer they maintain all of the versionIds of this appId */
2005-01-30 23:12:48 +00:00
if ( $_SESSION [ 'current' ] -> isSuperMaintainer ( $appId ))
2004-12-10 00:18:01 +00:00
{
echo " You are already a supermaintainer of the whole application family! " ;
exit ;
}
2004-11-09 22:41:18 +00:00
if ( $_REQUEST [ 'maintainReason' ])
{
// check the input for empty/invalid fields
$errors = checkAppMaintainerInput ( $_REQUEST );
if ( ! empty ( $errors ))
{
2004-12-29 20:21:31 +00:00
errorpage ( " We found the following errors: " , " <ul> $errors </ul><br />Please go back and correct them. " );
2004-11-09 22:41:18 +00:00
exit ;
}
// header
2004-12-10 00:18:01 +00:00
if ( $superMaintainer )
apidb_header ( " Submit SuperMaintainer Request " );
else
apidb_header ( " Submit Maintainer Request " );
2004-11-09 22:41:18 +00:00
// add to queue
$query = " INSERT INTO appMaintainerQueue VALUES (null, ' " .
addslashes ( $_REQUEST [ 'appId' ]) . " ', ' " .
addslashes ( $_REQUEST [ 'versionId' ]) . " ', ' " .
2005-02-02 00:12:35 +00:00
addslashes ( $_SESSION [ 'current' ] -> iUserId ) . " ', ' " .
2004-12-10 00:18:01 +00:00
addslashes ( $_REQUEST [ 'maintainReason' ]) . " ', ' " .
addslashes ( $_REQUEST [ 'superMaintainer' ]) . " ', " .
2004-11-09 22:41:18 +00:00
" NOW() " . " ); " ;
2005-01-10 22:24:15 +00:00
if ( query_appdb ( $query ))
2004-11-09 22:41:18 +00:00
{
echo " <p>Your maintainer request has been submitted for Review. You should hear back \n " ;
echo " soon about the status of your submission</p> \n " ;
}
} else
{
2005-01-14 05:32:48 +00:00
// header
if ( $versionId )
2005-02-07 04:31:26 +00:00
{
$oVersion = new Version ( $versionId );
$oApp = new Application ( $oVersion -> iAppId );
apidb_header ( " Request to become an application maintainer of " . $oApp -> sName . " " . $oVersion -> sName );
}
2005-01-14 05:32:48 +00:00
else
2005-02-07 04:31:26 +00:00
{
$oApp = new Application ( $appId );
apidb_header ( " Request to become an application super maintainer of " . $oApp -> sName );
}
2004-11-09 22:41:18 +00:00
// show add to queue form
echo '<form name="newApp" action="maintainersubmit.php" method="post" enctype="multipart/form-data">' , " \n " ;
echo " <p>This page is for submitting a request to become an application maintainer. \n " ;
echo " An application maintainer is someone who runs the application \n " ;
echo " regularly and who is willing to be active in reporting regressions with newer \n " ;
2005-01-10 22:15:44 +00:00
echo " versions of Wine and to help other users run this application under Wine. " ;
2004-11-09 22:41:18 +00:00
echo " <p>Being an application maintainer comes with responsibilities. " ;
2004-12-29 20:21:31 +00:00
echo " <br /><br /><b>You are expected to:</b> " ;
2005-01-10 22:15:44 +00:00
echo " <li>Keep the application comments clean, all stale data should be removed</li> " ;
2004-11-09 22:41:18 +00:00
echo " <li>Be an active user of that application and version</li> " ;
2005-01-10 22:15:44 +00:00
echo " <li>Keep up-to-date with all Wine releases, if there are regressions they should be reported to wine-devel</li> " ;
2004-11-09 22:41:18 +00:00
echo " <p><b>You will:</b> " ;
echo " <li>Receive an email anytime a comment is posted or deleted for the application or the application information is modified</li> " ;
2005-01-10 22:15:44 +00:00
echo " <p>We ask that all maintainers explain why they want to be an application maintainer, \n " ;
2004-11-09 22:41:18 +00:00
echo " why they think they will do a good job and a little about their experience \n " ;
2005-01-10 22:15:44 +00:00
echo " with Wine. This is both to give you time to \n " ;
echo " think about whether you really want to be an application maintainer and also for the \n " ;
2004-11-09 22:41:18 +00:00
echo " appdb admins to identify people that are best suited for the job. Your request \n " ;
2005-01-10 22:15:44 +00:00
echo " may be denied if there are already a handful of maintainers for this application or if you \n " ;
echo " don't have the experience with Wine that is necessary to help other users out. \n " ;
2004-12-29 20:21:31 +00:00
echo " <br /> " ;
2004-12-10 00:18:01 +00:00
/* Special message for super maintainer applications */
if ( $superMaintainer )
{
echo " <p>As a super maintainer you are expected to do all of this but for EVERY version of \n " ;
echo " this application. We don't expect you to run every version but at least to help keep \n " ;
2005-01-10 22:15:44 +00:00
echo " the forums clean of stale and out-of-date information \n " ;
2004-12-10 00:18:01 +00:00
}
2004-12-29 20:21:31 +00:00
echo " <br /><br /> " ;
2004-11-09 22:41:18 +00:00
2004-12-10 00:18:01 +00:00
if ( $superMaintainer )
echo html_frame_start ( " New Super Maintainer Form " , 400 , " " , 0 );
else
echo html_frame_start ( " New Maintainer Form " , 400 , " " , 0 );
2004-11-09 22:41:18 +00:00
echo " <table width='100%' border=0 cellpadding=2 cellspacing=0> \n " ;
echo " <tr valign=top><td class=color0> " ;
2005-02-07 04:31:26 +00:00
echo '<b>Application</b></td><td>' . $oApp -> sName ;
2004-11-09 22:41:18 +00:00
echo '</td></tr>' , " \n " ;
2005-01-14 05:32:48 +00:00
if ( $versionId )
{
echo " <tr valign=top><td class=color0> " ;
2005-02-07 04:31:26 +00:00
echo '<b>Version</b></td><td>' . $oVersion -> sName ;
2005-01-14 05:32:48 +00:00
echo '</td></tr>' , " \n " ;
}
2004-11-09 22:41:18 +00:00
echo " <input type=hidden name='appId' value= $appId > " ;
echo " <input type=hidden name='versionId' value= $versionId > " ;
2004-12-10 00:18:01 +00:00
echo " <input type=hidden name='superMaintainer' value= $superMaintainer > " ;
if ( $superMaintainer )
2005-01-10 22:15:44 +00:00
echo '<tr valign=top><td class=color0><b>Why you want to and should be an application supermaintainer</b></td><td><textarea name="maintainReason" rows=15 cols=70></textarea></td></tr>' , " \n " ;
2004-12-10 00:18:01 +00:00
else
2005-01-10 22:15:44 +00:00
echo '<tr valign=top><td class=color0><b>Why you want to and should be an application maintainer</b></td><td><textarea name="maintainReason" rows=15 cols=70></textarea></td></tr>' , " \n " ;
2004-12-10 00:18:01 +00:00
2004-11-09 22:41:18 +00:00
echo '<tr valign=top><td class=color3 align=center colspan=2> <input type=submit value=" Submit Maintainer Request " class=button> </td></tr>' , " \n " ;
echo '</table>' , " \n " ;
echo html_frame_end ();
echo " </form> " ;
}
apidb_footer ();
?>