[AppDB] Add Notifiy mesages to editAppFamily
tony_lambregts at telusplanet.net
tony_lambregts at telusplanet.net
Thu Jan 6 14:59:01 CST 2005
No this _not_ a security patch :)
Change Log: Add Notifiy mesages to editAppFamily
Files Changed: admin/editAppFamily.php include/category.php include/user.php
include/util.php
-------------- next part --------------
Index: admin/editAppFamily.php
===================================================================
RCS file: /home/wine/appdb/admin/editAppFamily.php,v
retrieving revision 1.11
diff -u -r1.11 editAppFamily.php
--- admin/editAppFamily.php 5 Jan 2005 05:30:23 -0000 1.11
+++ admin/editAppFamily.php 6 Jan 2005 20:49:17 -0000
@@ -7,6 +7,8 @@
include(BASE."include/"."incl.php");
include(BASE."include/"."tableve.php");
include(BASE."include/"."qclass.php");
+require(BASE."include/"."application.php");
+require(BASE."include/"."category.php");
if(!is_numeric($_REQUEST['appId']))
{
@@ -27,18 +29,91 @@
// commit changes of form to database
if($_REQUEST['submit'] == "Update Database")
{
- $sUpdate = compile_update_string(array( 'appName' => $_REQUEST['appName'],
- 'description' => $_REQUEST['description'],
- 'webPage' => $_REQUEST['webPage'],
- 'vendorId' => $_REQUEST['vendorId'],
- 'keywords' => $_REQUEST['keywords'],
- 'catId' => $_REQUEST['catId'] ));
+ // Get the old values from the database
+ $sQuery = "SELECT * FROM appFamily WHERE appId = ".$_REQUEST['appId'];
+ $hResult = query_appdb($sQuery);
+ $ob = mysql_fetch_object($hResult);
+ $sOld_appName = $ob->AppName;
+ $sOld_description = $ob->description;
+ $iOld_vendorId = $ob->vendorId;
+ $iOld_catId = $ob->catId;
+ $sOld_keywords = $ob->keywords;
+ $sOld_webPage = $ob->webPage;
+
+ $sWhatChanged = "";
+ $bAppChanged = false;
+ if ($sOld_appName <> $_REQUEST['appName'])
+ {
+ $sWhatChanged .= " App name: Old Value: ".stripslashes($sOld_appName)."\n";
+ $sWhatChanged .= " New Value: ".stripslashes($_REQUEST['appName'])."\n";
+ $bAppChanged = true;
+ }
+
+ if ($iOld_vendorId <> $_REQUEST['vendorId'])
+ {
+ $sWhatChanged .= " Vendor: Old Value: ".lookupVendorName($iOld_vendorId)."\n";
+ $sWhatChanged .= " New Value: ".lookupVendorName($_REQUEST['vendorId'])."\n";
+ $bAppChanged = true;
+ }
+
+ if ($old_description <> $description)
+ {
+ $sWhatChanged .= " Description: Old Value:\n";
+ $sWhatChanged .= "-----------------------:\n";
+ $sWhatChanged .= stripslashes($sOld_description)."\n";
+ $sWhatChanged .= "-----------------------:\n";
+ $sWhatChanged .= " Description: New Value:\n";
+ $sWhatChanged .= "-----------------------:\n";
+ $sWhatChanged .= stripslashes($_REQUEST['description'])."\n";
+ $sWhatChanged .= "-----------------------:\n";
+ $bAppChanged = true;
+ }
+
+ if ($iOld_catId <> $_REQUEST['catId'])
+ {
+ $sWhatChanged .= " Category: Old Value: ".lookupCategoryName($iOld_catId)."\n";
+ $sWhatChanged .= " New Value: ".lookupCategoryName($_REQUEST['catId'])."\n";
+ $bAppChanged = true;
+ }
+
+ if ($sOld_keywords <> $_REQUEST['keywords'])
+ {
+ $sWhatChanged .= " keywords: Old Value: ".stripslashes($sOld_keywords)."\n";
+ $sWhatChanged .= " New Value: ".stripslashes($_REQUEST['keywords'])."\n";
+ $bAppChanged = true;
+ }
+
+ if ($sOld_webPage <> $_REQUEST['webPage'])
+ {
+ $sWhatChanged .= " Web Page: Old Value: ".stripslashes($sOld_webPage)."\n";
+ $sWhatChanged .= " New Value: ".stripslashes($_REQUEST['webPage'])."\n";
+ $bAppChanged = true;
+ }
+
+ //did anything change?
+ if ($bAppChanged)
+ {
+ $sUpdate = compile_update_string(array( 'appName' => $_REQUEST['appName'],
+ 'description' => $_REQUEST['description'],
+ 'webPage' => $_REQUEST['webPage'],
+ 'vendorId' => $_REQUEST['vendorId'],
+ 'keywords' => $_REQUEST['keywords'],
+ 'catId' => $_REQUEST['catId'] ));
- if (query_appdb("UPDATE `appFamily` SET $sUpdate WHERE `appId` = {$_REQUEST['appId']}"))
- addmsg("Database Updated", "green");
+ if (query_appdb("UPDATE `appFamily` SET $sUpdate WHERE `appId` = {$_REQUEST['appId']}"))
+ {
+
+ addmsg("Database Updated", "green");
+
+ }
+ }
}
else if($_REQUEST['submit'] == "Update URL")
{
+
+ $sWhatChanged = "";
+ $bAppChanged = false;
+
if (!empty($_REQUEST['url_desc']) && !empty($_REQUEST['url']) )
{
// process added URL
@@ -54,7 +129,12 @@
if(debugging()) { echo "<p align=center><b>query:</b> $sQuery </p>"; }
if (query_appdb($sQuery))
+ {
addmsg("The URL was successfully added into the database", "green");
+ $sWhatChanged .= " Added Url: Description: ".stripslashes($_REQUEST['url_desc'])."\n";
+ $sWhatChanged .= " Url: ".stripslashes($_REQUEST['url'])."\n";
+ $bAppChanged = true;
+ }
}
// Process changed URL's
@@ -68,7 +148,13 @@
$hResult = query_appdb("DELETE FROM appData WHERE id = '{$_REQUEST['aId'][$i]}'");
if($hResult)
+ {
addmsg("<p><b>Successfully deleted URL ".$_REQUEST['aOldDesc'][$i]." (".$_REQUEST['aOldURL'][$i].")</b></p>\n",'green');
+ $sWhatChanged .= "Deleted Url: Description: ".stripslashes($_REQUEST['aOldDesc'][$i])."\n";
+ $sWhatChanged .= " url: ".stripslashes($_REQUEST['aOldURL'][$i])."\n";
+ $bAppChanged = true;
+ }
+
}
else if( $_REQUEST['aURL'][$i] != $_REQUEST['aOldURL'][$i] || $_REQUEST['adescription'][$i] != $_REQUEST['aOldDesc'][$i])
@@ -80,13 +166,42 @@
$sUpdate = compile_update_string( array( 'description' => $_REQUEST['adescription'][$i],
'url' => $_REQUEST['aURL'][$i]));
if (query_appdb("UPDATE appData SET $sUpdate WHERE id = '{$_REQUEST['aId'][$i]}'"))
+ {
addmsg("<p><b>Successfully updated ".$_REQUEST['aOldDesc'][$i]." (".$_REQUEST['aOldURL'][$i].")</b></p>\n",'green');
+ $sWhatChanged .= "Changed Url: Old Description: ".stripslashes($_REQUEST['aOldDesc'][$i])."\n";
+ $sWhatChanged .= " Old Url: ".stripslashes($_REQUEST['aOldURL'][$i])."\n";
+ $sWhatChanged .= " New Description: ".stripslashes($_REQUEST['adescription'][$i])."\n";
+ $sWhatChanged .= " New url: ".stripslashes($_REQUEST['aURL'][$i])."\n";
+ $bAppChanged = true;
+ }
}
- }
+ }
}
}
-
+ if ($bAppChanged)
+ {
+ $email = getNotifyEmailAddressList($_REQUEST['appId']);
+ if($email)
+ {
+ $fullAppName = "Application: ".lookupAppName($_REQUEST['appId']);
+ $ms .= APPDB_ROOT."appview.php?appId=".$_REQUEST['appId']."\n";
+ $ms .= "\n";
+ $ms .= ($_SESSION['current']->username ? $_SESSION['current']->username : "Anonymous")." changed ".$fullAppName."\n";
+ $ms .= "\n";
+ $ms .= $sWhatChanged."\n";
+ $ms .= "\n";
+ $ms .= STANDARD_NOTIFY_FOOTER;
+
+ mail( "", "[AppDB] ".$fullAppName ,$ms, "Bcc: ".stripslashes( $email));
+ } else
+ {
+ $email = "no one";
+ }
+ addmsg("mesage sent to: ".$email, green);
+ }
+
redirect(apidb_fullurl("appview.php?appId={$_REQUEST['appId']}"));
+ exit;
}
else
// Show the form for editing the Application Family
Index: include/category.php
===================================================================
RCS file: /home/wine/appdb/include/category.php,v
retrieving revision 1.4
diff -u -r1.4 category.php
--- include/category.php 25 Dec 2004 20:11:13 -0000 1.4
+++ include/category.php 6 Jan 2005 20:49:17 -0000
@@ -227,4 +227,16 @@
addmsg("Failed to delete category $catId: ".mysql_error(), "red");
}
}
+
+Function lookupCategoryName($catId)
+{
+ $sResult = query_appdb("SELECT * FROM appCategory ".
+ "WHERE catId = ".$catId);
+ if(!$sResult || mysql_num_rows($sResult) != 1)
+ return "Unknown category";
+
+ $ob = mysql_fetch_object($sResult);
+ return $ob->catName;
+}
+
?>
Index: include/user.php
===================================================================
RCS file: /home/wine/appdb/include/user.php,v
retrieving revision 1.20
diff -u -r1.20 user.php
--- include/user.php 5 Jan 2005 19:08:06 -0000 1.20
+++ include/user.php 6 Jan 2005 20:49:17 -0000
@@ -374,15 +383,17 @@
/**
* get the email address of people to notify for this appId and versionId
*/
-function getNotifyEmailAddressList($appId, $versionId)
+function getNotifyEmailAddressList($appId, $versionId = 0)
{
$aUserId = array();
$c = 0;
$retval = "";
+ if ($versionId == 0)
+ $sWhere = "appId = ".$appId;
+ else
+ $sWhere = "appId = ".$appId." AND versionId = ".$versionId;
- $query = "SELECT userId FROM ".
- "appMaintainers WHERE appId = '$appId' " .
- "AND versionId = '$versionId';";
+ $query = "SELECT userId FROM appMaintainers WHERE ".$sWhere.";";
$result = mysql_query($query);
if(mysql_num_rows($result) > 0)
{
Index: include/util.php
===================================================================
RCS file: /home/wine/appdb/include/util.php,v
retrieving revision 1.12
diff -u -r1.12 util.php
--- include/util.php 4 Jan 2005 19:37:49 -0000 1.12
+++ include/util.php 6 Jan 2005 20:49:17 -0000
@@ -332,4 +332,15 @@
return $row->num_images;
}
+function lookupVendorName($vendorId)
+{
+ $sResult = query_appdb("SELECT * FROM vendor ".
+ "WHERE vendorId = ".$vendorId);
+ if(!$sResult || mysql_num_rows($sResult) != 1)
+ return "Unknown vendor";
+
+ $vendor = mysql_fetch_object($sResult);
+ return $vendor->vendorName;
+}
+
?>
More information about the wine-patches
mailing list