Joomla.it Forum

Joomla! 1.5.x (versione con supporto terminato) => Joomla! 1.5 => : Joker84 24 Jul 2009, 11:23:45

: [RISOLTO]limitare delle funzioni agli utenti author per la stesura di articoli!
: Joker84 24 Jul 2009, 11:23:45
salve ragazzi! il sito in questione è questo http://raccontidamore.it
nel sito web gli utenti vengono registrati direttamente come "author" perciò hanno la possibilità di scrivere articoli dal frontend.
Il mio problema è che per impostazione predefinita gli "author" hanno la possibilità di modificare delle impostazioni sulla pubblicazione dei propri articoli:
- mostra in prima pagina
- inizio e fine pubblicazione
- livello di accesso

come potete immaginare queste impostazioni sono troppo avanzate per poter essere messe a disposizioni di tutti gli iscritti!
ho provato ad installare componenti di gestione avanzata degli utenti, ma non credo facciano al mio caso...a meno che non me ne sappiate consigliare uno che mi permetta di fare ciò.
l'alternativa è modificare il codice, ma non trovo il giusto file php da modificare, ed oltretutto non so se sarebbe corretto.

mi potete dare qualche consiglio?
se volete testare la registrazione potete farlo inserendo:
nome utente: coco
pass: coco
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: .: BlackHat :. 24 Jul 2009, 12:05:56
l'unico modo che mi viene in mente, è di modificare il file php che crea il form, in modo da non far apparire quelle caselle se chi sta cercando di inserire l'articolo è un Author. per farlo devi andare in ->components->com_content->views->article->tmpl ed aprire il file form.php.
a questo punto alla linea 97 troverai il tag fieldset che racchiude tutte quelle opzioni. dovresti mettere una if prima di questo in modo da dire all'applicazione "se l'utente è author non far visualizzare quel che segue, altrimenti si". per farlo inserisci questo prima di fieldset

<?
$lvluser = $this->user->usertype;
if ($lvluser != "Author"){
?>

dopo il fieldset di chiusura inserisci questo

<?
}
?>

dovrebbe andare bene


: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: Joker84 24 Jul 2009, 15:47:08

dovresti mettere una if prima di questo in modo da dire all'applicazione "se l'utente è author non far visualizzare quel che segue, altrimenti si". per farlo inserisci questo prima di fieldset

<?
$lvluser = $this->user->usertype;
if ($lvluser != "Author"){
?>

dopo il fieldset di chiusura inserisci questo

<?
}
?>

dovrebbe andare bene
non va non cambia nulla...
ti incollo il pezzo di codice a partire dalla linea 97 così vedi dove ho sbagliato:

<?
$lvluser = $this->user->usertype;
if ($lvluser != "Author"){
?>

<fieldset>
<legend><?php echo JText::_('Publishing'); ?></legend>
<table class="adminform">
<tr>
   <td class="key">
      <label for="sectionid">
         <?php echo JText::_( 'Section' ); ?>:
      </label>
   </td>
   <td>
      <?php echo $this->lists['sectionid']; ?>
   </td>
</tr>
<tr>
   <td class="key">
      <label for="catid">
         <?php echo JText::_( 'Category' ); ?>:
      </label>
   </td>
   <td>
      <?php echo $this->lists['catid']; ?>
   </td>
</tr>
<?php if ($this->user->authorize('com_content', 'publish', 'content', 'all')) : ?>
<tr>
   <td class="key">
      <label for="state">
         <?php echo JText::_( 'Published' ); ?>:
      </label>
   </td>
   <td>
      <?php echo $this->lists['state']; ?>
   </td>
</tr>
<?php endif; ?>
<tr>
   <td width="120" class="key">
      <label for="frontpage">
         <?php echo JText::_( 'Show on Front Page' ); ?>:
      </label>
   </td>
   <td>
      <?php echo $this->lists['frontpage']; ?>
   </td>
</tr>
<tr>
   <td class="key">
      <label for="created_by_alias">
         <?php echo JText::_( 'Author Alias' ); ?>:
      </label>
   </td>
   <td>
      <input type="text" id="created_by_alias" name="created_by_alias" size="50" maxlength="100" value="<?php echo $this->escape($this->article->created_by_alias); ?>" class="inputbox" />
   </td>
</tr>
<tr>
   <td class="key">
      <label for="publish_up">
         <?php echo JText::_( 'Start Publishing' ); ?>:
      </label>
   </td>
   <td>
       <?php echo JHTML::_('calendar', $publish_up, 'publish_up', 'publish_up', '%Y-%m-%d %H:%M:%S', array('class'=>'inputbox', 'size'=>'25',  'maxlength'=>'19')); ?>
   </td>
</tr>
<tr>
   <td class="key">
      <label for="publish_down">
         <?php echo JText::_( 'Finish Publishing' ); ?>:
      </label>
   </td>
   <td>
       <?php echo JHTML::_('calendar', $publish_down, 'publish_down', 'publish_down', '%Y-%m-%d %H:%M:%S', array('class'=>'inputbox', 'size'=>'25',  'maxlength'=>'19')); ?>
   </td>
</tr>
<tr>
   <td valign="top" class="key">
      <label for="access">
         <?php echo JText::_( 'Access Level' ); ?>:
      </label>
   </td>
   <td>
      <?php echo $this->lists['access']; ?>
   </td>
</tr>
<tr>
   <td class="key">
      <label for="ordering">
         <?php echo JText::_( 'Ordering' ); ?>:
      </label>
   </td>
   <td>
      <?php echo $this->lists['ordering']; ?>
   </td>
</tr>
</table>
</fieldset>

<?
}
?>


Ps: non metterti a ridere se ho commesso errori banali...non sono efferrato con il codice :P
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: Joker84 25 Jul 2009, 10:13:21
c'è nessuno? :'(
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: Joker84 25 Jul 2009, 18:21:48
siamo sicuri che sia quella la pagina php da modificare? perchè ho provato a cancellare direttamente quel pezzettino di codice ma non cambia niente di una virgola! ???
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: 56francesco 25 Jul 2009, 19:38:53
cosa ci fa questo topic nella sezione template?

sposto...
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: jqjo 26 Jul 2009, 10:26:04
se non sbaglio JCE fa quello che ti serve.
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: Joker84 30 Jul 2009, 21:29:38
se non sbaglio JCE fa quello che ti serve.
infatti solo che inpostando i gruppi comunque non cambia niente....bho...!!! chi mi aiuta?eppure non dovrebbe essere difficile
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: jqjo 31 Jul 2009, 14:02:42
allora:
1-
eppure non dovrebbe essere difficile
se non lo fosse ti saresti arrangiato!
2- hai un template che sovrascrive il form? perchè se è così allora puoi modificare finchè vuoi la view di com_content e non camierà mai nulla.
3- un po' di umiltà nn ha mai fatto male anzi.
: Re:limitare delle funzioni agli utenti author per la stesura di articoli!
: Joker84 01 Aug 2009, 16:12:44
allora:

3- un po' di umiltà nn ha mai fatto male anzi.

non capisco questo tipo di accusa visto che l'umiltà la dimostro nel momento in cui scrivo in un forum per farmi aiutare da qualcuno, ciò rende implicito il fatto che io non sappia risolvere il problema e chieda xciò aiuto a voi.
in ogni caso, se ho ferito qualcuno nell'orgoglio chiedo umilmente scusa, ovviamente non è mia intenzione creare polemiche!

Ringrazio ".: BlackHat :." per avermi dato il primo "input" ;)

"jqjo" ti ringrazio per il suggerimento!!! ho risolto il mio problema finalmente eliminando i pezzi di codice situati in: cartella del template/html/com_content/article/Form.php
effettivamente non era difficile!

grazie infinite! ;D



: Re:[RISOLTO]limitare delle funzioni agli utenti author per la stesura di articoli!
: jqjo 03 Aug 2009, 14:04:11
lieto di esserti stato utile