Sivu 1/1

Vapaat nimet MOD (esim. etunimi sukunimi)

Lähetetty: 05 Kesä 2007, 07:50
Kirjoittaja Merri
Tällä MODilla voi antaa käyttäjien asettaa viestien oheen näkyville oman käyttäjätunnuksensa sijaan mitä tahansa he haluavat. Käytännöllisin käyttö on antaa käyttäjien kirjoittaa oma nimensä.

Asennusohjeet
  • Mene ylläpitopaneeliin ja lisää uusi kenttä profiiliin. Laita kentän nimeksi fullname. Muut asetukset kenttään liittyen ovat vapaita.
  • Avaa includes/functions.php ja suorita seuraavat koodimuutokset:
ETSI:

Koodi: Valitse kaikki

function get_username_string($mode, $user_id, $username, $username_colour = '', $guest_username = false, $custom_profile_url = false)
{
	global $phpbb_root_path, $phpEx, $user, $auth;

	$profile_url = '';
	$username_colour = ($username_colour) ? '#' . $username_colour : '';

	if ($guest_username === false)
	{
		$username = ($username) ? $username : $user->lang['GUEST'];
	}
	else
	{
		$username = ($user_id && $user_id != ANONYMOUS) ? $username : ((!empty($guest_username)) ? $guest_username : $user->lang['GUEST']);
	}
KORVAA TÄLLÄ:

Koodi: Valitse kaikki

function get_username_string($mode, $user_id, $username, $username_colour = '', $guest_username = false, $custom_profile_url = false)
{
	global $phpbb_root_path, $phpEx, $user, $auth, $db;

	$profile_url = '';
	$username_colour = ($username_colour) ? '#' . $username_colour : '';

	if ($guest_username === false)
	{
		// MOD: fullname usernamen tilalle!
		if($username) {
			$sql = 'SELECT pf.pf_fullname
				FROM ' . PROFILE_FIELDS_DATA_TABLE . ' pf
				WHERE pf.user_id = ' . $user_id;

			$result = $db->sql_query($sql);

			$row = $db->sql_fetchrow($result);

			if($row['pf_fullname'] != '') {
				$username = $row['pf_fullname'];
			}
		}
		else
		{
			$username = $user->lang['GUEST'];
		}
		// $username = ($username) ? $username : $user->lang['GUEST'];
		// MOD: fullname usernamen tilalle!
	}
	else
	{
		// MOD: fullname usernamen tilalle!
		if($user_id && $user_id != ANONYMOUS) {
			$sql = 'SELECT pf.pf_fullname
				FROM ' . PROFILE_FIELDS_DATA_TABLE . ' pf
				WHERE pf.user_id = ' . $user_id;

			$result = $db->sql_query($sql);

			$row = $db->sql_fetchrow($result);

			if($row['pf_fullname'] != '') {
				$username = $row['pf_fullname'];
			}
		}
		else
		{
			$username = ((!empty($guest_username)) ? $guest_username : $user->lang['GUEST']);
		}

		// $username = ($user_id && $user_id != ANONYMOUS) ? $username : ((!empty($guest_username)) ? $guest_username : $user->lang['GUEST']);
		// MOD: fullname usernamen tilalle!
	}
Huomautukset
phpBB3:n runsaiden optimointien takia tämä ominaisuus on toteutettu ylimääräisen SQL-kutsun voimin, jota kutsutaan jokaisen esiintymän kohdalla erikseen. Tämä MODi ei siksi ole soveltuva hyvin ruuhkaisille keskustelualueille ilman joko välimuistin kehittelyä tai paljon monimutkaisemman koodin toteuttamista, joka huomioisi phpBB3:n nopeusoptimoinnit.

Re: Vapaat nimet MOD (esim. etunimi sukunimi)

Lähetetty: 05 Kesä 2007, 08:08
Kirjoittaja Lurttinen

Re: Vapaat nimet MOD (esim. etunimi sukunimi)

Lähetetty: 05 Kesä 2007, 08:41
Kirjoittaja Merri
Kirjoitin tuon nopeasti junassa kun se oli myöhässä, siksi ei tullut MODX:ää. Enkä tiedä viitsinkö yhden muutoksen takia sellaista väsätäkään.

Re: Vapaat nimet MOD (esim. etunimi sukunimi)

Lähetetty: 24 Tammi 2008, 18:09
Kirjoittaja TeemuLintula
Asennusohjeet

* Mene ylläpitopaneeliin ja lisää uusi kenttä profiiliin. Laita kentän nimeksi fullname. Muut asetukset kenttään liittyen ovat vapaita.
mitä takoitat tuolla punaiseksi värjätyllä tekstillä?
Missä semmonen on?

Re: Vapaat nimet MOD (esim. etunimi sukunimi)

Lähetetty: 31 Tammi 2008, 14:29
Kirjoittaja Peetra
En ole varma, Teemu, mutta voisiko se olla
Siirryt hallintapaneeliin --> KÄYTTÄJÄT JA RYHMÄT --> Mukautetut profiilikentät :?: :?: