Vault Mod: "letzer Kaufpreis" in der Übersicht

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
Dungeonwatcher
Mitglied
Beiträge: 635
Registriert: 11.07.2004 10:04
Wohnort: Berlin

Vault Mod: "letzer Kaufpreis" in der Übersicht

Beitrag von Dungeonwatcher »

Hi! 8)

Um den Handel mit Aktien etwas übersichtlicher zu gestalten kam mir die Idee den jeweils letzten Kaufpreis einer Aktie in der Aktienübersicht anzuzeigen. Voraussetzung für diese Erweiterung ist dies: Vault Mod: keine Nachkommastellen?.

Erstelle mit Hilfe von PHPMyAdmin ein neues Tabellenfeld price_transaction:

Code: Alles auswählen

ALTER TABLE phpbb_vault_exchange_users ADD price_transaction decimal(10,2) NOT NULL default '0';
Suche in der vault.php:

Code: Alles auswählen

		$price = ((
füge danach ein:

Code: Alles auswählen

		$price2 = number_format(floatval($items[$i]['stock_price']),2);
suche:

Code: Alles auswählen

		if ( is_numeric($user_items['stock_amount']) &&	$prize != 0 )
		{
			$rsql = "UPDATE " . VAULT_EXCHANGE_USERS_TABLE ."
				SET stock_amount = stock_amount + $prize
				WHERE user_id = $user_id
				AND stock_id = ".$items[$i]['stock_id'];
			if( !$db->sql_query($rsql))
			{
				message_die(GENERAL_ERROR, 'Could not update user stock', "", __LINE__, __FILE__, $rsql);
			}
		}
ersetze durch:

Code: Alles auswählen

		if ( is_numeric($user_items['stock_amount']) &&	$prize != 0 )
		{
			$rsql = "UPDATE " . VAULT_EXCHANGE_USERS_TABLE ."
				SET stock_amount = stock_amount + $prize ,
				price_transaction = $price2
				WHERE user_id = $user_id
				AND stock_id = ".$items[$i]['stock_id'];
			if( !$db->sql_query($rsql))
			{
				message_die(GENERAL_ERROR, 'Could not update user stock', "", __LINE__, __FILE__, $rsql);
			}
		}
suche:

Code: Alles auswählen

		else if ( !(is_numeric($user_items['stock_amount'])) && $prize != 0 )
		{
			$rsql = "INSERT INTO " . VAULT_EXCHANGE_USERS_TABLE ."
				( stock_id , user_id , stock_amount )
				VALUES ( ".$items[$i]['stock_id']." , $user_id , $prize  )";
			if( !$db->sql_query($rsql))
			{
				message_die(GENERAL_ERROR, 'Could not update user stock', "", __LINE__, __FILE__, $rsql);
			}
		}
ersetze durch:

Code: Alles auswählen

		else if ( !(is_numeric($user_items['stock_amount'])) && $prize != 0 )
		{
			$rsql = "INSERT INTO " . VAULT_EXCHANGE_USERS_TABLE ."
				( stock_id , user_id , stock_amount , price_transaction )
				VALUES ( ".$items[$i]['stock_id']." , $user_id , $prize , $price2 )";
			if( !$db->sql_query($rsql))
			{
				message_die(GENERAL_ERROR, 'Could not update user stock', "", __LINE__, __FILE__, $rsql);
			}
		}
Suche in der vault_exchange_body.tpl:

Code: Alles auswählen

colspan="
und erhöhe die Zahl nach dem " um eins.

Suche:

Code: Alles auswählen

    <th>{L_STOCK_OWNED}</th>
füge danach ein:

Code: Alles auswählen

	<th>{L_STOCK_BOUGHT}</th>
suche:

Code: Alles auswählen

    <td class="{exchange.ROW_CLASS}" align="center"><span class="gen">{exchange.STOCK_OWNED}</span><br /><span class="explaintitle" style="font-size: 0.8em">{exchange.STOCK_OWNED_ACT}</span></td>
füge danach ein:

Code: Alles auswählen

    <td class="{exchange.ROW_CLASS}" align="right"><span class="gen">{exchange.STOCK_BOUGHT}</span></td>
suche:

Code: Alles auswählen

colspan="
und erhöhe die Zahl wieder um Eins.

Das war's.

Bye
Benutzeravatar
Dungeonwatcher
Mitglied
Beiträge: 635
Registriert: 11.07.2004 10:04
Wohnort: Berlin

Re: Vault Mod: "letzer Kaufpreis" in der Übersicht

Beitrag von Dungeonwatcher »

Hi!

Einen Fehler hat das ganze leider noch. Aktien mit Preisen größer 3stellig können nicht gehandelt werden. :roll:
Um das zu beheben folgende Zeile:

Code: Alles auswählen

		$price2 = number_format(floatval($items[$i]['stock_price']),2);
durch diese:

Code: Alles auswählen

		$price2 = number_format(floatval($items[$i]['stock_price']),2, ".", "");
ersetzen.

Bye
Antworten

Zurück zu „phpBB 2.0: Mod Support“