ilch Forum » Ilch Clan 1.1 » Module und Modifikationen » JoinUS erweitern umbauen

Geschlossen
  1. #1
    User Pic
    MonkeyOnKeyboard Moderator
    Registriert seit
    10.02.2014
    Beiträge
    437
    Beitragswertungen
    20 Beitragspunkte
    Ich habe ein Problem mit meiner JoinUs.

    Und zwar nutze ich eine umgebaute von mir.. aber komm mit dem erweitern nicht mehr zurrecht.

    Hier mal die Dateien im Überblick und danach zu meinen Fragen.

    1.
    <?php
    #   Copyright by: Manuel Staechele
    #   Support: www.ilch.de
    defined ('main') or die ( 'no direct access' );
    //-----------------------------------------------------------|
    
    $title = $allgAr['title'].' :: Joinus';
    $hmenu = 'Joinus';
    $design = new design ( $title , $hmenu );
    $design->header();
    
    if ( 0 == db_count_query("SELECT COUNT(*) FROM prefix_groups WHERE show_joinus = 1") ) {
    	echo $lang['noteamthere'];
    	$design->footer();
    	exit ();
    }
    
    $skill_ar = array (
      1 => $lang['verybad'],
      2 => $lang['bad'],
    	3 => $lang['middle'],
    	4 => $lang['good'],
    	5 => $lang['verygood'],
    );
    
    $far = array (
    		'name',
    		'online',
    		'mail',
    		'age',
    		'squad',
    		'ground',
    		'wotlink',	// Ab hier beginnen meine eigenen JoinUs-Felder
    		'wotnick',   
    		'howmany',  
    		'panzerl',
    		'freundek',// und hier enden sie.
        	'rules',
    	);
    $x = 0;
    foreach ($far as $v) {
    	if (!empty($_POST[$v])) {
    		$$v = escape($_POST[$v], 'string');
    		$x++;
    	} else {
    		$$v = '';
    	}
    }
    
    $xname = escape_nickname($name);
    $ch_name = false;
    if (loggedin()) {
      $ch_name = true;
    } elseif (isset($_POST['sub']) AND $name == $xname AND !empty($name)
       AND 0 == db_result(db_query("SELECT COUNT(*) FROM prefix_user WHERE name = BINARY '".$name."'"),0)) {
      $ch_name = true;
    }
    
    if (count($far) <> $x OR $ch_name == false) {
    	$tpl = new tpl ( 'joinus.htm' );
    	$squad = dblistee ($squad, "SELECT id,name FROM prefix_groups WHERE show_joinus = 1 ORDER BY pos");
      if (loggedin()) { $name = $_SESSION['authname']; }
      foreach($far as $v) {
    		if ($x > 0 AND empty($_POST[$v])) {
    			echo 'Es fehlt: '.$lang[$v].'<br />';
    		}
    		$tpl->set ($v, $$v);
    	}
      if ($x > 0 AND $name != $xname) {
        echo $lang['wrongnickname'].'<br />';
      } elseif ($x > 0 AND $ch_name == false) {
        echo $lang['namealreadyinuse'].'<br />';
      }
      $name = $xname;
      $tpl->set('readonly', (loggedin()?' readonly': ''));
    	$tpl->out(0);
    } else { # eintragen
      
      $name = $xname;
    	$userreg = $lang['no'];
      if (!loggedin()) {
        $x = user_regist ($name,$mail,genkey(8));
        $userreg = $lang['yes'];
      }
    
      db_query("INSERT INTO prefix_usercheck (`check`,name,datime,ak,groupid) VALUES ('".genkey(8)."','".$name."',NOW(),4,$squad)");
    
      $squad = escape($squad, 'integer');
    	$abf   = "SELECT `mod1`, `mod2`, `mod4`, name FROM prefix_groups WHERE id = ".$squad;
    	$erg   = db_query($abf);
    	$row   = db_fetch_assoc($erg);
      $rulz  = (isset($_POST['rules'])?$_POST['rules']:$lang['no']);
      
      # bitte in der richtigen reihenfolge angeben, sonst das nicht gehen tun, kann.
      $mailtxt = sprintf ($lang['joinusprivmsg'],
        $name,
        $row['name'],
        $online,
        $mail,
        $age,
        $ground,
    	$wotlink, // Hier fangen meine eigenen an.
    	$wotnick,
    	$howmany,
    	$panzerl,
    	$freundek,
        $rulz,
    	$userreg
      );
      
      # pm an den leader  
    	sendpm ($_SESSION['authid'], $row['mod1'], 'Joinus Anfrage',$mailtxt, -1);
      # Wenn Co Leader != Leader
    	if ($row['mod2'] != $row['mod1']){
    		sendpm ($_SESSION['authid'], $row['mod2'], 'Joinus Anfrage',$mailtxt, -1);
    	}
    	if ($row['mod4'] != $row['mod1'] AND $row['mod2'] != $row['mod4']){
    		sendpm ($_SESSION['authid'], $row['mod4'], 'Joinus Anfrage',$mailtxt, -1);
    	}
      
    	if (!loggedin()) {
    		echo $lang['amailhasbeensenttoyouwithmailandpass'].'<br /><br />';
      }
      echo sprintf($lang['leaderofxalert'], $row['name']);
    }
    $design->footer();
    ?>



    <form action="index.php?joinus" method="POST">
    <fieldset>
    	<legend><b>{_lang_yourdata}:<br>
    	</b></legend>
    	<label style="float:left; width:100px; "><i>{_lang_joininfo}:</i></label><i>{_lang_plsfilloutallfields}</i><br />
    	<br />
      <label style="float:left; width:100px; ">{_lang_wotnick}:</label><input name="name"{readonly} maxlength="15" value="{name}" /><br /><br />
    	<label style="float:left; width:100px; ">Onlinezeit?</label><select name="online">{online}
    	<option>Sehr oft</option>
    	<option>Mittelmäßig</option>
    	<option>Selten</option>
    	<option>Am Wochenende</option>
    	<option>Unterschiedlich</option>
    	</select><br />
    	<label style="float:left; width:100px; ">E-Mail:</label><input type="text" name="mail" value="{mail}" /><br />
    	<label style="float:left; width:100px; ">{_lang_age}:</label><input type="text" name="age" value="{age}" /><br />
    	<label style="float:left; width:100px; ">{_lang_squad}:</label><select name="squad">{squad}</select /><br />
    	<label style="float:left; width:100px; ">Bewerbungstext:</label><textarea name="ground" cols="40" rows="5">{ground}</textarea>
    	<br>
    </fieldset>
    <fieldset>
    	<legend><b>World of Tanks Informationen:</b><br>
    	<br></legend>
    	<label style="float:left; width:100px; ">{_lang_wotlink}:</label>
    	<input type="text" name="wotlink" value="{wotlink}" /><br />
    	<br>
    	<label style="float:left; width:100px; ">{_lang_wotnick}:</label>
    	<input type="text" name="wotnick" value="{wotnick}" /><br />
    	<br>
    	<br>
    	<label style="float:left; width:100px; ">{_lang_howmany}:</label>
    	<input type="text" name="howmany" value="{howmany}" /><br />
    	<br>
    	<br>
    	<br>
    	<label style="float:left; width:100px; ">{_lang_panzerl}:</label><textarea name="panzerl" cols="40" rows="5">{panzerl}</textarea><br />
    	<br>
    </fieldset>
    <fieldset>
    	<legend><b>Zus&auml;tzliche Informationen:</b><br>
    	<br></legend>
    	<label style="float:left; width:100px; ">{_lang_freundek}:</label><textarea name="freundek" cols="40" rows="5">{freundek}</textarea><br />
    	<br>
    </fieldset>
    <fieldset>
    	<legend><b>Regeln:</b>
    	<br></legend>
    	<label style="float:left; width:100px; ">{_lang_rules}:</label><input type="checkbox" name="rules" value="{_lang_yes}" />{_lang_rulzreaded}<br />
      <br />
    	<label style="float:left; width:100px; ">&nbsp;</label><input type="submit" name="sub" value="{_lang_formsub}" /><br />
    </fieldset>
    </form>


    ## Eigene Language-Variablen
    
    'wotlink'=>'WoT Profil Link',
    'wotname'=>'Wot Name',
    'wotnick'=>'Wot Ingame Name',
    'nohttp'=>'Bitte bei den Links kein "http://" davor setzten',
    'howmany'=>'Wie viele Stunden spielst du WoT in der Woche',
    'freundek'=>'Wenn du mit Freunden zu uns kommen willst, schreib bitte deren Namen',
    'panzerl'=>'Welche Panzer fährst du am liebsten?',
    
    'joinusprivmsg' => "Hallo,\n%s möchte %s beitreten.\n\nFolgende Angaben hat er gemacht:\nOnline: %s\neMail: %s\nAlter: %s\nGrund: %s\nWorld of Tanks Informationen: \nWoT Profillink: %s\nWoT-live Link: http://wot-life.com/eu/player/%s/\n\nStunden in der Woche WoT: %s \n \nPanzerliste: %s\n \nZusätzliche Informationen:\n \nFreunde wollen auch Joinen: %s\n\nRegeln_akzeptiert: %s\n\nWurde direkt als User registriert: %s\nWenn dort nein steht dann war er zum Zeitpunkt der Anfrage schon User.\n\nIm Adminmenu unter Teams kannst du ihn freischalten, oder die Anfrage loeschen. Wenn er als User registriert wurde, muss er die Registrierung jenach Einstellung erst bestaetigen.",



    2. Meine Fragen:

    -> Ich nutze im Moment 2 mal in kombination die _lang_wotnick einmal als
    Eingabefeld mit vorwort _lang und einmal in verbindung mit der variable $name. Da ich aus der der Zeile:

    	<label style="float:left; width:100px; ">{_lang_wotnick}:</label>
    	<input type="text" name="wotnick" value="{wotnick}" /><br />
    	<br>


    Einen Link generiere Siehe abschnitt de.php
    Wäre es möglich der de.php zu sagen oder der joinus.htm nimm als variable $name, so das die User beim JoinUs nur einmal ihren nicknamen eintragen müssen?

    Das Zweite ist, das ich gerne auch Informationen wie zb. panzerliste, die auch im joinus angegeben werden muss gern in die Profil Tabelle mit übernehmen möchte.


    Nachtrag, desweiteren haben wir im MOment 6 Mann die sicxh auch um die Memberregistration und JoinUs kümmern... Kann ich dem Script sagen. Dass alle zb. CoAdmnins die JoinUs Mail bekommen??

    verwendete ilch Version: 1.1 P

    betroffene Homepage: ferrum-ignemque.eu/


    Zuletzt modifiziert von magicmarkus am 13.07.2015 - 11:10:23
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Hab zwar nicht alles genau verstanden aber bei dem was ich verstanden hab versuch ich mal zu helfen lachen

    ZitatZitat geschrieben von magicmarkus
    Das Zweite ist, das ich gerne auch Informationen wie zb. panzerliste, die auch im joinus angegeben werden muss gern in die Profil Tabelle mit übernehmen möchte.

    Die daten werden doch in der Db gespeichert? so muss du diese einfach in dein Profil in der db abfrage einfügen und auslesen.

    ZitatZitat geschrieben von magicmarkus
    Nachtrag, desweiteren haben wir im MOment 6 Mann die sicxh auch um die Memberregistration und JoinUs kümmern... Kann ich dem Script sagen. Dass alle zb. CoAdmnins die JoinUs Mail bekommen??

    So wie ich es eben in ein anderen Thread geschrieben habe könntest du folgendes Probieren aber musst es der JoinUs anpassen sonst sollte es mit den code genauso laufen
    # pm an alle User aus einer Gruppe senden
      $userRecht = db_query("SELECT id, recht FROM prefix_user");
      while ($row = db_fetch_object($userRecht)) {
          if ($row->recht == -3) {
              sendpm($_SESSION['authid'], $row->id, 'Fightus Anfrage', $txt, -1);
          }
      }



    Zuletzt modifiziert von Siggi am 13.07.2015 - 15:12:48
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten