diff --git a/appview.php b/appview.php index 0fc8e80..b1fb693 100644 --- a/appview.php +++ b/appview.php @@ -1,11 +1,11 @@ add("Add Note", $apidb_root."admin/addAppNote.php?appId=$appId&versionId=$versionId"); + if($_REQUEST[versionId]) { + $m->add("Add Note", $apidb_root."admin/addAppNote.php?appId=$appId&versionId=".$_REQUEST['versionId']); $m->addmisc(" "); - $m->add("Edit Version", $apidb_root."admin/editAppVersion.php?appId=$appId&versionId=$versionId"); + $m->add("Edit Version", $apidb_root."admin/editAppVersion.php?appId=$appId&versionId=".$_REQUEST['versionId']); - $url = $apidb_root."admin/deleteAny.php?what=appVersion&versionId=$versionId&confirmed=yes"; + $url = $apidb_root."admin/deleteAny.php?what=appVersion&versionId=".$_REQUEST['versionId']."&confirmed=yes"; $m->add("Delete Version", "javascript:deleteURL(\"Are you sure?\", \"".$url."\")"); } else { - $m->add("Add Version", $apidb_root."admin/addAppVersion.php?appId=$appId"); + $m->add("Add Version", $apidb_root."admin/addAppVersion.php?appId=".$_REQUEST['appId']); $m->addmisc(" "); - - $m->add("Edit App", $apidb_root."admin/editAppFamily.php?appId=$appId"); - + + $m->add("Edit App", $apidb_root."admin/editAppFamily.php?appId=".$_REQUEST['appId']); + // global admin options if(havepriv("admin")) { - $url = $apidb_root."admin/deleteAny.php?what=appFamily&appId=$appId&confirmed=yes"; + $url = $apidb_root."admin/deleteAny.php?what=appFamily&appId=".$_REQUEST['appId']."&confirmed=yes"; $m->add("Delete App", "javascript:deleteURL(\"Are you sure?\", \"".$url."\")"); $m->addmisc(" "); - $m->add("Edit Owners", $apidb_root."admin/editAppOwners.php?appId=$appId"); - $m->add("Edit Bundle", $apidb_root."admin/editBundle.php?bundleId=$appId"); + $m->add("Edit Owners", $apidb_root."admin/editAppOwners.php?appId=".$_REQUEST['appId']); + $m->add("Edit Bundle", $apidb_root."admin/editBundle.php?bundleId=".$_REQUEST['appId']); } } @@ -60,34 +56,47 @@ function admin_menu() } -function get_screenshot_img($appId, $versionId) +/** + * Get a random image for a particular version of an app. + * If the version is not set, get a random app image + */ +function get_screenshot_img($appId, $versionId="") { global $apidb_root; - if(!$versionId) - $versionId = 0; - - $result = mysql_query("SELECT * FROM appData WHERE appId = $appId AND versionId = $versionId AND type = 'image'"); + if($versionId) + { + $result = mysql_query("SELECT *, RAND() AS rand FROM appData WHERE appId = $appId AND versionId = $versionId AND type = 'image' ORDER BY rand"); + } + else { + $result = mysql_query("SELECT *, RAND() AS rand FROM appData WHERE appId = $appId AND type = 'image' ORDER BY rand"); + } if(!$result || !mysql_num_rows($result)) { - $imgFile = "No Screenshot"; + $imgFile = "No Screenshot"; } else { $ob = mysql_fetch_object($result); $imgFile = "$ob->description"; + "border=0 alt='$ob->description' />"; } $img = html_frame_start("",'128','',2); - $img .= "$imgFile"; - $img .= html_frame_end()."
"; + if($versionId) + $img .= "$imgFile"; + else + $img .= $imgFile; + $img .= html_frame_end()."
"; return $img; } +/** + * TODO: what does it do ? + */ function display_catpath($catId) { $cat = new Category($catId); @@ -98,16 +107,18 @@ function display_catpath($catId) echo html_frame_end(); } -/* display the SUB apps that belong to this app */ + +/** + * display the SUB apps that belong to this app + */ function display_bundle($appId) { $result = mysql_query("SELECT appFamily.appId, appName, description FROM appBundle, appFamily ". - "WHERE bundleId = $appId AND appBundle.appId = appFamily.appId"); + "WHERE bundleId = $appId AND appBundle.appId = appFamily.appId"); if(!$result || mysql_num_rows($result) == 0) - { - // do nothing - return; - } + { + return; // do nothing + } echo html_frame_start("","98%","",0); echo "\n\n"; @@ -118,36 +129,36 @@ function display_bundle($appId) echo "\n\n"; $c = 0; - while($ob = mysql_fetch_object($result)) - { - //set row color - $bgcolor = ($c % 2 == 0) ? "color0" : "color1"; + while($ob = mysql_fetch_object($result)) { + //set row color + $bgcolor = ($c % 2 == 0) ? "color0" : "color1"; - //format desc - $desc = substr(stripslashes($ob->description),0,50); - if(strlen($desc) == 50) - $desc .= " ..."; + //format desc + $desc = substr(stripslashes($ob->description),0,50); + if(strlen($desc) == 50) $desc .= " ..."; - //display row - echo "\n"; - echo " \n"; - echo " \n"; - echo "\n\n"; + //display row + echo "\n"; + echo " \n"; + echo " \n"; + echo "\n\n"; - $c++; - } + $c++; + } echo "
".stripslashes($ob->appName)."$desc  
".stripslashes($ob->appName)."$desc  
\n\n"; echo html_frame_end(); } -/* display the notes for the app */ +/** + * display the notes for the app + */ function display_notes($appId, $versionId = 0) { $result = mysql_query("SELECT noteId,noteTitle FROM appNotes ". - "WHERE appId = $appId AND versionId = $versionId"); - + "WHERE appId = $appId AND versionId = $versionId"); + if(!$result || mysql_num_rows($result) == 0) { // do nothing @@ -158,61 +169,63 @@ function display_notes($appId, $versionId = 0) $c = 1; while($ob = mysql_fetch_object($result)) - { - //skip if NONAME - if ($ob->noteTitle == "NONAME" || $ob->noteTitle == "WARNING" || $ob->noteTitle == "HOWTO") { continue; } - - //set link for version - if ($versionId != 0) - { - $versionLink = "&versionId=$versionId"; - } - - //display row + { + // skip if NONAME + if ($ob->noteTitle == "NONAME" || $ob->noteTitle == "WARNING" || $ob->noteTitle == "HOWTO") { continue; } + + // set link for version + if ($versionId != 0) + { + $versionLink = "&versionId=$versionId"; + } + + // display row if (havepriv("admin") || isMaintainer($appId,$versionId) ) echo " $c. ".substr(stripslashes($ob->noteTitle),0,30)."
\n"; else echo " $c. ".substr(stripslashes($ob->noteTitle),0,30)."
\n"; - $c++; - } + $c++; + } echo "\n"; } -/* display the versions */ +/** + * display the versions + */ function display_versions($appId, $versions) { - if ($versions) - { - echo html_frame_start("","98%","",0); - echo "\n\n"; + if ($versions) + { + echo html_frame_start("","98%","",0); + echo "
\n\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "\n\n"; - - $c = 0; - while(list($idx, $ver) = each($versions)) - { + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "\n\n"; + + $c = 0; + while(list($idx, $ver) = each($versions)) + { //set row color $bgcolor = ($c % 2 == 0) ? "color0" : "color1"; //format desc $desc = substr(stripslashes($ver->description),0,75); if(strlen($desc) == 75) - $desc .= " ..."; - + $desc .= " ..."; + //get ratings $r_win = rating_stars_for_version($ver->versionId, "windows"); $r_fake = rating_stars_for_version($ver->versionId, "fake"); - + //count comments $r_count = count_comments($appId,$ver->versionId); - + //display row echo "\n"; echo " \n"; @@ -222,23 +235,25 @@ function display_versions($appId, $versions) echo " \n"; echo "\n\n"; - $c++; - } - - echo "
VersionDescriptionRating With WindowsRating Without WindowsComments
VersionDescriptionRating With WindowsRating Without WindowsComments
".$ver->versionName."$r_count
\n"; - echo html_frame_end("Click the Version Name to view the details of that Version"); - } + $c++; + } + + echo "\n"; + echo html_frame_end("Click the Version Name to view the details of that Version"); + } } -/* code to VIEW an application & versions */ $appId = $_REQUEST['appId']; $versionId = $_REQUEST['versionId']; +/** + * We want to see an application family (=no version) + */ if(!is_numeric($appId)) { - errorpage("Something went wrong with the IDs"); - exit; + errorpage("Something went wrong with the IDs"); + exit; } if($appId && !$versionId) @@ -247,37 +262,34 @@ if($appId && !$versionId) $data = $app->data; if(!$data) { - // Oops! application not found or other error. do something + // oops! application not found or other error. do something errorpage('Internal Database Access Error'); exit; } - // Show Vote Menu + // show Vote Menu if(loggedin()) apidb_sidebar_add("vote_menu"); - // Show Admin Menu + // show Admin Menu if(loggedin() && (havepriv("admin") || $current->ownsApp($appId))) apidb_sidebar_add("admin_menu"); // header apidb_header("Viewing App - ".$data->appName); - //cat display + // cat display display_catpath($app->data->catId); - //set Vendor + // set Vendor $vendor = $app->getVendor(); - //set URL + // set URL $appLinkURL = ($data->webPage) ? "".substr(stripslashes($data->webPage),0,30)."": " "; - - //set Image - $img = get_screenshot_img($appId, $versionId); - - //start display application + + // start display application echo html_frame_start("","98%","",0); - + echo "\n"; echo " \n"; echo " \n"; - - //display notes - display_notes($appId); - - //main URL - echo " \n"; + + // display notes + display_notes($appId); + + // main URL + echo " \n"; - //optional links - $result = mysql_query("SELECT * FROM appData WHERE appId = $appId AND type = 'url'"); - if($result && mysql_num_rows($result) > 0) + // optional links + $result = mysql_query("SELECT * FROM appData WHERE appId = $appId AND type = 'url'"); + if($result && mysql_num_rows($result) > 0) { - echo " \n"; - } - - // display app owner - $result = mysql_query("SELECT * FROM appOwners WHERE appId = $appId"); - if($result && mysql_num_rows($result) > 0) + echo " \n"; + } + + // image + $img = get_screenshot_img($appId); + echo "\n"; + + // display app owner + $result = mysql_query("SELECT * FROM appOwners WHERE appId = $appId"); + if($result && mysql_num_rows($result) > 0) { - echo " \n"; + echo " \n"; echo " \n"; + echo " \n"; } echo "
\n"; @@ -289,41 +301,45 @@ if($appId && !$versionId) echo "
BUGS ". " Check for bugs in bugzilla  \n"; echo "
URL".$appLinkURL."
URL".$appLinkURL."
Links\n"; - while($ob = mysql_fetch_object($result)) + echo "
Links\n"; + while($ob = mysql_fetch_object($result)) { - echo " ".substr(stripslashes($ob->description),0,30)."
\n"; + echo " ".substr(stripslashes($ob->description),0,30)."
\n"; } - echo "
$img
Owner
Owner\n"; - while($ob = mysql_fetch_object($result)) + while($ob = mysql_fetch_object($result)) { $inResult = mysql_query("SELECT username,email FROM user_list WHERE userid = $ob->ownerId"); - if ($inResult && mysql_num_rows($inResult) > 0) - { - $foo = mysql_fetch_object($inResult); - echo " ".substr(stripslashes($foo->username),0,30)."
\n"; + if ($inResult && mysql_num_rows($inResult) > 0) + { + $foo = mysql_fetch_object($inResult); + echo " ".substr(stripslashes($foo->username),0,30)."
\n"; } } - echo "
\n"; /* close of name/vendor/bugs/url table */ @@ -380,7 +396,7 @@ if($appId && !$versionId) echo " \n"; /* close the table that contains the whole left hand side of the upper table */ - //Desc + // description echo " \n"; echo "
Description
\n"; echo add_br(stripslashes($data->description)); @@ -389,24 +405,28 @@ if($appId && !$versionId) echo html_frame_end("For more details and user comments, view the versions of this application."); - //display versions + // display versions display_versions($appId,$app->getAppVersionList()); - //display bundle + // display bundle display_bundle($appId); // disabled for now //log_application_visit($appId); } + +####################################### +# We want to see a particular version # +####################################### else if($appId && $versionId) { $app = new Application($appId); $data = $app->data; - if(!$data ) + if(!$data) { // Oops! application not found or other error. do something errorpage('Internal Database Access Error. No App found.'); - exit; + exit; } $ver = $app->getAppVersion($versionId); @@ -414,7 +434,7 @@ else if($appId && $versionId) { // Oops! Version not found or other error. do something errorpage('Internal Database Access Error. No Version Found.'); - exit; + exit; } // rating menu @@ -432,37 +452,36 @@ else if($appId && $versionId) // header apidb_header("Viewing App Version - ".$data->appName); - //cat + // cat display_catpath($app->data->catId); - - //set URL + + // set URL $appLinkURL = ($ver->webPage) ? "".substr(stripslashes($ver->webPage),0,30)."": " "; - //start version display + // start version display echo html_frame_start("","98%","",0); - + echo '
',"\n"; echo '',"\n"; echo "\n"; echo "\n"; echo "\n"; - //Rating Area + // rating Area $r_win = rating_stars_for_version($versionId, "windows"); $r_fake = rating_stars_for_version($versionId, "fake"); echo "\n"; - //notes + // notes display_notes($appId, $versionId); - //Image + // image $img = get_screenshot_img($appId, $versionId); - echo "\n"; - // Display all maintainers of this application + // display all maintainers of this application echo ""; - // Display the app maintainer button + // display the app maintainer button echo "
Name".stripslashes($data->appName)."
Version".stripslashes($ver->versionName)."
URL".stripslashes($appLinkURL)."
Rating $r_win \n"; echo "
$r_fake
$img
Maintainers of this application:\n"; echo ""; $other_maintainers = getMaintainersUserIdsFromAppIdVersionId($appId, $versionId); @@ -480,7 +499,7 @@ else if($appId && $versionId) } echo "
"; if(loggedin()) { @@ -575,7 +594,7 @@ else if($appId && $versionId) } } - //Show How tos + // show How tos $result = mysql_query("SELECT * FROM appNotes WHERE appId = $appId and versionId = $versionId and noteTitle = 'HOWTO'"); if($result && mysql_num_rows($result)) { @@ -601,24 +620,24 @@ else if($appId && $versionId) } } //TODO: code to view/add user experience record -// if(!$versionId) -// { -// $versionId = 0; -// } + // if(!$versionId) + // { + // $versionId = 0; + // } // Comments Section view_app_comments($appId, $versionId); - -} -else + +} else { - // Oops! Called with no params, bad llamah! - errorpage('Page Called with No Params!'); - exit; + // Oops! Called with no params, bad llamah! + errorpage('Page Called with No Params!'); + exit; } - -echo p(); - -apidb_footer(); - ?> + +

 

+ + \ No newline at end of file