[GDRCD 5] Assegnazione carica Moderatore
[GDRCD 5] Assegnazione carica Moderatore postato il 03/04/2011 12:43:56 nel forum programmazione, open source e hosting
Riporto un problema che... non capisco come si possa essere presentato xD
In breve: dal pannello di gestione mi è possibile assegnare solo le cariche di capocorporazione, di master, di admin, di gestore ma NON quella di moderatore.
Ora, premettendo che la gestione permessi io non l'ho mai toccata, qualcuno è in grado di dirmi perchè? la carica di moderatore nativamente dovrebbe esserci, no?
Riporto qui sotto il codice di gestione_permessi, comunque... magari c'è qualcosa che non và qui e io non lo so xD grazie in anticipo! :)
<div class="pagina_gestione_permessi">
<?php /*HELP: */
/*Controllo permessi utente*/
if ($_SESSION['permessi']<MODERATOR){
print '<div class="error">'.gdrcd_filter('out',$MESSAGE['error']['not_allowed']).'</div>';
} else { ?>
<!-- Titolo della pagina -->
<div class="page_title">
<h2><?php print gdrcd_filter('out',$MESSAGE['interface']['administration']['roles']['page_name']); ?></h2>
</div>
<!-- Corpo della pagina -->
<div class="page_body">
<?php /*Modifica di un record*/
if ((gdrcd_filter('',$_POST['op'])==$MESSAGE['interface']['administration']['roles']['submit']['edit']) ||
(gdrcd_filter('',$_POST['op'])==$MESSAGE['interface']['administration']['roles']['submit']['new'])){
/*Eseguo l'aggiornamento*/
$query="UPDATE personaggio SET permessi = ".gdrcd_filter('num',$_POST['permessi'])." WHERE nome = '".gdrcd_filter('in',$_POST['nome'])."' LIMIT 1";
mysql_query($query);
switch(gdrcd_filter('num',$_POST['permessi'])){
case USER:{$newrole = gdrcd_filter('out',$PARAMETERS['names']['users_name']['sing']);break;}
case GUILDMODERATOR:{$newrole = gdrcd_filter('out',$PARAMETERS['names']['guild_name']['lead']);break;}
case GAMEMASTER:{$newrole = gdrcd_filter('out',$PARAMETERS['names']['master']['sing']);break;}
case MODERATOR:{$newrole = gdrcd_filter('out',$PARAMETERS['names']['moderators']['sing']);break;}
case SUPERUSER:{$newrole = gdrcd_filter('out',$PARAMETERS['names']['administrator']['sing']);break;}
}
/*Registro l'operazione*/
$query = "INSERT INTO log (nome_interessato, autore, data_evento, codice_evento, descrizione_evento) VALUES ('".gdrcd_filter('in',$_POST['nome'])."','".$_SESSION['login']."', NOW(), '".CHANGEDROLE."', '->".$newrole."')";
$result = mysql_query($query);
/*Avviso l'utente*/
$query="INSERT INTO messaggi (mittente, destinatario, spedito, testo) VALUES ('".$_SESSION['login']."', '".gdrcd_filter('in',$_POST['nome'])."', NOW(), '".gdrcd_filter('in',$MESSAGE['interface']['administration']['roles']['message_body'][0].$newrole.$MESSAGE['interface']['administration']['roles']['message_body'][1])."')";
mysql_query($query);?>
<!-- Conferma -->
<div class="warning">
<?php print gdrcd_filter('out',$MESSAGE['warning']['modified']);?>
</div>
<!-- Link di ritorno alla visualizzazione di base -->
<div class="link_back">
<a href="main.php?page=gestione_permessi">
<?php print gdrcd_filter('out',$MESSAGE['interface']['administration']['roles']['link']['back']); ?>
</a>
</div>
<?php } ?>
<?php /*Form di inserimento/modifica*/
if (isset($_POST['op'])===FALSE) {
$query="SELECT nome, permessi FROM personaggio WHERE permessi > ".USER." ORDER BY permessi DESC";
$result=mysql_query($query);?>
<!-- Form di abilitazione -->
<div class="panels_box">
<?php while ($row=mysql_fetch_array($result)){ ?>
<form action="main.php?page=gestione_permessi"
method="post"
class="form_gestione">
<div class='form_label'>
<?php print $row['nome'];?>
</div>
<div class='form_field'>
<select name="permessi" ?>
<option value="<?php print USER; ?>"
<?php if ($row['permessi']==USER){print 'SELECTED';} ?> />
<?php print gdrcd_filter('out',$PARAMETERS['names']['users_name']['sing']); ?>
</option>
<option value="<?php print GUILDMODERATOR; ?>"
<?php if ($row['permessi']==GUILDMODERATOR){print 'SELECTED';} ?> />
<?php print gdrcd_filter('out',$PARAMETERS['names']['guild_name']['lead']); ?>
</option>
<option value="<?php print GAMEMASTER; ?>"
<?php if ($row['permessi']==GAMEMASTER){print 'SELECTED';} ?> />
<?php print gdrcd_filter('out',$PARAMETERS['names']['master']['sing']); ?>
</option>
<?php if ($_SESSION['permessi']>MODERATOR){ ?>
<option value="<?php print MODERATOR; ?>"
<?php if ($row['permessi']==MODERATOR){print 'SELECTED';} ?> />
<?php print gdrcd_filter('out',$PARAMETERS['names']['moderators']['sing']); ?>
</option>
<option value="<?php print SUPERUSER; ?>"
<?php if ($row['permessi']==SUPERUSER){print 'SELECTED';} ?> />
<?php print gdrcd_filter('out',$PARAMETERS['names']['administrator']['sing']); ?>
</option>
<?php } ?>
</select>
</div>
<!-- bottoni -->
<div class='form_submit'>
<input type="hidden" name="nome" value="<?php print $row['nome'];?>">
<input type="submit"
value="<?php print gdrcd_filter('out',$MESSAGE['interface']['administration']['roles']['submit']['edit']);?>"
name="op" />
</div>
</form>
<?php }//while ?>
<?php //Nominativi utente
$query="SELECT nome FROM personaggio WHERE permessi > ".DELETED."";
$result=mysql_query($query);
?>
<form action="main.php?page=gestione_permessi"
method="post"
class="form_gestione">
<div class='form_field'>
<select name="nome">
<?php while($row=mysql_fetch_array($result)){?>
<option value="<?php print gdrcd_filter('out',$row['nome']); ?>">
<?php print gdrcd_filter('out',$row['nome']); ?>
</option>
<?php }//while ?>
</select>
<select name="permessi" ?>
<option value="<?php print USER; ?>" />
<?php print gdrcd_filter('out',$PARAMETERS['names']['users_name']['sing']); ?>
</option>
<option value="<?php print GUILDMODERATOR; ?>" />
<?php print gdrcd_filter('out',$PARAMETERS['names']['guild_name']['lead']); ?>
</option>
<option value="<?php print GAMEMASTER; ?>" />
<?php print gdrcd_filter('out',$PARAMETERS['names']['master']['sing']); ?>
</option>
<?php if ($_SESSION['permessi']>MODERATOR){ ?>
<option value="<?php print MODERATOR; ?>" />
<?php print gdrcd_filter('out',$PARAMETERS['names']['moderators']['sing']); ?>
</option>
<option value="<?php print SUPERUSER; ?>" />
<?php print gdrcd_filter('out',$PARAMETERS['names']['administrator']['sing']); ?>
</option>
<?php } ?>
</select>
</div>
<!-- bottoni -->
<div class='form_submit'>
<input type="submit"
value="<?php print gdrcd_filter('out',$MESSAGE['interface']['administration']['roles']['submit']['new']);?>"
name="op" />
</div>
</form>
</div>
<?php } //if ?>
</div><!-- page_body -->
<?php } //else ?>
</div><!-- pagina -->
Pagine → 1
03/04/2011 17:29:04
Io personalmente ho ridato le cariche ridistrubuendo i poteri su quesa scala:
- Player
- CapoCorporazione (gestisce gilda, crea e assegna oggetti)
- Fato (gestisce SOLO il fato)
- Modder (fa il moderatore puro, MA HA DEI LIMITI RISPETTO ALLA GESTIONE)
- Gestione (ha il controllo assoluto)
Ho poi dovuto inserire un nuovo tipo di bacheca, riservata ai capicorporazione (NON PREVISTA IN ORIGINE) dove i signori col fato danno indicazioni di gioco e trame..
Non è un lavoraccio in termini di codice... basta cambiare qualche rapporto sulle pagine admin e scheda pg
06/04/2011 11:44:45
chainer82 ha scritto: Io personalmente ho ridato le cariche ridistrubuendo i poteri su quesa scala:
- Player
- CapoCorporazione (gestisce gilda, crea e assegna oggetti)
- Fato (gestisce SOLO il fato)
- Modder (fa il moderatore puro, MA HA DEI LIMITI RISPETTO ALLA GESTIONE)
- Gestione (ha il controllo assoluto)
Ho poi dovuto inserire un nuovo tipo di bacheca, riservata ai capicorporazione (NON PREVISTA IN ORIGINE) dove i signori col fato danno indicazioni di gioco e trame..
Non è un lavoraccio in termini di codice... basta cambiare qualche rapporto sulle pagine admin e scheda pg
non mi pare una cattiva idea, in effetti :)
tuttavia, anche per fare una cosa così, dovrei prima riuscire a modificare il codice che ho postato nel mio scorso messaggio, solo che... non mi riesce e non capisco perchè? <.< qualcuno è in grado di darmi una mano a fare quelle cose che chiedevo prima? più che altro perchè,magari, se riesco a vedere come si fa, poi ne capisco la logica e mi avvio autonomamente u.u
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
CRSED: F.O.A.D. ↗
AlterEgo ↗
Cafuné ↗