From 1d26c64a9a0b73821af19ca858dc708b83c45514 Mon Sep 17 00:00:00 2001 From: Tony Lambregts Date: Sat, 8 Jan 2005 18:28:32 +0000 Subject: [PATCH] Add notify messages to editAppFamily --- admin/editAppFamily.php | 135 +++++++++++++++++++++++++++++++++++++--- include/category.php | 12 ++++ include/user.php | 10 +-- include/util.php | 11 ++++ 4 files changed, 154 insertions(+), 14 deletions(-) diff --git a/admin/editAppFamily.php b/admin/editAppFamily.php index 4403d14..4279d78 100644 --- a/admin/editAppFamily.php +++ b/admin/editAppFamily.php @@ -7,6 +7,8 @@ include("path.php"); 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 @@ if(isset($_REQUEST['submit'])) // 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(isset($_REQUEST['submit'])) if(debugging()) { echo "

query: $sQuery

"; } 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 @@ if(isset($_REQUEST['submit'])) $hResult = query_appdb("DELETE FROM appData WHERE id = '{$_REQUEST['aId'][$i]}'"); if($hResult) + { addmsg("

Successfully deleted URL ".$_REQUEST['aOldDesc'][$i]." (".$_REQUEST['aOldURL'][$i].")

\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 @@ if(isset($_REQUEST['submit'])) $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("

Successfully updated ".$_REQUEST['aOldDesc'][$i]." (".$_REQUEST['aOldURL'][$i].")

\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 diff --git a/include/category.php b/include/category.php index efe2e49..7e69d1e 100644 --- a/include/category.php +++ b/include/category.php @@ -227,4 +227,16 @@ function deleteCategory($catId) 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; +} + ?> diff --git a/include/user.php b/include/user.php index 251931e..d83b81d 100644 --- a/include/user.php +++ b/include/user.php @@ -374,15 +374,17 @@ function UserWantsEmail($userid) /** * 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) { diff --git a/include/util.php b/include/util.php index b21c9ce..11241ea 100644 --- a/include/util.php +++ b/include/util.php @@ -283,4 +283,15 @@ function getNumberOfImages() 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; +} + ?>