6.0.0-git
2020-09-20

Diff for IngoMulti between 7 and 8

+ How to use two or more backends in Ingo.



++++ Method 1: PHP logic in backends.php



See



http://lists.horde.org/archives/ingo/Week-of-Mon-20070528/001345.html





++

++ Method 2: Multiple instances of Ingo



First copy your existing Ingo directory to a directory with the new name. Change to horde base directory, then run:

<code>

cp -R ingo imgo

cd imgo

</code>



Then</code>

Then replace all occurences of the "Ingo" string with a new name, we use "Imgo" as an example here.




If you have the {{replace}} command installed, that comes with the !MySQL clients, you can simply run:

<code>

replace Ingo Imgo ingo imgo INGO IMGO -- `find . -type f`

</code>



Otherwise you can for example run:

<code>

perlperl -p -i -e "s/Ingo/Imgo/g" * *

perl*
perl -p -i -e "s/ingo/imgo/g" * *

perl -p -i -e "s/INGO/IMGO/g" * *

cd lib

perl -p -i -e "s/Ingo/Imgo/g" * *

perl -p -i -e "s/ingo/imgo/g" * *

perl -p -i -e "s/INGO/IMGO/g" * *

cd Script

perl -p -i -eperl -p -i -e "s/Ingo/Imgo/g" * *

perl* *
perl -p -i -e "s/ingo/imgo/g" * *

perl*
perl -p -i -e "s/INGO/IMGO/g" * *

cd ..

cd Driver

perl -p -i -e "s/Ingo/Imgo/g" * *

perl -p -i -e "s/ingo/imgo/g" * *

perl -p -i -e "s/INGO/IMGO/g" * *

cd ..

cd Storage

perl -p -i -e "s/Ingo/Imgo/g" * *

perl -p -iperl -p -i -e "s/ingo/imgo/g" * *

perl -p* *
perl -p -i -e "s/INGO/IMGO/g" * *

cd
cd ../../

cd
cd templates

perl
perl -p -i -e "s/Ingo/Imgo/g" * *

perl
perl -p -i -e "s/ingo/imgo/g" * *

perl -p -i -e "s/INGO/IMGO/g" * *

cd rule

perlperl -p -i -e "s/Ingo/Imgo/g" * *

perl -p -i -e "s/ingo/imgo/g" * *

perl -p -i -e "s/INGO/IMGO/g" * *

cd ../../

cd lib/Driver

perl -p -i -e "s/Ingo/Imgo/g" * *

perl -p -i -e "s/ingo/imgo/g" * *

perl -p -i -e "s/INGO/IMGO/g" * *

cd ../../

</code>



There</code>

There may be aa better way of finding and replacing words in all the subfolders, please feel free to edit this page and put that method here.





Yes there is a better way. :)
<code>
# find ./ -type f -exec perl -pi -e 's/Ingo/Imgo/g' {} ;
# find ./ -type f -exec perl -pi -e 's/ingo/imgo/g' {} ;
# find ./ -type f -exec perl -pi -e 's/INGO/IMGO/g' {} ;
</code>


Copy Ingo's icon using the new name:

<code>

cp imgo/themes/graphics/ingo.png imgo/themes/graphics/imgo.png

</code>



Edit {{imgo/config/backend.php}} for the backend to use for the second ingo.



I
I have used imap in the first ingo and procmail in imgo.



Edit {{horde/config/registry.php}} and add the following below ingo:

<code type="php">

$this->applications['imgo'] = array(

    'fileroot' => dirname(__FILE__) . '/../imgo',

    'webroot' => $this->applications['horde']['webroot'] . '/imgo',

    'name' => _("Mail Actions"),

    'status' => 'active',

    'menu_parent' => 'imp'

);

</code>



Now you would be able to use two filter backends. In case you want more, you can always make one more copy of ingo.



Jigish