Note: this list is kept only as a demonstration for CVSNotice. For the latest CVS notices, see the Xaraya and Postnuke sites
View Statistics - Next Notice - Previous NoticeDirectory filter : [ all ] / postnuke_modules / nascar [ view in CVS ]
| Date | Directory [filter] | File(s) [view] | Author [filter] |
| 11 Aug 2002 02:05:05 | postnuke_modules/nascar | pnadmin.php,1.2,1.3 pnadminapi.php,1.1,1.2 pnuserapi.php,1.2,1.3 | George Neill |
| + changed the tracks view output | |||
Update of /home/cvsroot/postnuke_modules/nascar
In directory ns7.hostnuke.net:/tmp/cvs-serv4415
Modified Files:
pnadmin.php pnadminapi.php pnuserapi.php
Log Message:
+ changed the tracks view output
+ added code to allow modification of tracks
+ added images for track view.
Still need to clean up and comment everything I have done thus far.
GNeill 2002.08.10
Index: pnadmin.php
===================================================================
RCS file: /home/cvsroot/postnuke_modules/nascar/pnadmin.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** pnadmin.php 10 Aug 2002 06:34:54 -0000 1.2
--- pnadmin.php 11 Aug 2002 02:05:02 -0000 1.3
***************
*** 77,86 ****
$data['tracks_id'] = pnML(pnVarPrepForDisplay(_TRACKSID));
$data['tracks_name'] = pnML(pnVarPrepForDisplay(_TRACKSNAME));
- $data['tracks_longname'] = pnML(pnVarPrepForDisplay(_TRACKSLONGNAME));
- $data['tracks_location'] = pnML(pnVarPrepForDisplay(_TRACKSLOCATION));
- $data['tracks_weather_url'] = pnML(pnVarPrepForDisplay(_TRACKSWEATHERURL));
- $data['tracks_image'] = pnML(pnVarPrepForDisplay(_TRACKSIMAGE));
- $data['tracks_length'] = pnML(pnVarPrepForDisplay(_TRACKSLENGTH));
- $data['tracks_url'] = pnML(pnVarPrepForDisplay(_TRACKSURL));
$data['tracks_active'] = pnML(pnVarPrepForDisplay(_TRACKSACTIVE));
--- 77,80 ----
***************
*** 99,113 ****
}
! $data['status'] = pnML('No items available');
!
! $reason = pnExceptionValueString();
!
! if (!empty($reason)) {
! $data['status'] .= '<br /><br />'. pnML('Reason') .' : '. $reason;
! }
!
! pnExceptionFree();
! return $data;
}
--- 93,102 ----
}
! // do I need to do any clean up here ?
! //
! // there are no entries in the DB just go ahead and redirect
! // to the 'add' page. GN
! pnRedirect(pnModURL('nascar', 'admin', 'new_tracks'));
}
***************
*** 221,225 ****
if ($tid == true) {
! pnSessionSetVar('statusmsg', _NASCARTRACKSCREATED);
}
--- 210,215 ----
if ($tid == true) {
! pnSessionSetVar('statusmsg',
! pnML(pnVarPrepForDisplay(_NASCARTRACKSCREATED)));
}
***************
*** 230,239 ****
}
- /**
- * modify an item
- * This is a standard function that is called whenever an administrator
- * wishes to modify a current module item
- * @param 'tid' the id of the item to be modified
- */
function nascar_admin_modify_tracks($args)
{
--- 220,223 ----
***************
*** 242,246 ****
'objectid');
-
extract($args);
--- 226,229 ----
***************
*** 253,257 ****
}
! $item = pnModAPIFunc('nascar', 'user', 'get', array('tid' => $tid));
if ($item == false) {
--- 236,240 ----
}
! $item = pnModAPIFunc('nascar', 'user', 'get_tracks', array('tid' => $tid));
if ($item == false) {
***************
*** 259,290 ****
}
! if (!pnSecAuthAction(0, 'nascar::Item', "$item[name]::$tid", ACCESS_EDIT)) {
return pnML('Not authorized to modify ', 'nascar', pnVarPrepForDisplay($tid));
}
! return array('authid' => pnSecGenAuthKey(),
! 'namelabel' => pnVarPrepForDisplay(_NASCARNAME),
! 'numberlabel' => pnVarPrepForDisplay(_NASCARNUMBER),
! 'updatebutton' => pnVarPrepForDisplay(_NASCARUPDATE),
! 'item' => $item);
}
! /**
! * This is a standard function that is called with the results of the
! * form supplied by nascar_admin_modify() to update a current item
! * @param 'tid' the id of the item to be updated
! * @param 'name' the name of the item to be updated
! * @param 'number' the number of the item to be updated
! */
! function nascar_admin_update($args)
{
list($tid,
$objectid,
! $name,
! $number) = pnVarCleanFromInput('tid',
! 'objectid',
! 'name',
! 'number');
!
extract($args);
--- 242,289 ----
}
! if (!pnSecAuthAction(0, 'nascar::Item', "$item[tname]::$tid", ACCESS_EDIT)) {
return pnML('Not authorized to modify ', 'nascar', pnVarPrepForDisplay($tid));
}
! return array (
! 'authid' => pnSecGenAuthKey(),
! 'nascar_home' => pnML(pnVarPrepForDisplay(_NASCARHOME)),
! 'nascar_title' => pnML(pnVarPrepForDisplay(_NASCARTITLE)),
! 'label_viewtracks' => pnML(pnVarPrepForDisplay(_NASCARTRACKS)),
! 'label_id' => pnML(pnVarPrepForDisplay(_TRACKSID)),
! 'label_name' => pnML(pnVarPrepForDisplay(_TRACKSNAME)),
! 'label_longname' => pnML(pnVarPrepForDisplay(_TRACKSLONGNAME)),
! 'label_location' => pnML(pnVarPrepForDisplay(_TRACKSLOCATION)),
! 'label_weather_url' => pnML(pnVarPrepForDisplay(_TRACKSWEATHERURL)),
! 'label_image' => pnML(pnVarPrepForDisplay(_TRACKSIMAGE)),
! 'label_length' => pnML(pnVarPrepForDisplay(_TRACKSLENGTH)),
! 'label_url' => pnML(pnVarPrepForDisplay(_TRACKSURL)),
! 'label_active' => pnML(pnVarPrepForDisplay(_TRACKSACTIVE)),
! 'updatebutton' => pnML('Update'),
! 'item' => $item
! );
}
! function nascar_admin_update_tracks($args)
{
list($tid,
$objectid,
! $tname,
! $tlongname,
! $tlocation,
! $tweather_url,
! $timage,
! $tlength,
! $turl,
! $tactive ) = pnVarCleanFromInput('tid',
! 'objectid',
! 'tname',
! 'tlongname',
! 'tlocation',
! 'tweather_url',
! 'timage',
! 'tlength',
! 'turl',
! 'tactive');
extract($args);
***************
*** 300,303 ****
--- 299,303 ----
pnExceptionSet(PN_SYSTEM_EXCEPTION, 'NO_PERMISSION',
new SystemException($msg));
+
return;
}
***************
*** 315,327 ****
if(pnModAPIFunc('nascar',
'admin',
! 'update',
! array('tid' => $tid,
! 'name' => $name,
! 'number' => $number))) {
! pnSessionSetVar('statusmsg', _NASCARUPDATED);
! }
! pnRedirect(pnModURL('nascar', 'admin', 'view'));
return true;
--- 315,334 ----
if(pnModAPIFunc('nascar',
'admin',
! 'update_tracks',
! array('tid' => $tid,
! 'tname' => $tname,
! 'tlongname' => $tlongname,
! 'tlocation' => $tlocation,
! 'tweather_url' => $tweather_url,
! 'timage' => $timage,
! 'tlength' => $tlength,
! 'turl' => $turl,
! 'tactive' => $tactive))) {
! pnSessionSetVar('statusmsg',
! pnML(pnVarPrepForDisplay(_NASCARTRACKSUPDATED)));
! }
! pnRedirect(pnModURL('nascar', 'admin', 'view_tracks'));
return true;
***************
*** 408,412 ****
array('tid' => $tid))) {
! pnSessionSetVar('statusmsg', _NASCARTRACKSDELETED);
}
--- 415,420 ----
array('tid' => $tid))) {
! pnSessionSetVar('statusmsg',
! pnML(pnVarPrepForDisplay(_NASCARTRACKSDELETED)));
}
Index: pnadminapi.php
===================================================================
RCS file: /home/cvsroot/postnuke_modules/nascar/pnadminapi.php,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** pnadminapi.php 10 Aug 2002 06:02:33 -0000 1.1
--- pnadminapi.php 11 Aug 2002 02:05:02 -0000 1.2
***************
*** 28,40 ****
extract($args);
! $invalid = array();
! if (count($invalid) > 0) {
! $msg = pnML('Invalid #(1) for #(2) function #(3)() in module #(4)',
! join(', ',$invalid), 'admin', 'create_tracks', 'Nascar');
! pnExceptionSet(PN_USER_EXCEPTION, 'BAD_PARAM',
! new SystemException($msg));
! return false;
! }
if (!pnSecAuthAction(0, 'nascar::Item', "$tname::", ACCESS_ADD)) {
--- 28,40 ----
extract($args);
! //$invalid = array();
! //if (count($invalid) > 0) {
! //$msg = pnML('Invalid #(1) for #(2) function #(3)() in module #(4)',
! //join(', ',$invalid), 'admin', 'create_tracks', 'Nascar');
! //pnExceptionSet(PN_USER_EXCEPTION, 'BAD_PARAM',
! //new SystemException($msg));
! //return false;
! //}
if (!pnSecAuthAction(0, 'nascar::Item', "$tname::", ACCESS_ADD)) {
***************
*** 153,201 ****
}
! /**
! * update a nascar item
! *
! * @author the Nascar module development team
! * @param $args['tid'] the ID of the item
! * @param $args['name'] the new name of the item
! * @param $args['number'] the new number of the item
! * @raise BAD_PARAM, NO_PERMISSION, DATABASE_ERROR
! */
! function nascar_adminapi_update($args)
{
- // Get arguments from argument array - all arguments to this function
- // should be obtained from the $args array, getting them from other
- // places such as the environment is not allowed, as that makes
- // assumptions that will not hold in future versions of PostNuke
extract($args);
- // Argument check - make sure that all required arguments are present
- // and in the right format, if not then set an appropriate error
- // message and return
- // Note : since we have several arguments we want to check here, we'll
- // report all those that are invalid at the same time...
$invalid = array();
! if (!isset($tid) || !is_numeric($tid)) {
! $invalid[] = 'item ID';
! }
! if (!isset($name) || !is_string($name)) {
! $invalid[] = 'name';
! }
! if (!isset($number) || !is_numeric($number)) {
! $invalid[] = 'number';
}
if (count($invalid) > 0) {
$msg = pnML('Invalid #(1) for #(2) function #(3)() in module #(4)',
! join(', ',$invalid), 'admin', 'update', 'Nascar');
pnExceptionSet(PN_USER_EXCEPTION, 'BAD_PARAM',
new SystemException($msg));
return false;
}
- // Load API. Note that this is loading the user API in addition to
- // the administration API, that is because the user API contains
- // the function to obtain item information which is the first thing
- // that we need to do. If the API fails to load an appropriate error
- // message is posted and the function returns
if (!pnModAPILoad('nascar', 'user')) {
$msg = pnML('Unable to load #(1) #(2) API',
--- 153,178 ----
}
! function nascar_adminapi_update_tracks($args)
{
extract($args);
$invalid = array();
!
! if(!isset($tid))
! {
! $invalid[] = "track id";
}
+
if (count($invalid) > 0) {
+
$msg = pnML('Invalid #(1) for #(2) function #(3)() in module #(4)',
! join(', ',$invalid), 'admin', 'update_tracks', 'Nascar');
!
pnExceptionSet(PN_USER_EXCEPTION, 'BAD_PARAM',
new SystemException($msg));
+
return false;
}
if (!pnModAPILoad('nascar', 'user')) {
$msg = pnML('Unable to load #(1) #(2) API',
***************
*** 206,221 ****
}
! // The user API function is called. This takes the item ID which
! // we obtained from the input and gets us the information on the
! // appropriate item. If the item does not exist we post an appropriate
! // message and return
! $item = pnModAPIFunc('nascar',
! 'user',
! 'get',
! array('tid' => $tid));
if ($item == false) {
$msg = pnML('Invalid #(1) for #(2) function #(3)() in module #(4)',
! 'item ID', 'user', 'get', 'Nascar');
pnExceptionSet(PN_USER_EXCEPTION, 'BAD_PARAM',
new SystemException($msg));
--- 183,191 ----
}
! $item = pnModAPIFunc('nascar', 'user', 'get_tracks', array('tid' => $tid));
if ($item == false) {
$msg = pnML('Invalid #(1) for #(2) function #(3)() in module #(4)',
! 'item ID', 'user', 'get_tracks', 'Nascar');
pnExceptionSet(PN_USER_EXCEPTION, 'BAD_PARAM',
new SystemException($msg));
***************
*** 223,238 ****
}
! // Security check - important to do this as early on as possible to
! // avoid potential security holes or just too much wasted processing.
! // However, in this case we had to wait until we could obtain the item
! // name to complete the instance information so this is the first
! // chance we get to do the check
!
! // Note that at this stage we have two sets of item information, the
! // pre-modification and the post-modification. We need to check against
! // both of these to ensure that whoever is doing the modification has
! // suitable permissions to edit the item otherwise people can potentially
! // edit areas to which they do not have suitable access
! if (!pnSecAuthAction(0, 'nascar::Item', "$item[name]::$tid", ACCESS_EDIT)) {
$msg = pnML('Not authorized to edit #(1) item #(2)',
'Nascar', pnVarPrepForStore($tid));
--- 193,197 ----
}
! if (!pnSecAuthAction(0, 'nascar::Item', "$item[tname]::$tid", ACCESS_EDIT)) {
$msg = pnML('Not authorized to edit #(1) item #(2)',
'Nascar', pnVarPrepForStore($tid));
***************
*** 241,245 ****
return false;
}
! if (!pnSecAuthAction(0, 'nascar::Item', "$name::$tid", ACCESS_EDIT)) {
$msg = pnML('Not authorized to edit #(1) item #(2)',
'Nascar', pnVarPrepForStore($tid));
--- 200,205 ----
return false;
}
!
! if (!pnSecAuthAction(0, 'nascar::Item', "$tname::$tid", ACCESS_EDIT)) {
$msg = pnML('Not authorized to edit #(1) item #(2)',
'Nascar', pnVarPrepForStore($tid));
***************
*** 249,287 ****
}
- // Get database setup - note that both pnDBGetConn() and pnDBGetTables()
- // return arrays but we handle them differently. For pnDBGetConn()
- // we currently just want the first item, which is the official
- // database handle. For pnDBGetTables() we want to keep the entire
- // tables array together for easy reference later on
list($dbconn) = pnDBGetConn();
! $pntable = pnDBGetTables();
!
! // It's good practice to name the table and column definitions you
! // are getting - $table and $column don't cut it in more complex
! // modules
! $nascartable = $pntable['nascar'];
- // Update the item - the formatting here is not mandatory, but it does
- // make the SQL statement relatively easy to read. Also, separating
- // out the sql statement from the Execute() command allows for simpler
- // debug operation if it is ever needed
$sql = "UPDATE $nascartable
! SET pn_name = '" . pnVarPrepForStore($name) . "',
! pn_number = " . pnVarPrepForStore($number) . "
! WHERE pn_tid = " . pnVarPrepForStore($tid);
$dbconn->Execute($sql);
- // Check for an error with the database code, and if so set an
- // appropriate error message and return
if ($dbconn->ErrorNo() != 0) {
- // Hint : for debugging SQL queries, you can use $dbconn->ErrorMsg()
- // to retrieve the actual database error message, and use e.g. the
- // following message :
- // $msg = pnML('Database error #(1) in query #(2) for #(3) function ' .
- // '#(4)() in module #(5)',
- // $dbconn->ErrorMsg(), $sql, 'admin', 'update', 'Nascar');
- // Don't use that for release versions, though...
$msg = pnML('Database error for #(1) function #(2)() in module #(3)',
! 'admin', 'update', 'Nascar');
pnExceptionSet(PN_SYSTEM_EXCEPTION, 'DATABASE_ERROR',
new SystemException($msg));
--- 209,232 ----
}
list($dbconn) = pnDBGetConn();
! $pntable = pnDBGetTables();
! $nascartable = $pntable['nascar_tracks'];
$sql = "UPDATE $nascartable
! SET pn_track_name = '" . pnVarPrepForStore($tname) . "',
! pn_longname = '" . pnVarPrepForStore($tlongname) . "',
! pn_location = '" . pnVarPrepForStore($tlocation) . "',
! pn_weather_url = '" . pnVarPrepForStore($tweather_url) ."',
! pn_track_image = '" . pnVarPrepForStore($timage) . "',
! pn_track_length = '" . pnVarPrepForStore($tlength) . "',
! pn_track_url = '" . pnVarPrepForStore($turl) . "',
! pn_active = " . pnVarPrepForStore($tactive) . "
! WHERE pn_track_id = " . pnVarPrepForStore($tid);
!
$dbconn->Execute($sql);
if ($dbconn->ErrorNo() != 0) {
$msg = pnML('Database error for #(1) function #(2)() in module #(3)',
! 'admin', 'update_tracks', 'Nascar');
pnExceptionSet(PN_SYSTEM_EXCEPTION, 'DATABASE_ERROR',
new SystemException($msg));
***************
*** 289,293 ****
}
- // Let the calling process know that we have finished successfully
return true;
}
--- 234,237 ----
Index: pnuserapi.php
===================================================================
RCS file: /home/cvsroot/postnuke_modules/nascar/pnuserapi.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** pnuserapi.php 10 Aug 2002 06:02:33 -0000 1.2
--- pnuserapi.php 11 Aug 2002 02:05:02 -0000 1.3
***************
*** 95,104 ****
list($tid,
$tname,
! $tlongname,
! $tlocation,
! $tweather_url,
! $timage,
! $tlength,
! $turl,
$tactive) = $result->fields;
--- 95,104 ----
list($tid,
$tname,
! $tlongname,
! $tlocation,
! $tweather_url,
! $timage,
! $tlength,
! $turl,
$tactive) = $result->fields;
***************
*** 106,115 ****
$items[] = array('tid' => $tid,
'tname' => $tname,
! 'tlongname' => $tlongname,
! 'tlocation' => $tlocation,
! 'tweather_url' => $tweather_url,
! 'timage' => $timage,
! 'tlength' => $tlength,
! 'turl' => $turl,
'tactive' => $tactive);
}
--- 106,115 ----
$items[] = array('tid' => $tid,
'tname' => $tname,
! 'tlongname' => $tlongname,
! 'tlocation' => $tlocation,
! 'tweather_url' => $tweather_url,
! 'timage' => $timage,
! 'tlength' => $tlength,
! 'turl' => $turl,
'tactive' => $tactive);
}
***************
*** 137,141 ****
$nascartable = $pntable['nascar_tracks'];
! $sql = "SELECT pn_track_id, pn_track_name
FROM $nascartable
WHERE pn_track_id = " . pnVarPrepForStore($tid);
--- 137,149 ----
$nascartable = $pntable['nascar_tracks'];
! $sql = "SELECT pn_track_id,
! pn_track_name,
! pn_longname,
! pn_location,
! pn_weather_url,
! pn_track_image,
! pn_track_length,
! pn_track_url,
! pn_active
FROM $nascartable
WHERE pn_track_id = " . pnVarPrepForStore($tid);
***************
*** 156,160 ****
}
! list($tid, $tname) = $result->fields;
$result->Close();
--- 164,176 ----
}
! list($tid,
! $tname,
! $tlongname,
! $tlocation,
! $tweather_url,
! $timage,
! $tlength,
! $turl,
! $tactive) = $result->fields;
$result->Close();
***************
*** 168,174 ****
}
! $item = array('tid' => $tid, 'tname' => $tname);
!
! return $item;
}
--- 184,196 ----
}
! return(array('tid' => $tid,
! 'tname' => $tname,
! 'tlongname' => $tlongname,
! 'tlocation' => $tlocation,
! 'tweather_url' => $tweather_url,
! 'timage' => $timage,
! 'tlength' => $tlength,
! 'turl' => $turl,
! 'tactive' => $tactive));
}
View Statistics - Next Notice - Previous Notice
| Visit Developer Site - Browse CVS Repository |
Syndicate via backend.rss (max. once per hour please) | Powered by CVSNotice 0.1.3 |