Punktesystem v 3.0 - MODULE_PUNKTE.txt
--------------------------------------


Author: Andreas Niesen  2007

eMail : support@phpfusionclub.de
Handy : 0178/1 88 44 60 (Mo-So ab 16:00 Uhr)

Datum : 10. August 2007


---------------------------------------------------------------
Copyright: 

Das Punktesystem darf kostenlos unter php-fusion genutzt werden,
sofern die Copyright Hinweise komplett erhalten bleiben! Diese
Infusion darf nur von Free Mitgliedern genutzt werden, wenn
das Punktesystem V.3.0 fr die Benutzergruppe Free Mitglieder
freigegeben wurde. Die Weitergabe vom Punktesystem V.3.0
ist nicht erlaubt und verstot gegen unser Copyright.
-----------------------------------------------------------------

****************************************************************************************

HINWEIS:
--------

Damit Beitrge mit Punkten belohnt werden knnen, muss in jedem der entsprechenden
Module der entsprechende SQL-Syntax hinzugefgt und evt. an das Modul angepasst werden!
In dieser Datei findest du folgende SQL-Syntaxe:

- Einlogen
- Shout (Shoutbox)
- Messages (PM)
- Gstebuch
- Forenthema
- Forenbeitrag

Weitere SQL-Syntaxe findest du in krze im Forum unter:

http://www.phpfusionclub.de

****************************************************************************************

MODUL 1: Einlogen

1. ffne jetzt die setuser.php und bearbeite sie wie folgt:

Suche nach :

$result = dbquery("DELETE FROM ".$db_prefix."online WHERE online_user='0' AND online_ip='".USER_IP."'");
echo "<b>".$locale['193'].$user."</b><br><br>\n";

fge direkt darunter ein:

                	// Punktesystem V.3.0 ->
			pkt_plus("LI", "1", "2", "Login");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-

2. Fertig!

****************************************************************************************

MODUL 2: Shout (Shoutbox)

1. ffne jetzt die /infusions/shoutbox_panel/shoutbox_panel.php und bearbeite sie wie folgt:

Suche nach :

