Esempio n. 1
0
function Trade_Ress()
{
    global $game, $db, $ACTUAL_TICK;
    /*
    [22:07:05] <TotesTAP> [02:46] <rmA> 1 : 4 : 3
    [22:07:05] <TotesTAP> [02:46] <rmA> Met : Min : Lat
    [22:07:08] <TotesTAP> [02:47] <rmA> bei 6h 50% steuern
    [22:07:08] <TotesTAP> [02:47] <rmA> bei 12h 35% steuern
    [22:07:08] <TotesTAP> [02:48] <rmA> bei 36h 15% steuern
    */
    $game->out('<center><span class="sub_caption">' . constant($game->sprache("TEXT144")) . ' ' . HelpPopup('trade_ress') . ' :</span></center><br>');
    if (isset($_POST['bezahlungsart'])) {
        $_POST['bezahlungsart'] = (int) $_POST['bezahlungsart'];
    }
    /*
    if(isset($_POST['plani_ziel'])) $_POST['plani_ziel']=(int)$_POST['plani_ziel'];
    if(isset($_POST['plani'])) $_POST['plani']=(int)$_POST['plani'];
    */
    /*
    if(isset($_POST['Art']))
    if($_POST['Art']!="Metall" && $_POST['Art']!="Latinum" && $_POST['Art']!="Mineral")
    {
    	message(NOTICE, constant($game->sprache("TEXT145")));
    }
    */
    /*
    $daten=$db->queryrow('SELECT * FROM FHB_Handels_Lager WHERE id=1');
    
    // 27/02/08 - AC: Check DB query 
    if($daten == null)
    {
    	$daten['ress_1'] = 0;
    	$daten['ress_2'] = 0;
    	$daten['ress_3'] = 0;
    }
    */
    /* 04/03/08 - AC: If step is not specified, it si frist step */
    if (!isset($_REQUEST['step'])) {
        $_REQUEST['step'] = '1';
    }
    if (isset($_REQUEST['handel']) && $_REQUEST['handel'] == 'trade_ress' && isset($_POST['plani']) && $_REQUEST['step'] == '2') {
        /* 01/03/08 - AC: Check this value */
        if (!isset($_POST['plani_ziel'])) {
            $_POST['plani_ziel'] = 0;
        }
        $plani_id_a = $db->queryrow('SELECT planet_id,planet_name FROM `planets` WHERE planet_id=' . decode_planet_id($_POST['plani_ziel']) . ' AND planet_owner=' . $game->player['user_id'] . '');
        $plani_id_r = $db->queryrow('SELECT planet_id,planet_name FROM `planets` WHERE planet_id=' . decode_planet_id($_POST['plani']) . ' AND planet_owner=' . $game->player['user_id'] . '');
        if ($plani_id_a['planet_id'] != decode_planet_id($_POST['plani_ziel']) || $plani_id_r['planet_id'] != decode_planet_id($_POST['plani'])) {
            $game->out(constant($game->sprache("TEXT146")));
        } else {
            $kosten['Metall'] = 0;
            $kosten['Mineral'] = 0;
            $kosten['Latinum'] = 0;
            if ($_POST['transport'] != 1 && $_POST['transport'] != 2 && $_POST['transport'] != 3) {
                $game->out('Cheat');
                exit;
            }
            if ($_POST['transport'] == 1) {
                $transportsatz = 0.5;
                $tickzeit = 20 * 6;
            }
            if ($_POST['transport'] == 2) {
                $transportsatz = 0.35;
                $tickzeit = 20 * 12;
            }
            if ($_POST['transport'] == 3) {
                $transportsatz = 0.15;
                $tickzeit = 20 * 36;
            }
            $daten = $db->queryrow('SELECT * FROM FHB_Handels_Lager WHERE id=1');
            /* 27/02/08 - AC: Check DB query */
            if ($daten == null) {
                $daten['ress_1'] = 0;
                $daten['ress_2'] = 0;
                $daten['ress_3'] = 0;
            }
            // DC --- Vediamo di compattare un poco il codice
            $db->lock('FHB_Handels_Lager', 'scheduler_resourcetrade');
            $plani_inhalt = $db->queryrow('SELECT resource_1,resource_2,resource_3 FROM `planets` WHERE planet_id=' . decode_planet_id($_POST['plani']) . ' AND planet_owner=' . $game->player['user_id'] . '');
            if ($_POST['risorsa_da'] == "Metall" && $_POST['risorsa_a'] == "Mineral") {
                $kosten['Mineral'] = (int) ($_POST['Qty'] * Ress_price(10, 9));
                if ($_POST['Qty'] <= $plani_inhalt['resource_1']) {
                    $steuern = (int) ($kosten['Mineral'] * $transportsatz);
                    if ($daten['ress_2'] >= $kosten['Mineral'] - $steuern) {
                        // dem user Ressourcen abziehen:
                        if ($db->query('UPDATE planets SET resource_1=resource_1-' . $_POST['Qty'] . ' WHERE planet_id=' . decode_planet_id($_POST['plani']) . '') == true) {
                            // dem NPC Ressourcen abziehen:
                            if ($db->query('UPDATE FHB_Handels_Lager SET ress_2=ress_2-' . $kosten['Mineral'] . '+' . $steuern . ',ress_1=ress_1+' . $_POST['Qty'] . ' WHERE id=1') == true) {
                                // Buyers goods in the Trade Register Scheduler:
                                if ($db->query('INSERT INTO scheduler_resourcetrade (planet,resource_1,resource_2,resource_3,arrival_time) VALUES ("' . decode_planet_id($_POST['plani_ziel']) . '",0,' . ($kosten['Mineral'] - $steuern) . ',0,"' . ($ACTUAL_TICK + $tickzeit) . '")') == true) {
                                    $game->out('<table><tr><td>' . constant($game->sprache("TEXT147")) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT148")) . $plani_id_a['planet_name'] . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT149")) . $steuern . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT150")) . ($kosten['Mineral'] - $steuern) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT151")) . $_POST['Qty'] . '</td></tr>
									<tr><td><form name="ritorno" action="' . parse_link('a=trade&view=' . $_REQUEST['view'] . '&handel=trade_ress') . '" method="post">
									<input type="submit" value="' . constant($game->sprache("TEXT152")) . '"  name="submit" class="Button_nosize"></form></td></tr></table>');
                                } else {
                                    message(DATABASE_ERROR, 'Internal database error');
                                }
                            } else {
                                message(DATABASE_ERROR, 'Internal database error');
                            }
                        } else {
                            message(DATABASE_ERROR, 'Internal database error');
                        }
                    } else {
                        message(NOTICE, constant($game->sprache("TEXT153")));
                    }
                } else {
                    message(NOTICE, constant($game->sprache("TEXT158")));
                }
            } else {
                if ($_POST['risorsa_da'] == "Metall" && $_POST['risorsa_a'] == "Latinum") {
                    $kosten['Latinum'] = (int) ($_POST['Qty'] * Ress_price(11, 9));
                    if ($_POST['Qty'] <= $plani_inhalt['resource_1']) {
                        $steuern = (int) ($kosten['Latinum'] * $transportsatz);
                        if ($daten['ress_3'] >= $kosten['Latinum'] - $steuern) {
                            // dem user Ressourcen abziehen:
                            if ($db->query('UPDATE planets SET resource_1=resource_1-' . $_POST['Qty'] . ' WHERE planet_id=' . decode_planet_id($_POST['plani']) . '') == true) {
                                // dem NPC Ressourcen abziehen:
                                if ($db->query('UPDATE FHB_Handels_Lager SET ress_3=ress_3-' . $kosten['Latinum'] . '+' . $steuern . ',ress_1=ress_1+' . $_POST['Qty'] . ' WHERE id=1') == true) {
                                    // Buyers goods in the Trade Register Scheduler:
                                    if ($db->query('INSERT INTO scheduler_resourcetrade (planet,resource_1,resource_2,resource_3,arrival_time) VALUES ("' . decode_planet_id($_POST['plani_ziel']) . '",0,0,' . ($kosten['Latinum'] - $steuern) . ',"' . ($ACTUAL_TICK + $tickzeit) . '")') == true) {
                                        $game->out('<table><tr><td>' . constant($game->sprache("TEXT147")) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT148")) . $plani_id_a['planet_name'] . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT149")) . $steuern . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT156")) . ($kosten['Latinum'] - $steuern) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT151")) . $_POST['Qty'] . '</td></tr>
									<tr><td><form name="ritorno" action="' . parse_link('a=trade&view=' . $_REQUEST['view'] . '&handel=trade_ress') . '" method="post">
									<input type="submit" value="' . constant($game->sprache("TEXT152")) . '"  name="submit" class="Button_nosize"></form></td></tr></table>');
                                    } else {
                                        message(DATABASE_ERROR, 'Internal database error');
                                    }
                                } else {
                                    message(DATABASE_ERROR, 'Internal database error');
                                }
                            } else {
                                message(DATABASE_ERROR, 'Internal database error');
                            }
                        } else {
                            message(NOTICE, constant($game->sprache("TEXT153")));
                        }
                    } else {
                        message(NOTICE, constant($game->sprache("TEXT158")));
                    }
                } else {
                    if ($_POST['risorsa_da'] == "Mineral" && $_POST['risorsa_a'] == "Metall") {
                        $kosten['Metall'] = (int) ($_POST['Qty'] * Ress_price(9, 10));
                        if ($_POST['Qty'] <= $plani_inhalt['resource_2']) {
                            $steuern = (int) ($kosten['Metall'] * $transportsatz);
                            if ($daten['ress_1'] >= $kosten['Metall'] - $steuern) {
                                // dem user Ressourcen abziehen:
                                if ($db->query('UPDATE planets SET resource_2=resource_2-' . $_POST['Qty'] . ' WHERE planet_id=' . decode_planet_id($_POST['plani']) . '') == true) {
                                    // dem NPC Ressourcen abziehen:
                                    if ($db->query('UPDATE FHB_Handels_Lager SET ress_1=ress_1-' . $kosten['Metall'] . '+' . $steuern . ',ress_2=ress_2+' . $_POST['Qty'] . ' WHERE id=1') == true) {
                                        // Buyers goods in the Trade Register Scheduler:
                                        if ($db->query('INSERT INTO scheduler_resourcetrade (planet,resource_1,resource_2,resource_3,arrival_time) VALUES ("' . decode_planet_id($_POST['plani_ziel']) . '",' . ($kosten['Metall'] - $steuern) . ',0,0,"' . ($ACTUAL_TICK + $tickzeit) . '")') == true) {
                                            $game->out('<table><tr><td>' . constant($game->sprache("TEXT147")) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT148")) . $plani_id_a['planet_name'] . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT149")) . $steuern . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT154")) . ($kosten['Metall'] - $steuern) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT155")) . $_POST['Qty'] . '</td></tr>
									<tr><td><form name="ritorno" action="' . parse_link('a=trade&view=' . $_REQUEST['view'] . '&handel=trade_ress') . '" method="post">
									<input type="submit" value="' . constant($game->sprache("TEXT152")) . '"  name="submit" class="Button_nosize"></form></td></tr></table>');
                                        } else {
                                            message(DATABASE_ERROR, 'Internal database error');
                                        }
                                    } else {
                                        message(DATABASE_ERROR, 'Internal database error');
                                    }
                                } else {
                                    message(DATABASE_ERROR, 'Internal database error');
                                }
                            } else {
                                message(NOTICE, constant($game->sprache("TEXT153")));
                            }
                        } else {
                            message(NOTICE, constant($game->sprache("TEXT158")));
                        }
                    } else {
                        if ($_POST['risorsa_da'] == "Mineral" && $_POST['risorsa_a'] == "Latinum") {
                            $kosten['Latinum'] = (int) ($_POST['Qty'] * Ress_price(11, 10));
                            if ($_POST['Qty'] <= $plani_inhalt['resource_2']) {
                                $steuern = (int) ($kosten['Latinum'] * $transportsatz);
                                if ($daten['ress_3'] >= $kosten['Latinum'] - $steuern) {
                                    // dem user Ressourcen abziehen:
                                    if ($db->query('UPDATE planets SET resource_2=resource_2-' . $_POST['Qty'] . ' WHERE planet_id=' . decode_planet_id($_POST['plani']) . '') == true) {
                                        // dem NPC Ressourcen abziehen:
                                        if ($db->query('UPDATE FHB_Handels_Lager SET ress_3=ress_3-' . $kosten['Latinum'] . '+' . $steuern . ',ress_2=ress_2+' . $_POST['Qty'] . ' WHERE id=1') == true) {
                                            // Buyers goods in the Trade Register Scheduler:
                                            if ($db->query('INSERT INTO scheduler_resourcetrade (planet,resource_1,resource_2,resource_3,arrival_time) VALUES ("' . decode_planet_id($_POST['plani_ziel']) . '",0,0,' . ($kosten['Latinum'] - $steuern) . ',"' . ($ACTUAL_TICK + $tickzeit) . '")') == true) {
                                                $game->out('<table><tr><td>' . constant($game->sprache("TEXT147")) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT148")) . $plani_id_a['planet_name'] . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT149")) . $steuern . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT156")) . ($kosten['Latinum'] - $steuern) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT155")) . $_POST['Qty'] . '</td></tr>
									<tr><td><form name="ritorno" action="' . parse_link('a=trade&view=' . $_REQUEST['view'] . '&handel=trade_ress') . '" method="post">
									<input type="submit" value="' . constant($game->sprache("TEXT152")) . '"  name="submit" class="Button_nosize"></form></td></tr></table>');
                                            } else {
                                                message(DATABASE_ERROR, 'Internal database error');
                                            }
                                        } else {
                                            message(DATABASE_ERROR, 'Internal database error');
                                        }
                                    } else {
                                        message(DATABASE_ERROR, 'Internal database error');
                                    }
                                } else {
                                    message(NOTICE, constant($game->sprache("TEXT153")));
                                }
                            } else {
                                message(NOTICE, constant($game->sprache("TEXT158")));
                            }
                        } else {
                            if ($_POST['risorsa_da'] == "Latinum" && $_POST['risorsa_a'] == "Metall") {
                                $kosten['Metall'] = (int) ($_POST['Qty'] * Ress_price(9, 11));
                                if ($_POST['Qty'] <= $plani_inhalt['resource_3']) {
                                    $steuern = (int) ($kosten['Metall'] * $transportsatz);
                                    if ($daten['ress_1'] >= $kosten['Metall'] - $steuern) {
                                        // dem user Ressourcen abziehen:
                                        if ($db->query('UPDATE planets SET resource_3=resource_3-' . $_POST['Qty'] . ' WHERE planet_id=' . decode_planet_id($_POST['plani']) . '') == true) {
                                            // dem NPC Ressourcen abziehen:
                                            if ($db->query('UPDATE FHB_Handels_Lager SET ress_1=ress_1-' . $kosten['Metall'] . '+' . $steuern . ',ress_3=ress_3+' . $_POST['Qty'] . ' WHERE id=1') == true) {
                                                // Buyers goods in the Trade Register Scheduler:
                                                if ($db->query('INSERT INTO scheduler_resourcetrade (planet,resource_1,resource_2,resource_3,arrival_time) VALUES ("' . decode_planet_id($_POST['plani_ziel']) . '",' . ($kosten['Metall'] - $steuern) . ',0,0,"' . ($ACTUAL_TICK + $tickzeit) . '")') == true) {
                                                    $game->out('<table><tr><td>' . constant($game->sprache("TEXT147")) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT148")) . $plani_id_a['planet_name'] . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT149")) . $steuern . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT154")) . ($kosten['Metall'] - $steuern) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT157")) . $_POST['Qty'] . '</td></tr>
									<tr><td><form name="ritorno" action="' . parse_link('a=trade&view=' . $_REQUEST['view'] . '&handel=trade_ress') . '" method="post">
									<input type="submit" value="' . constant($game->sprache("TEXT152")) . '"  name="submit" class="Button_nosize"></form></td></tr></table>');
                                                } else {
                                                    message(DATABASE_ERROR, 'Internal database error');
                                                }
                                            } else {
                                                message(DATABASE_ERROR, 'Internal database error');
                                            }
                                        } else {
                                            message(DATABASE_ERROR, 'Internal database error');
                                        }
                                    } else {
                                        message(NOTICE, constant($game->sprache("TEXT153")));
                                    }
                                } else {
                                    message(NOTICE, constant($game->sprache("TEXT158")));
                                }
                            } else {
                                if ($_POST['risorsa_da'] == "Latinum" && $_POST['risorsa_a'] == "Mineral") {
                                    $kosten['Mineral'] = (int) ($_POST['Qty'] * Ress_price(10, 11));
                                    if ($_POST['Qty'] <= $plani_inhalt['resource_3']) {
                                        $steuern = (int) ($kosten['Mineral'] * $transportsatz);
                                        if ($daten['ress_2'] >= $kosten['Mineral'] - $steuern) {
                                            // dem user Ressourcen abziehen:
                                            if ($db->query('UPDATE planets SET resource_3=resource_3-' . $_POST['Qty'] . ' WHERE planet_id=' . decode_planet_id($_POST['plani']) . '') == true) {
                                                // dem NPC Ressourcen abziehen:
                                                if ($db->query('UPDATE FHB_Handels_Lager SET ress_2=ress_2-' . $kosten['Mineral'] . '+' . $steuern . ',ress_3=ress_3+' . $_POST['Qty'] . ' WHERE id=1') == true) {
                                                    // Buyers goods in the Trade Register Scheduler:
                                                    if ($db->query('INSERT INTO scheduler_resourcetrade (planet,resource_1,resource_2,resource_3,arrival_time) VALUES ("' . decode_planet_id($_POST['plani_ziel']) . '",0,' . ($kosten['Mineral'] - $steuern) . ',0,"' . ($ACTUAL_TICK + $tickzeit) . '")') == true) {
                                                        $game->out('<table><tr><td>' . constant($game->sprache("TEXT147")) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT148")) . $plani_id_a['planet_name'] . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT149")) . $steuern . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT150")) . ($kosten['Mineral'] - $steuern) . '</td></tr>
									<tr><td>' . constant($game->sprache("TEXT157")) . $_POST['Qty'] . '</td></tr>
									<tr><td><form name="ritorno" action="' . parse_link('a=trade&view=' . $_REQUEST['view'] . '&handel=trade_ress') . '" method="post">
									<input type="submit" value="' . constant($game->sprache("TEXT152")) . '"  name="submit" class="Button_nosize"></form></td></tr></table>');
                                                    } else {
                                                        message(DATABASE_ERROR, 'Internal database error');
                                                    }
                                                } else {
                                                    message(DATABASE_ERROR, 'Internal database error');
                                                }
                                            } else {
                                                message(DATABASE_ERROR, 'Internal database error');
                                            }
                                        } else {
                                            message(NOTICE, constant($game->sprache("TEXT153")));
                                        }
                                    } else {
                                        message(NOTICE, constant($game->sprache("TEXT158")));
                                    }
                                }
                            }
                        }
                    }
                }
            }
            $db->unlock('FHB_Handels_Lager', 'scheduler_resourcetrade');
        }
    } else {
        $ressavail = $db->queryrow('SELECT * FROM FHB_Handels_Lager WHERE id=1');
        if ($ressavail == null) {
            $ressavail['ress_1'] = 0;
            $ressavail['ress_2'] = 0;
            $ressavail['ress_3'] = 0;
        }
        $game->out('
	<script type="text/javascript">
	    function check_exchange(){
	    	if(document.ScambioRisorse.risorsa_da.value ==
	    	   document.ScambioRisorse.risorsa_a.value)
	    	   {
	    	   		alert("' . constant($game->sprache("TEXT278")) . '");
	    	   		
	    			document.ScambioRisorse.risorsa_da.value = "Metall";
	    			document.ScambioRisorse.risorsa_a.value  = "Mineral";
	    	
	    			document.ScambioRisorse.Qty.value    = 0;
	    			document.ScambioRisorse.Result.value = 0;
	    	   }
	    }
	    function display_rateo()
	    {
	    	var res_from, res_to,value_from, value_to, rateo;
	    	
	    	res_from = document.ScambioRisorse.risorsa_da.value;
	    	res_to   = document.ScambioRisorse.risorsa_a.value;
	    	
	    	if(res_from == "Metall") value_from = 4;
	    	if(res_from == "Mineral") value_from = 5;
	    	if(res_from == "Latinum") value_from = 2.8;
	    	
	    	if(res_to == "Metall") value_to = 4;
	    	if(res_to == "Mineral") value_to = 5;
	    	if(res_to == "Latinum") value_to = 2.8;

			rateo = Math.round((1 / value_from * value_to) * 100) / 100;
			
			document.ScambioRisorse.Rateo.value = rateo;	    		    	
	    }
	    function display_avail()
	    {
	    	if(document.ScambioRisorse.risorsa_a.value == "Metall")
	    	{
	    		document.ScambioRisorse.Avail.value = document.ScambioRisorse.Ress_Avail_1.value;
	    	}
	    	if(document.ScambioRisorse.risorsa_a.value == "Mineral")
	    	{
	    		document.ScambioRisorse.Avail.value = document.ScambioRisorse.Ress_Avail_2.value;
	    	}
	    	if(document.ScambioRisorse.risorsa_a.value == "Latinum")
	    	{
	    		document.ScambioRisorse.Avail.value = document.ScambioRisorse.Ress_Avail_3.value;
	    	}
	    }
	    
		function recompute(){
			var res_from, res_to, quantity = 0, exchanged = 0, tax;
			var tax_rate = new Array(0, 0.50, 0.65, 0.85);

			// Exchange rates: Metall; Minerals; Latinum => 4 ; 5 ; 2.8
			
			res_from = document.ScambioRisorse.risorsa_da.value;
			res_to   = document.ScambioRisorse.risorsa_a.value;
			quantity = document.ScambioRisorse.Qty.value;
			tax      = document.ScambioRisorse.transport.value;
			
			if(res_from == "Metall")
			{
				if(res_to == "Mineral")
				{
					exchanged = Math.round((quantity / 4 * 5) * tax_rate[tax]);
				}
				
				if(res_to == "Latinum")
				{
					exchanged = Math.round((quantity / 4 * 2.8) * tax_rate[tax]);				
				}
			}
			
			if(res_from == "Mineral")
			{
				if(res_to == "Metall")
				{
					exchanged = Math.round((quantity / 5 * 4) * tax_rate[tax]);
				}
				
				if(res_to == "Latinum")
				{
					exchanged = Math.round((quantity / 5 * 2.8) * tax_rate[tax]);				
				}			
			}
			
			if(res_from == "Latinum")
			{
				if(res_to == "Metall")
				{
					exchanged = Math.round((quantity / 2.8 * 4) * tax_rate[tax]);
				}
				
				if(res_to == "Mineral")
				{
					exchanged = Math.round((quantity / 2.8 * 5) * tax_rate[tax]);
				}			
			}
			
			display_avail();			
			
			document.ScambioRisorse.Result.value = exchanged;
			
			if(exchanged > document.ScambioRisorse.Avail.value)
				document.ScambioRisorse.submit.disabled = true;
			else
				document.ScambioRisorse.submit.disabled = false;

		}
	</script>
	');
        $game->out('<form name="ScambioRisorse" action="' . parse_link('a=trade&view=' . $_REQUEST['view'] . '&handel=trade_ress&step=2') . '" method="post">');
        $game->out('<input type="hidden" name="Ress_Avail_1" value="' . $ressavail['ress_1'] . '">
			    <input type="hidden" name="Ress_Avail_2" value="' . $ressavail['ress_2'] . '">
			    <input type="hidden" name="Ress_Avail_3" value="' . $ressavail['ress_3'] . '">
	');
        $game->out('<table align=center>
				<tr>
				<td>' . constant($game->sprache("TEXT159")) . '</td>
				<td>: <select size="1" name="risorsa_da" onchange="display_rateo(); document.ScambioRisorse.Result.value = 0; document.ScambioRisorse.Qty.value = 0;">
					<option value="Metall" selected>' . constant($game->sprache("TEXT123")) . '</option>
					<option value="Mineral">' . constant($game->sprache("TEXT165")) . '</option>
					<option value="Latinum">' . constant($game->sprache("TEXT167")) . '</option>
					</select>
					==> <input name="Rateo" type="number" value="1.25" size="3" class="Field_nosize" readonly> ==>
					<select size="1" name="risorsa_a" onchange="display_rateo(); document.ScambioRisorse.Result.value = 0; document.ScambioRisorse.Qty.value = 0; display_avail();">
					<option value="Metall">' . constant($game->sprache("TEXT123")) . '</option>
					<option value="Mineral" selected>' . constant($game->sprache("TEXT165")) . '</option>
					<option value="Latinum">' . constant($game->sprache("TEXT167")) . '</option>
					</select>				
				</td>
				</tr>
	');
        $game->out('<tr>
				<td>' . constant($game->sprache("TEXT276")) . '</td>
				<td>: <input name="Qty" type="number" value="0" class="Field_nosize" onchange="check_exchange(); recompute();"></td>
				</tr>
	');
        $game->out('<tr>
				<td>' . constant($game->sprache("TEXT173")) . '</td>
				<td>: <select size="1" name="transport" onchange="recompute();">
					<option value="1">' . constant($game->sprache("TEXT174")) . '</option>
					<option value="2">' . constant($game->sprache("TEXT175")) . '</option>
					<option value="3">' . constant($game->sprache("TEXT176")) . '</option>
					</select>
				</td>
				</tr>
	');
        $game->out('<tr>
				<td>' . constant($game->sprache("TEXT277")) . '</td>
				<td>: <input name="Result" type="number" value="0" class="Field_nosize" disabled> ' . constant($game->sprache("TEXT245")) . ' <input name="Avail" type="number" value="' . $ressavail['ress_2'] . '" class="Field_nosize" disabled><td>
				</tr>
	');
        $sql = 'SELECT planet_id,planet_name,building_11 FROM `planets` WHERE planet_owner=' . $game->player['user_id'] . ' ORDER BY planet_name ASC';
        if (($planis = $db->query($sql)) == false) {
            $game->out(constant($game->sprache("TEXT178")));
        } else {
            $game->out('<tr><td width="150">' . constant($game->sprache("TEXT179")) . '</td><td>: <select size="1" name="plani">');
            while ($planeten = $db->fetchrow($planis)) {
                if ($planeten['building_11'] > 0) {
                    if ($game->planet['planet_id'] == $planeten['planet_id']) {
                        $game->out('<option value="' . encode_planet_id($planeten['planet_id']) . '" selected="selected">' . $planeten['planet_name'] . '</option>');
                    } else {
                        $game->out('<option value="' . encode_planet_id($planeten['planet_id']) . '">' . $planeten['planet_name'] . '</option>');
                    }
                }
            }
            $game->out('</select></td></tr>');
        }
        if (($planis = $db->query($sql)) == false) {
            $game->out(constant($game->sprache("TEXT178")));
        } else {
            $game->out('<tr><td width="150">' . constant($game->sprache("TEXT180")) . '</td><td>: <select size="1" name="plani_ziel">');
            while ($planeten = $db->fetchrow($planis)) {
                if ($planeten['building_11'] > 0) {
                    if ($game->planet['planet_id'] == $planeten['planet_id']) {
                        $game->out('<option value="' . encode_planet_id($planeten['planet_id']) . '" selected="selected">' . $planeten['planet_name'] . '</option>');
                    } else {
                        $game->out('<option value="' . encode_planet_id($planeten['planet_id']) . '">' . $planeten['planet_name'] . '</option>');
                    }
                }
            }
            $game->out('</select></td></tr>');
        }
        $game->out('<tr><td colspan="3" align="center"><input type="submit" value="' . constant($game->sprache("TEXT185")) . '"  name="submit" class="Button_nosize" disabled></td></tr>');
        $game->out('</table></form>');
    }
}
Esempio n. 2
0
            FROM (planets p, starsystems s)
            WHERE s.sector_id = ' . $sector_id . ' AND
                  s.system_x = ' . $system_x . ' AND
                  s.system_y = ' . $system_y . ' AND
                  p.system_id = s.system_id AND
                  p.planet_distance_id = ' . $distance_id;
    if (($planet = $db->queryrow($sql)) === false) {
        message(DATABASE_ERROR, 'Could not query planets data');
    }
    if (empty($planet['planet_id'])) {
        message(NOTICE, constant($game->sprache("TEXT11")) . ' <b>' . $_POST['dest_coord'] . '</b>');
    }
    $dest = (int) $planet['planet_id'];
} else {
    if (!empty($_POST['dest'])) {
        $dest = is_numeric($_POST['dest']) ? (int) $_POST['dest'] : decode_planet_id($_POST['dest']);
    }
}
if (empty($dest)) {
    message(NOTICE, constant($game->sprache("TEXT12")));
}
// #############################################################################
// Fetch start planet data
if ($start == $game->planet['planet_id']) {
    $start_planet = $game->planet;
    $start_planet['user_id'] = $game->player['user_id'];
    $start_planet['user_name'] = $game->player['user_name'];
    $start_planet['user_attack_protection'] = $game->player['user_attack_protection'];
    $start_planet['user_vacation_start'] = $game->player['user_vacation_start'];
    $start_planet['user_vacation_end'] = $game->player['user_vacation_end'];
    // Player data can not be fetched, because they are not displayed / used
Esempio n. 3
0
        case 2:
            $selection = 2;
            break;
        case 3:
            $selection = 3;
            break;
        case 4:
            $selection = 4;
            break;
        default:
            $selection = 1;
    }
} else {
    $selection = 1;
}
$detail_id = decode_planet_id(filter_input(INPUT_GET, 'detail', FILTER_SANITIZE_STRING));
if (isset($detail_id) && !empty($detail_id)) {
    $sub_action = constant($game->sprache("TEXT30"));
}
if (!isset($sub_action) || empty($sub_action)) {
    $sub_action = filter_input(INPUT_POST, 'step', FILTER_SANITIZE_STRING);
    if (!isset($sub_action) || empty($sub_action)) {
        $sub_action = constant($game->sprache("TEXT1"));
    }
}
$game->out('<span class="caption">' . constant($game->sprache("TEXT0")) . '</span><br><br>');
$game->out('
    <table class="style_outer" width="90%" align="center" border="0" cellpadding="2" cellspacing="2"><tr><td>
    <table class="style_inner" width="100%" align="center" border="0" cellpadding="2" cellspacing="2">
    <form method="post" action="' . parse_link('a=settlers') . '">
    <tr> 
            <br><br>
            ' . constant($game->sprache("TEXT54")) . ' <b>' . (15 - $n_cmemo) . '</b> / <b>15</b><br><br>
            ' . constant($game->sprache("TEXT55")) . '&nbsp;&nbsp;<input class="field" type="text" name="memo_name" value=""><br><br>
    ');
    while ($cmemo = $db->fetchrow($q_cmemo)) {
        $game->out('<input type="radio" name="memo_entry" value="' . $cmemo['tcm_id'] . '">&nbsp;' . $cmemo['memo_name'] . '&nbsp;[<a href="' . parse_link('a=tactical_cartography&memo_delete=' . $cmemo['tcm_id']) . '">' . constant($game->sprache("TEXT56")) . '</a>]<br><br>');
    }
    if ($n_cmemo < 15) {
        $game->out('<input type="radio" name="memo_entry" value="-1" checked="checked">&nbsp;<i>' . constant($game->sprache("TEXT57")) . '<i><br><br>');
    }
    $game->out('<br><input class="button" type="submit" name="memo_add" value="' . constant($game->sprache("TEXT58")) . '"></td></tr></form></table></td></tr></table>');
} elseif (!empty($_GET['planet_id'])) {
    if (is_numeric($_GET['planet_id'])) {
        die(constant($game->sprache("TEXT59")));
    } else {
        $planet_id = (int) decode_planet_id($_GET['planet_id']);
    }
    $own_planet = $free_planet = false;
    if ($game->planet['planet_id'] == $planet_id) {
        $planet =& $game->planet;
        $sql = 'SELECT system_id, system_name, system_x, system_y
                FROM starsystems
                WHERE system_id = ' . $planet['system_id'];
        if (($_system = $db->queryrow($sql)) === false) {
            message(DATABASE_ERROR, 'Could not query starsystem data');
        }
        if (empty($_system['system_id'])) {
            message(NOTICE, constant($game->sprache("TEXT41")) . $planet['system_id'] . constant($game->sprache("TEXT42")));
        }
        $planet += $_system;
    } else {
     <td><input type="text" name="pos_home_all" class="field"></td><td><input type="submit" name="mass_save" value="' . constant($game->sprache("TEXT63")) . '" class="button"></td>
   </tr>

   </table></td></tr>

   </table>
   </td></tr></table>
   </form>
   ');
    } else {
        $game->out(constant($game->sprache("TEXT64")));
    }
} else {
    $only_location = 0;
    if (!empty($_GET['only_location'])) {
        $only_location = is_numeric($_GET['only_location']) ? (int) $_GET['only_location'] : decode_planet_id($_GET['only_location']);
    }
    $order_by = !empty($_GET['order_by']) ? (int) $_GET['order_by'] : 0;
    if ($order_by < 0 || $order_by > 3) {
        message(NOTICE, 'No bad attempt...');
    }
    if ($only_location > 0) {
        switch ($order_by) {
            case 0:
                $order_by_str = 'fleet_name ASC';
                break;
            case 1:
                $order_by_str = 'fleet_name ASC';
                break;
            case 2:
                $order_by_str = 'n_ships ASC';