<?php
    /******************************************************************************\
     | Point System For Hellboundhackers, This Allows Points To Be Added To Users |
     | Accounts When A Mission Is Completed.                                      |
     | - Jake (o0jake0o@gmail.com)                                                |
    \******************************************************************************/


@require"../fusion_config.php";
require "../fusion_core.php";
require "../subheader.php";
require "../side_left.php";
	opentable("User Points");

	if(iMEMBER) {

	    function AddPoints($Level, $AttemptPass) { // Example = AddPoints("SteganoOne", "secretpass");
			global $userdata, $fusion_prefix;

	            @$ChallengeNFO   = mysql_fetch_assoc(mysql_query("SELECT * FROM ".$fusion_prefix."challenges WHERE user_id = ".$userdata['user_id']));

                /***********************************************************************\
                 ** Define All Challenges, their type,                                **
                 ** The password, and how much points                                 **
                 ** it's worth here.                                                  **
                 **                                                                   **
                 ** The Method is:                                                    **
                 **		$GET_["Name"]			=> (Level#)."~Type~Password~Points",  **
                \***********************************************************************/
	            $Mission["Dat"] = array (
                                    // Basic Missions //
                                    "BasicOne"			=> (1)."~basic~Pass~15",
                                    "BasicTwo"			=> (2)."~basic~Pass~15",
                                    "BasicThree"		=> (3)."~basic~Pass~15",
                                    "BasicFour"			=> (4)."~basic~Pass~15",
                                    "BasicFive"			=> (5)."~basic~Pass~15",
                                    "BasicSix"			=> (6)."~basic~Pass~15",
                                    "BasicSeven"		=> (7)."~basic~Pass~15",
                                    "BasicEight"		=> (8)."~basic~Pass~15",
                                    "BasicNine"			=> (9)."~basic~Pass~15",

                                    // Realistic Missions //
                                    "RealOne"			=> (1)."~real~Pass~15",
                                    "RealTwo"			=> (2)."~real~Pass~15",
                                    "RealThree"			=> (3)."~real~Pass~15",
                                    "RealFour"			=> (4)."~real~Pass~15",
                                    "RealFive"			=> (5)."~real~Pass~15",
                                    "RealSix"			=> (6)."~real~Pass~15",
                                    "RealSeven"			=> (7)."~real~Pass~15",

                                    // Javascript Missions //
                                    "JavaOne"			=> (1)."~java~Pass~15",
                                    "JavaTwo"			=> (2)."~java~Pass~15",
                                    "JavaThree"			=> (3)."~java~Pass~15",
                                    "JavaFour"			=> (4)."~java~Pass~15",

                                    // Application Challenges //
                                    "AppOne"			=> (1)."~app~Pass~15",
                                    "AppTwo"			=> (2)."~app~Pass~15",
                                    "AppThree"			=> (3)."~app~Pass~15",
                                    "AppFour"			=> (4)."~app~Pass~15",
                                    "AppFive"			=> (5)."~app~Pass~15",
                                    "AppSix"			=> (6)."~app~Pass~15",
                                    "AppSeven"			=> (7)."~app~Pass~15",
                                    "AppEight"			=> (8)."~app~Pass~15",
                                    "AppNine"			=> (9)."~app~Pass~15",
                                    "AppTen"			=>(10)."~app~Pass~15",
                                    "AppExtra"			=>   "ex~app~Pass~15",

                                    // Social Engineering Challenges //
                                    "SEOne"				=> (1)."~se~Pass~15",
                                    "SETwo"				=> (2)."~se~Pass~15",

                                    // Encryption Challenges //
                                    "EncOne"			=> (1)."~enc~Pass~15",
                                    "EncTwo"			=> (2)."~enc~Pass~15",
                                    "EncThree"			=> (3)."~enc~Pass~15",
                                    "EncFour"			=> (4)."~enc~Pass~15",
                                    "EncFive"			=> (5)."~enc~Pass~15",
                                    "EncSix"			=> (6)."~enc~Pass~15",
                                    "EncSeven"			=> (7)."~enc~Pass~15",
                                    "EncEight"			=> (8)."~enc~Pass~15",
                                    "EncNine"			=> (9)."~enc~Pass~15",
                                    "EncExtra"			=>   "ex~enc~Pass~15"
	                              );

	            list($Mission["Num"], $Type, $Password, $Points) = split("~", $Mission["Dat"][$Level]);

	        if (!array_key_exists($Level, $Mission["Dat"])) {
	            return "<center>That is not one of our challenges.</center>\r\n";
	        }
	        elseif($ChallengeNFO[$Type."_".$Mission["Num"]] == "completed") {
				return "<center><br/>This level has already been completed, no points will be added!<br/></center>";
	        }
            elseif($AttemptPass != $Password) {
            	return "<center>Sorry, but the password you entered is incorrect. Please Try Again</center>";
            }
	        else {
	            @mysql_query("UPDATE ".$fusion_prefix."challenges SET ".$Type."_".$Mission["Num"]." = 'completed', points=points+".$Points." WHERE user_id='".$userdata['user_id']."'");
				return "<center><br/>Congratulations, you have completed ".$Type." ".$Mission["Num"]."!<br/><br/></center>";
	        }

	    }

        $Level["Name"] = @$_GET["Name"] or $Level["Name"] = "Null";
        $Level["Pass"] = @$_GET["Pass"] or $Level["Pass"] = "Null";

        echo AddPoints($Level["Name"], $Level["Pass"]);

	}
	else {
		echo "<center>You Must Be Logged In To Access This Page!</center>";
	}


	closetable();
require "../side_right.php";
require "../footer.php";
?>