if (!$flood) $result = dbquery("INSERT INTO ".$db_prefix."shoutbox (shout_name, shout_message, shout_datestamp, shout_ip)
VALUES ('$shout_name', '$shout_message', '".time()."', '".USER_IP."')");

fge direkt darunter ein:

                	// Punktesystem V.3.0 ->
			pkt_plus("SM", "1", "2", "Shoutbox");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-

2. Fertig!

****************************************************************************************

MODUL 3: Messages (PM)

1. ffne jetzt die messages.php und bearbeite sie wie folgt:

Suche nach :

if (isset($_POST['chk_sendtoall']) && isNum($_POST['msg_to_group'])) {
$outbox_user = $userdata['user_id'];
} else {
$outbox_user = $msg_send;
}
$result = dbquery("INSERT INTO ".$db_prefix."messages (message_to, message_from, message_subject, message_message, 
message_smileys, message_read, message_datestamp, message_folder)
VALUES ('".$userdata['user_id']."','".$outbox_user."','".$subject."','".$message."','".$smileys."','1','".time()."','1')");
	
HINWEIS: ca. Zeile 170 >
	
fge direkt darunter ein:

                	// Punktesystem V.3.0 ->
			pkt_plus("PN", "1", "2", "Messages");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-

2. Fertig!

****************************************************************************************

MODUL 4: Gstebuch (Standart) > INFUSION liegt diesem Punktesystem bei!

1. ffne jetzt die /infusions/guestbook/guestbook.php und bearbeite sie wie folgt:

Suche nach :

if ($guest_name != "" && $guest_message != "") {
if ($action == "edit" && iADMIN) {
$result = dbquery("UPDATE ".$db_prefix."guestbook SET guestbook_name='$guest_name', guestbook_email='$guest_email',
guestbook_weburl='$guest_weburl', guestbook_webtitle='$guest_webtitle', guestbook_message='$guest_message'
WHERE guestbook_id='$guestbook_id'");
} else {
$result = dbquery("INSERT INTO ".$db_prefix."guestbook (guestbook_name, guestbook_email, guestbook_weburl,
guestbook_webtitle, guestbook_message, guestbook_datestamp, guestbook_ip) VALUES('$guest_name', '$guest_email',
'$guest_weburl', '$guest_webtitle', '$guest_message', '".time()."', '".USER_IP."')");
		
HINWEIS: ca. Zeile 40 >
	
fge direkt darunter ein:

                	// Punktesystem V.3.0 ->
			pkt_plus("GB", "5", "1", "Gstebuch");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-

2. Fertig!

****************************************************************************************

MODUL 5: Forenthema

1. ffne jetzt die /forum/postnewthread.php und bearbeite sie wie folgt:

Suche nach :

$thread_id = mysql_insert_id();
$result = dbquery("INSERT INTO ".$db_prefix."posts (forum_id, thread_id, post_subject, post_message, post_showsig,
post_smileys, post_author, post_datestamp, post_ip, post_edituser, post_edittime) VALUES ('$forum_id', '$thread_id',
'$subject', '$message', '$sig', '$smileys', '".$userdata['user_id']."', '".time()."', '".USER_IP."', '0', '0')");
$post_id = mysql_insert_id();
$result = dbquery("UPDATE ".$db_prefix."users SET user_posts=user_posts+1 WHERE user_id='".$userdata['user_id']."'");
					
HINWEIS: ca. Zeile 90 >

fge direkt darunter ein:

                	// Punktesystem V.3.0 ->
			pkt_plus("NT", "10", "3", "Forenthema");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-

2. Fertig!

****************************************************************************************

MODUL 6: Forenbeitrag

1. ffne jetzt die /forum/postreplay.php und bearbeite sie wie folgt:

Suche nach :

if (!$flood) {
$result = dbquery("UPDATE ".$db_prefix."forums SET forum_lastpost='".time()."', forum_lastuser='".$userdata['user_id']."'
WHERE forum_id='$forum_id'");
$result = dbquery("UPDATE ".$db_prefix."threads SET thread_lastpost='".time()."', thread_lastuser='".$userdata['user_id']."'
".$update_notify." WHERE thread_id='$thread_id'");
$result = dbquery("INSERT INTO ".$db_prefix."posts (forum_id, thread_id, post_subject, post_message, post_showsig,
post_smileys, post_author, post_datestamp, post_ip, post_edituser, post_edittime) VALUES ('$forum_id', '$thread_id',
'$subject', '$message', '$sig', '$smileys', '".$userdata['user_id']."', '".time()."', '".USER_IP."', '0', '0')");
			
HINWEIS: ca. Zeile 94 >

fge direkt darunter ein:

                	// Punktesystem V.3.0 ->
			pkt_plus("FB", "5", "10", "Forenbeitrag");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-

1. ffne jetzt die /forum/viewthread.php und bearbeite sie wie folgt:

Suche nach :

$subject = "RE: ".$tdata['thread_subject'];
$result = dbquery("UPDATE ".$db_prefix."forums SET forum_lastpost='".time()."', forum_lastuser='".$userdata['user_id']."'
WHERE forum_id='$forum_id'");
$result = dbquery("UPDATE ".$db_prefix."threads SET thread_lastpost='".time()."', thread_lastuser='".$userdata['user_id']."'
WHERE thread_id='$thread_id'");
$result = dbquery("INSERT INTO ".$db_prefix."posts (forum_id, thread_id, post_subject, post_message, post_showsig,
post_smileys, post_author, post_datestamp, post_ip, post_edituser, post_edittime) VALUES ('$forum_id', '$thread_id',
'$subject', '$message', '$sig', '$smileys', '".$userdata['user_id']."', '".time()."', '".USER_IP."', '0', '0')");
$newpost_id = mysql_insert_id();

HINWEIS: ca. Zeile 65 >

fge direkt darunter ein:

                	// Punktesystem V.3.0 ->
			pkt_plus("FB", "5", "10", "Forenbeitrag");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-

2. Fertig!

****************************************************************************************

ERKLRUNG:
----------

Wie erstelle ich einen eigene SQL-Syntax?

1. Suchen sie im entsprechenden Modul (Infusion) die entsprechende Dateien, bei der die
SQL Eintrge in der Datenbank (Tabelle) vorgenommen werden (INSERT). Es knnen auch mehr
als ein Eintrag ntig sein (siehe Forum!) aber es ist auch mglich das nur ein Eintrag
(siehe Gstebuch!) notwendig ist.

2. Fgen Sie einfach einen der obigen Codes ein (anfang -> bis ende <-) und passen sie
ihn an ihr Modul an. Hier erklre ich ihnen was sie genau Anpassen mssen und was zu
beachten ist:


                	// Punktesystem V.3.0 ->
			pkt_plus("FB", "5", "10", "Forenbeitrag");
                	// pkt_??("CODE", "PUNKTE", "LIMIT", "TEXT");
                	// ?? ersetzen durch: plus, minus, offen
                	// Punktesystem V.3.0 <-


CODE   = Fr jede Aktion musst ein andere CODE verwendet werden!

PUNKTE = Anzahl der Punkte je Aktion.

LIMIT  = Das LIMIT steht fr die Gutschrift einer Aktion pro Tag.

TEXT   = Der TEXT wird in jeder Buchung angezeigt.



* = siehe Liste bereits verwendeter Codes:

LI = Login
SM = Shoutbox
PN = Messages (PN)
GB = Gstebuch
FT = Forenthema
FB = Forenbeitrag
UE = berweisung
DW = Downloadabzug
GW = Goldwechsel
SG = Gutschrift oder Abzug durch Administrator

HINWEIS: Bitte alle eigenen Codes immer notieren!



Folgende Funktionen gibt es:
----------------------------

pkt_plus("CODE", "PUNKTE", "LIMIT", "TEXT");
> Punkte werden dem Punktekonto hinzugefgt
> z. B. Shoutbox


pkt_minus("CODE", "PUNKTE", "LIMIT", "TEXT");
> Punkte werden dem Punktekonto abgezogen
> z. B. Downloads


pkt_offen("CODE", "PUNKTE", "LIMIT", "TEXT");
> Punkte werden dem Punktekonto offen hinzugefgt
> z. B. Einsendungen


pkt_storno("USER_ID", "CODE", "PUNKTE", "LIMIT", "TEXT");
> Bereits vergebene Punkte knnen storniert werden
> z. B. Ein Beitrag wird von einem Admin gelscht