Back to top

Autore Topic: Aggiungere cartelle a estensione esistente da nuova estensione  (Letto 4292 volte)

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Buongiorno

Spiego meglio l'esigenza, ho trovato un componente che aggiunge un framework esterno a joomla, poi  scriverò un articolo per illustrarlo meglio. Questo componente una volta installato permette di costruire facilmente delle applicazioni a partire da tabelle db, ora io sto costruendo una applicazione per questo componente e una volta preparato tutta la struttura di file e cartelle compreso il file xml mi sono accorto che aggiunge al db joomla le tabelle necessarie ma non mi va a posizionare le cartelle aggiuntive nel posto ove servono.
Il componente  ha una cartella apps per le applicazioni da costruire direttamente da backend o da aggiungere se sviluppate da altri.
Come devo strutturare il file  .xml affinché non mi crea una nuova estensione ma mi aggiunge le cartelle alla cartella 'apps' esistente? Ovviamente posso inserirla manualmente ma se devo distibuire applicazioni non è la soluzione migliore.

Offline alexred

  • Fuori controllo
  • *
  • Post: 25672
  • Sesso: Maschio
  • Esperto in ozio relaxed
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #1 il: 16 Ago 2016, 16:26:20 »
Ciao    tomtomeight,
come tipologia di estensione ti consiglierei quindi il package:
<extension type="package" version="3.6" method="upgrade">

e nell'xml  nel tag   <files>    vai ad indicare la cartella dove inserire i file.

Però non hai il controllo se quella determinata estensione è già presente.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #2 il: 16 Ago 2016, 17:55:06 »
Grazie Alex
adotterò questo metodo.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #3 il: 16 Ago 2016, 19:32:38 »
Per ora ho ottenuto solo di cancellare le cartelle della estensione principale, qualcosa nel naming sbaglio.
Sono stanco ci riprovo domani.

Offline alexred

  • Fuori controllo
  • *
  • Post: 25672
  • Sesso: Maschio
  • Esperto in ozio relaxed
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #4 il: 16 Ago 2016, 19:54:31 »
puoi tentare anche il type="file"

<extension version="3.6" type="file" method="upgrade">


<files folder="extensions" target="plugins/content/xxxxx/app">
<file>xxx.php</file>
</files>

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #5 il: 16 Ago 2016, 20:11:57 »
Sì ho fatto così, creato la cartella packages e inserito all'interno i file e cartelle aggiuntive zippati, dopo vari tentativi e aggiustamenti, mi cancella la voce di menù amministrazione della estensione principale e una volta sola mi ha aggiunto le cartelle al posto giusto. Ho seguito lo schema guardando altre estensioni in formato package, devo solo fare attenzione ai nomi dei file, domani ci riprovo.

Offline alexred

  • Fuori controllo
  • *
  • Post: 25672
  • Sesso: Maschio
  • Esperto in ozio relaxed
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #6 il: 16 Ago 2016, 20:26:48 »
io non ho ben capito cosa vuoi fare,
ma se vuoi solo caricare file e cartelle all'interno di una cartella di una estensione il tutto dovrebbe essere semplice, provo ad allegarti questa estensione che carica i file e cartelle all'interno della Ozio Gallery in components/com_oziogallery3/

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #7 il: 16 Ago 2016, 20:44:45 »
Sì devo proprio aggiungere file e cartelle a estensione esistente, ho visto la cartella  linkata e ti chiedo, posso aggiungere anche istruzioni al manifest.xml per aggiungere tabelle al db?

Offline alexred

  • Fuori controllo
  • *
  • Post: 25672
  • Sesso: Maschio
  • Esperto in ozio relaxed
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #8 il: 16 Ago 2016, 21:25:33 »
credo di si,

prima dei file nell'xml richiami un file sql:

Codice: [Seleziona]
<install>
    <sql>
        <file driver="mysql" charset="utf8">install.sql</file>
  </sql>
    </install>

e nel file install.sql   riporti quello che vuoi inserire nel db:
Codice: [Seleziona]
INSERT INTO `#__extensions` (`extension_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `manifest_cache`, `params`, `custom_data`, `system_data`, `checked_out`, `checked_out_time`, `ordering`, `state`) VALUES
(454, 'plg_system_stats', 'plugin', 'stats', 'system', 0, 1, 1, 0, '', '', '', '', 0, '0000-00-00 00:00:00', 0, 0);

ma qui le cose si complicano ed è importante fare molta attenzione :)

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #9 il: 16 Ago 2016, 22:44:48 »
Nel precedente xml cha avevo fatto il db veniva correttamente popolato aggiungendo le tabelle e togliendole in fase di disinstallazione ed anche reinstallando cancellava e ricreava le tabelle.  Quello che sbagliavo era che veniva creato un nuovo componente invece di aggiungere solo i file e cartelle nel componente primario. Domani provo e ti faccio sapere. Intanto Grazie.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #10 il: 20 Ago 2016, 08:19:09 »
Buongiorno, riprendo questo topic:

Con l'xml

Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<extension version="3.6" type="file" method="upgrade"> <fileset>
<files folder="apps-rubrica" target="components/com_datagrill/">
<folder>apps</folder>
</files>

<files folder="apps-rubrica" target="administrator/components/com_datagrill/">
<folder>sql</folder>
</files>
</fileset>

riesco a piazzare file e cartelle come voglio ma non riesco col db ad aggiungere tabelle con

Codice: [Seleziona]
<install>
<sql>
<file driver="mysql" charset="utf8">sql/rubrica.sql</file>
</sql>
</install>

Mi dice che non trova il file, anche se modifico il percorso come per i file e cartelle.

Invece prima con l'xml la sezione relativa al db
Codice: [Seleziona]
<extension type="component" version="3.6" method="upgrade">
<install>
<sql>
<file driver="mysql" charset="utf8">sql/rubrica.sql</file>
</sql>
</install>
mi popolava il db ma mi creava un componente separato invece di aggiungersi a quello esistente oltre a cancellarmi le voci menù admin del componente esistente.

Offline alexred

  • Fuori controllo
  • *
  • Post: 25672
  • Sesso: Maschio
  • Esperto in ozio relaxed
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #11 il: 20 Ago 2016, 09:25:00 »
puoi provare a richiamare uno script php nel manifest.xml  sempre prima di chiamare i file
<scriptfile>file.script.php</scriptfile>

e nel file.script.php metti le istruzioni per il database.

se ti scarichi il pacchetto di installazione della Ozio Gallery puoi "spulciare" come è configurato quel file.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere cartelle a estensione esistente da nuova estensione
« Risposta #12 il: 20 Ago 2016, 10:26:54 »
Grazie Alex

Mi sembra l'unica strada perché anche separando i pacchetti file e db non risolvo.

 



Web Design Bolzano Kreatif