Errore cache Remository dopo aggiornamento a Joomla! 1.5.10

Problema

Dopo aver aggiornato un’installazione Joomla1 alla versione 1.5.10 il componente Remository con versione precendete alla 3.51 non permette di più di salvare modifiche dal lato amministrativo del pannello di controllo.


Soluzione

L’errore si verifica cercando di salvare quasi qualsiasi cosa nel pannello di gestione di file, gruppi e container di Remository tramite il back-end di Joomla.
Gli errori riportati possono essere i seguenti:

  • JFolder::delete: Could not delete folder
  • Warning: opendir([…]) [function.opendir]: failed to open dir: Permission denied […]
  • Warning: readdir([…]) [function.opendir]: failed to open dir: Permission denied […]
  • Warning: closedir([…]) [function.opendir]: failed to open dir: Permission denied […]

Tali errori sono dovuti alla mancanza di una funzione nel metodo di gestione della cache.
Scambiando qualche battuta con gli autori del componente, sempre molto disponibili, tramite il forum dedicato a Remository, mi è stato suggerito come ovviare il problema in attesa della pubblicazione della versione 3.51.
Potete leggere tutta la discussione originale al link seguente:
http://remository.com/forum/func,view/id,12802/catid,24/limit,6/limitstart,0/

Per la versione 3.50
aprire il file /components/com_remository/aliro/remositoryAuthoriser.php e intorno alla linea 92 aggiungere la chiamata clearstatcache(); in modo che la funzione diventi come di seguito:

public function clearCache () {
        clearstatcache
();
        $this
->cache->clean('aliroAuthoriser');
        $this
->getCacheData();
    
}


Per versioni precedenti la 3.50
Va fatta la stessa cosa ma il file si trova invece in /components/com_remository/p-classes/remositoryAuthoriser.php.
Intorno alla linea 87 inserire la chiamata clerastatcache(); in modo che la funzione diventi come di seguito:

function clearCache () {
        clearstatcache
();
        $this
->cache->clean('aliroAuthoriser');
        $this
->all_roles = $this->cache->call('aliroAuthoriserCache::getRoleData');
    
}

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.