blob: b67ffc6ce3234bcf1afc4eef5f54b974b8a0b088 [file] [log] [blame]
// Step 1 -- Retrieve helper "beans" from the BSF framework
scriptaction = bsf.lookupBean( "scriptaction" )
manager = bsf.lookupBean( "manager" )
request = bsf.lookupBean( "request" )
logger = bsf.lookupBean( "logger" )
actionMap = bsf.lookupBean( "actionMap" )
// Step 2 -- Perform the action
logger.debug( "START addknowncourse.js" )
// Retrieve things from the session and request
// NOTE: they are all of type java.lang.String
session = request.getSession( false )
uwid = session.getAttribute( "uwid" )
term = request.getParameter( "term" )
course = request.getParameter( "course" )
distanceEd = request.getParameter( "distanceEd" )
extra = request.getParameter( "extra" )
logger.debug( "Raw" )
logger.debug( " uwid [" + uwid + "]" )
logger.debug( " term [" + term + "]" )
logger.debug( " course [" + course + "]" )
logger.debug( " distanceEd [" + distanceEd + "]" )
logger.debug( " extra [" + extra + "]" )
// Cook things a little to make them palatable to the database
if ( term == "0" ) { term = "" }
if ( course == "0" ) { course = "" }
if ( distanceEd == "on" ) { distanceEd = 2 } else { distanceEd = 1 }
if ( extra == "on" ) { extra = 2 } else { extra = 1 }
logger.debug( "Cooked" )
logger.debug( " uwid [" + uwid + "]" )
logger.debug( " term [" + term + "]" )
logger.debug( " course [" + course + "]" )
logger.debug( " distanceEd [" + distanceEd + "]" )
logger.debug( " extra [" + extra + "]" )
// Actually do the database work
// We have the choice of declaring things out here and making them explicitly
// null, or we have to use a different comparison in the "finally" block (defined?)
dbselector = null
datasource = null
conn = null
addStatement = null
try
{
dbselector = manager.lookup( scriptaction.DB_CONNECTION )
datasource = dbselector.select( "ceabplanner" )
conn = datasource.getConnection()
addStatement = conn.prepareStatement(
"INSERT INTO studentKnownCourseList ( STUDENT, KNOWN_COURSE, TERM_TAKEN, DISTANCE_ED, COURSE_EXTRA)" +
"VALUES ( ( SELECT id FROM students WHERE uw_userid = ? ), ?, ?, ?, ? )"
)
addStatement.setString( 1, uwid );
addStatement.setString( 2, course );
addStatement.setString( 3, term );
addStatement.setString( 4, distanceEd );
addStatement.setString( 5, extra );
result = addStatement.executeUpdate()
logger.debug( "Result #1 [" + result + "]" )
conn.commit()
actionMap.put( "scriptaction-continue", "" )
session.setAttribute( "results", "<SUCCESS>Course added at " + Date() + "</SUCCESS>" )
}
catch( ex )
{
logger.debug( "Caught Exception" )
logger.debug( " " + ex )
}
finally
{
if ( null != addStatement ) { addStatement.close() }
if ( null != conn ) { conn.close() }
if ( null != datasource ) { dbselector.release( datasource ) }
if ( null != dbselector ) { manager.release( dbselector ) }
}
logger.debug( "END addknown.js" )