Joomla "JInstaller: :Install: File does not exist" error during extension update - joomla

I build a Joomla 3.x extension : https://github.com/Sagenda/joomla/
When I use the Joomla internal update system, I got this error :
JInstaller: :Install: File does not exist /home/synergie/public_html/synergie/contao/joomla30/tmp/install_5bd443ecad85c/joomla-0.7.1/ mod_sagenda_calendar.xml
Module %s: Could not copy files from the source.
How to I correct this? Thanks

You have added extra spaces in between the filename tags so filenames became different. I have given the corrected one below;
<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.8.13" client="site" method="upgrade">
<name>Sagenda booking and scheduling calendar</name>
<author>Iteration.info SARL</author>
<version>0.7.1</version>
<description>A Booking Calendar for your Joomla Website</description>
<files>
<filename>mod_sagenda_calendar.xml</filename>
<filename>mod_sagenda_calendar_update.xml</filename>
<filename module="mod_sagenda_calendar">mod_sagenda_calendar.php</filename>
<filename>index.html</filename>
<filename>helper.php</filename>
<folder>mashape</folder>
<folder>tmpl</folder>
</files>
<config>
<fields name="params">
<fieldset name="basic">
<field name="sagendaToken" required="true" type="text" label="Token" description="Please paste here the token that you can found on your dashboard : https://sagenda.net/Dashboard" size="200" default="" />
<field name="sagendaWeekStartsOn" type="list" label="Week start on" description="Please select which day your week should start on your calendar." size="200" default="1">
<option value="0">
Sunday
</option>
<option value="1">
Monday
</option>
<option value="2">
Tuesday
</option>
<option value="3">
Wednesday
</option>
<option value="4">
Thursday
</option>
<option value="5">
Friday
</option>
<option value="6">
Saturday
</option>
</field>
<field name="sagendaDateFormat" type="text" label="Date format" description="Define the format of date you want, <br/> YYYY-MM-DD for 1981-10-25 <br/> DD.MM.YY for 25.10.1981" size="200" default="DD MMMM YYYY" required="true" hint="Please enter a format" />
<field name="sagendaTimeFormat" type="text" label="Time format" description="Define the format of time you want, <br/> HH:mm for 18:00<br/> hh:mm A for 06:00 PM" size="200" required="true" default="HH:mm" hint="Please enter a format" />
<field name="note11" type="note" label="You will find the complete list of possible date and time format here : <a href='https://momentjs.com/docs/#/displaying/' target='blank'>https://momentjs.com/docs/#/displaying/</a> " class="alert alert-info"/>
</fieldset>
</fields>
</config>
<updateservers>
<server type="extension" name="mod_sagenda_calendar">
https://raw.githubusercontent.com/Sagenda/joomla/master/mod_sagenda_calendar_update.xml
</server>
</updateservers>
</extension>

Related

Joomla4 : how to set parameters in an extension?

I have developed a Joomla3 extension and I try to run in in Joomla4.1
In my XML file:
<extension version="3.1" type="plugin" group="content" method="upgrade">
<config>
<fields name="params">
<fieldset name="basic">
<field name="webmasterid" type="text" default="" label="Enter webmasterid"/>
<field name="password" type="password" default="" label="Enter Password"/>
</fieldset>
</fields>
</config>
But I don't see any way from my /administrator/ panel where I can set these 2 params:
webmasterid, password
What is the correct way to have them displayed in /administrator/ panel ?
(the plugin still works correctly, but I have to set these values directly in my plugin code)

geoserver returns black image on aerials

I am trying to upload aerial photos to geoserver to be shown as background. But everytime the image is black instead of detailed satellite image. Also tried on single tif files, but same result. Anybody have experience with this issue and know a solution?
I use ImageMosaic as plugin to upload the tifs.
This is the result of gdalinfo:
C:\Program Files\QGIS 3.8\bin>gdalinfo --format GTIFF D:\tile-20000-380000.tif
Format Details:
Short Name: GTiff
Long Name: GeoTIFF
Supports: Raster
Extensions: tif tiff
Mime Type: image/tiff
Help Topic: frmt_gtiff.html
Supports: Subdatasets
Supports: Open() - Open existing dataset.
Supports: Create() - Create writable dataset.
Supports: CreateCopy() - Create dataset by copying another.
Supports: Virtual IO - eg. /vsimem/
Creation Datatypes: Byte UInt16 Int16 UInt32 Int32 Float32 Float64 CInt16 CInt32 CFloat32 CFloat64
<CreationOptionList>
<Option name="COMPRESS" type="string-select">
<Value>NONE</Value>
<Value>LZW</Value>
<Value>PACKBITS</Value>
<Value>JPEG</Value>
<Value>CCITTRLE</Value>
<Value>CCITTFAX3</Value>
<Value>CCITTFAX4</Value>
<Value>DEFLATE</Value>
<Value>LZMA</Value>
<Value>ZSTD</Value>
<Value>WEBP</Value>
<Value>LERC</Value>
<Value>LERC_DEFLATE</Value>
<Value>LERC_ZSTD</Value>
</Option>
<Option name="PREDICTOR" type="int" description="Predictor Type (1=default, 2=horizontal differencing, 3=floating point prediction)" />
<Option name="DISCARD_LSB" type="string" description="Number of least-significant bits to set to clear as a single value or comma-separated list of values for per-band values" />
<Option name="JPEG_QUALITY" type="int" description="JPEG quality 1-100" default="75" />
<Option name="JPEGTABLESMODE" type="int" description="Content of JPEGTABLES tag. 0=no JPEGTABLES tag, 1=Quantization tables only, 2=Huffman tables only, 3=Both" default="1" />
<Option name="ZLEVEL" type="int" description="DEFLATE compression level 1-9" default="6" />
<Option name="LZMA_PRESET" type="int" description="LZMA compression level 0(fast)-9(slow)" default="6" />
<Option name="ZSTD_LEVEL" type="int" description="ZSTD compression level 1(fast)-22(slow)" default="9" />
<Option name="MAX_Z_ERROR" type="float" description="Maximum error for LERC compression" default="0" />
<Option name="WEBP_LOSSLESS" type="boolean" description="Whether lossless compression should be used" default="FALSE" />
<Option name="WEBP_LEVEL" type="int" description="WEBP quality level. Low values result in higher compression ratios" default="75" />
<Option name="NUM_THREADS" type="string" description="Number of worker threads for compression. Can be set to ALL_CPUS" default="1" />
<Option name="NBITS" type="int" description="BITS for sub-byte files (1-7), sub-uint16 (9-15), sub-uint32 (17-31), or float32 (16)" />
<Option name="INTERLEAVE" type="string-select" default="PIXEL">
<Value>BAND</Value>
<Value>PIXEL</Value>
</Option>
<Option name="TILED" type="boolean" description="Switch to tiled format" />
<Option name="TFW" type="boolean" description="Write out world file" />
<Option name="RPB" type="boolean" description="Write out .RPB (RPC) file" />
<Option name="RPCTXT" type="boolean" description="Write out _RPC.TXT file" />
<Option name="BLOCKXSIZE" type="int" description="Tile Width" />
<Option name="BLOCKYSIZE" type="int" description="Tile/Strip Height" />
<Option name="PHOTOMETRIC" type="string-select">
<Value>MINISBLACK</Value>
<Value>MINISWHITE</Value>
<Value>PALETTE</Value>
<Value>RGB</Value>
<Value>CMYK</Value>
<Value>YCBCR</Value>
<Value>CIELAB</Value>
<Value>ICCLAB</Value>
<Value>ITULAB</Value>
</Option>
<Option name="SPARSE_OK" type="boolean" description="Should empty blocks be omitted on disk?" default="FALSE" />
<Option name="ALPHA" type="string-select" description="Mark first extrasample as being alpha">
<Value>NON-PREMULTIPLIED</Value>
<Value>PREMULTIPLIED</Value>
<Value>UNSPECIFIED</Value>
<Value aliasOf="NON-PREMULTIPLIED">YES</Value>
<Value aliasOf="UNSPECIFIED">NO</Value>
</Option>
<Option name="PROFILE" type="string-select" default="GDALGeoTIFF">
<Value>GDALGeoTIFF</Value>
<Value>GeoTIFF</Value>
<Value>BASELINE</Value>
</Option>
<Option name="PIXELTYPE" type="string-select">
<Value>DEFAULT</Value>
<Value>SIGNEDBYTE</Value>
</Option>
<Option name="BIGTIFF" type="string-select" description="Force creation of BigTIFF file">
<Value>YES</Value>
<Value>NO</Value>
<Value>IF_NEEDED</Value>
<Value>IF_SAFER</Value>
</Option>
<Option name="ENDIANNESS" type="string-select" default="NATIVE" description="Force endianness of created file. For DEBUG purpose mostly">
<Value>NATIVE</Value>
<Value>INVERTED</Value>
<Value>LITTLE</Value>
<Value>BIG</Value>
</Option>
<Option name="COPY_SRC_OVERVIEWS" type="boolean" default="NO" description="Force copy of overviews of source dataset (CreateCopy())" />
<Option name="SOURCE_ICC_PROFILE" type="string" description="ICC profile" />
<Option name="SOURCE_PRIMARIES_RED" type="string" description="x,y,1.0 (xyY) red chromaticity" />
<Option name="SOURCE_PRIMARIES_GREEN" type="string" description="x,y,1.0 (xyY) green chromaticity" />
<Option name="SOURCE_PRIMARIES_BLUE" type="string" description="x,y,1.0 (xyY) blue chromaticity" />
<Option name="SOURCE_WHITEPOINT" type="string" description="x,y,1.0 (xyY) whitepoint" />
<Option name="TIFFTAG_TRANSFERFUNCTION_RED" type="string" description="Transfer function for red" />
<Option name="TIFFTAG_TRANSFERFUNCTION_GREEN" type="string" description="Transfer function for green" />
<Option name="TIFFTAG_TRANSFERFUNCTION_BLUE" type="string" description="Transfer function for blue" />
<Option name="TIFFTAG_TRANSFERRANGE_BLACK" type="string" description="Transfer range for black" />
<Option name="TIFFTAG_TRANSFERRANGE_WHITE" type="string" description="Transfer range for white" />
<Option name="STREAMABLE_OUTPUT" type="boolean" default="NO" description="Enforce a mode compatible with a streamable file" />
<Option name="GEOTIFF_KEYS_FLAVOR" type="string-select" default="STANDARD" description="Which flavor of GeoTIFF keys must be used">
<Value>STANDARD</Value>
<Value>ESRI_PE</Value>
</Option>
</CreationOptionList>
<OpenOptionList>
<Option name="NUM_THREADS" type="string" description="Number of worker threads for compression. Can be set to ALL_CPUS" default="1" />
<Option name="GEOTIFF_KEYS_FLAVOR" type="string-select" default="STANDARD" description="Which flavor of GeoTIFF keys must be used (for writing)">
<Value>STANDARD</Value>
<Value>ESRI_PE</Value>
</Option>
<Option name="GEOREF_SOURCES" type="string" description="Comma separated list made with values INTERNAL/TABFILE/WORLDFILE/PAM/NONE that describe the priority order for georeferencing" default="PAM,INTERNAL,TABFILE,WORLDFILE" />
<Option name="SPARSE_OK" type="boolean" description="Should empty blocks be omitted on disk?" default="FALSE" />
</OpenOptionList>
Other metadata items:
LIBTIFF=INTERNAL
We recently found out the compression type was wrong. WEBP instead of Geotiff. It will be resolved.

Joomla - Convenient Template Upgrades

I recently migrated a website from Jekyll to Joomla (currently 3.9). Therefore I made an own Joomla Template. It is already in production, but of course it gets regular updates. I use a quite standard development/release approach, versioning like 1.1, 1.2, 1.2.1 and so on. These numbers are always up to date in templateDetails.xml. Nothing special so far. But this has some very inconvenient issues:
Every time I upgrade the template I have to set a different template/style as default, uninstall the old version, upload and install the current version and set its style as new default. Is there really no better way for upgrading a template, especially if it has an higher version?
For each update all my configurations of the style get lost. I already put the defaults accordingly in the templateDetails.xml, so I don't have to do this on every upgrade. But I can imagine this may cause problems when I change the configuration in the back end without updating the template. This would result in potential configuration loss after an upgrade. Can I keep any style configuration when upgrading?
Third, I'm thinking of using different styles for different pages on my website. These would also get lost when upgrading, so I'd have to redefine them regularly. I also would have to reconfigure all pages using these styles to use them again. Is there a way to define several styles in templateDetails.xml, so they are stored in my zip file?
Edit: As Irfan asked for, here is my current templateDetails.xml
<?xml version="1.0" encoding="utf-8"?>
<extension version="3.8" type="template">
<name>####</name>
<creationDate>2018-11-03</creationDate>
<author>####</author>
<authorEmail>#########.de</authorEmail>
<authorUrl>https://###.##.##</authorUrl>
<copyright>SV FOO BAR e.V.</copyright>
<license>TBA</license>
<version>0.4.0-SNAPSHOT</version>
<description>Joomla-Template fuer die Vereinshomepage des SV FOO BAR e.V.</description>
<files>
<filename>index.php</filename>
<filename>templateDetails.xml</filename>
<filename>template_preview.png</filename>
<filename>template_thumbnail.png</filename>
<filename>main.css</filename>
<filename>favicon.ico</filename>
<folder>images</folder>
<folder>html</folder>
<folder>language</folder>
<folder>js</folder>
</files>
<positions>
<position>breadcrumb</position>
<position>left</position>
<position>right</position>
<position>footer</position>
</positions>
<languages folder="language">
<language tag="de-DE">de-DE/de-DE.tpl_svFOOBAR.ini</language>
</languages>
<config>
<fields name="params">
<fieldset name="advanced">
<field
name="sitedescription"
type="text"
label="JGLOBAL_DESCRIPTION"
description="JGLOBAL_SUBHEADING_DESC"
default="This is my slogan"
filter="string" />
<field
name="copyright-from"
type="number"
default="2005"
label="TPL_SVFOOBAR_FIELDS_LABEL_COPYRIGHT_FROM"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COPYRIGHT_FROM"
step="1"
required="true" />
</fieldset>
<fieldset name="cookieconsent">
<field
type="spacer"
name="cookieconsent_separator_general"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_SEPARATOR_general" />
<field
name="cookieconsent_activate"
type="checkbox"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_ACTIVATE"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_ACTIVATE"
checked="1"
value="1" />
<field
name="cookieconsent_position"
type="list"
default="top"
required="true"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_POSITION">
<option value="top">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_BANNER_TOP</option>
<option value="top-pushdown">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_BANNER_TOP_PUSHDOWN</option>
<option value="bottom">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_BANNER_BOTTOM</option>
<option value="bottom-left">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_FLOATING_LEFT</option>
<option value="bottom-right">TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_POSITION_FLOATING_RIGHT</option>
</field>
<field
type="spacer"
name="cookieconsent_separator_colors"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_SEPARATOR_COLORS" />
<field
name="cookieconsent_color_banner"
required="true"
type="color"
default="#efefef"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BANNER"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BANNER" />
<field
name="cookieconsent_color_button"
required="true"
type="color"
default="#8ec760"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BUTTON"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BUTTON" />
<field
name="cookieconsent_color_banner_text"
required="true"
type="color"
default="#404040"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BANNER_TEXT"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BANNER_TEXT" />
<field
name="cookieconsent_color_button_text"
required="true"
type="color"
default="#ffffff"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_COLOR_BUTTON_TEXT"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_COLOR_BUTTON_TEXT" />
<field
type="spacer"
name="cookieconsent_separator_texts"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_SEPARATOR_TEXTS" />
<field
name="cookieconsent_learnmore_text"
type="text"
default="Mehr erfahren"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_LEARNMORE_TEXT"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_LEARNMORE_TEXT"
filter="string" />
<field
name="cookieconsent_learnmore_link"
type="url"
default="impressum-datenschutz"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_LEARNMORE_LINK"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_LEARNMORE_LINK" />
<field
name="cookieconsent_message"
type="textarea"
default="Um die Funktionalität und den Inhalt der Website zu optimieren, verwenden wir Cookies. Durch die Nutzung unserer Website stimmst du der Verwendung von Cookies zu."
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_MESSAGE"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_MESSAGE"
rows="10"
cols="5" />
<field
name="cookieconsent_dismiss_button"
type="text"
default="Verstanden"
label="TPL_SVFOOBAR_FIELDS_LABEL_COOKIECONSENT_DISMISS_BUTTON"
description="TPL_SVFOOBAR_FIELDS_DESCRIPTION_COOKIECONSENT_DISMISS_BUTTON" />
</fieldset>
</fields>
</config>
</extension>
Try updating the extension tag to include a method of upgrade:
<extension version="3.8" type="template" method="upgrade" client="site">

Why doesn't this XML disable my joomla radio button?

<field name="name" type="radio"
class="btn-group"
label="label"
description="description"
default="0"
disabled = "true"
filter="raw">
<option value="0">No</option>
<option value="1">Yes</option>
</field>
How are you disable radio button with xml ?
One thing is that the disabled feature only works on option level, not for the whole field.
So you would need to set it like this:
<field name="name" type="radio"
class="btn-group"
label="label"
description="description"
default="0"
filter="raw">
<option value="0" disabled="true">No</option>
<option value="1" disabled="true">Yes</option>
</field>
However it doesn't work well together with the btn-group class. This is probably a Bootstrap bug.

Joomla: what is wrong with my plugins XML - config-section is not shown?

I am trying to upgrade an old mambot. It's possible that there are still bugs in the code, but even the config-screen does not show up, only the basic pi-parameters are there, none of mine. What am I missing?
<?xml version="1.0" encoding="iso-8859-1" ?>
<extension type="plugin" group="content" version="1.6" method="upgrade">
<name>mb_append</name>
<creationDate>June 08, 2013</creationDate>
<version>1.1</version>
<author>Michael Baas</author>
<authorName>Michael Baas</authorName>
<authorEmail>michael#mbaas.de</authorEmail>
<authorUrl>mbaas.de</authorUrl>
<description>
<![CDATA[
<p>Very simple bot to append constant <i>(configureable)</i> text (i.e. <br>-tags!) to the
article and the output. 'Output' includes the "ReadMore..."-Link (but not the
navigation). (However, if you absolutely
need this, let me know and I may implement it, but it's a bit tricky, so I would only
do this if somebody can convince me he needs it ;)</p>
<p>In case you want to insert multiple texts between the output of other plugins etc., you can
create further instances of this plugin by simply renaming the PHP and XML in the
installation-ZIP AND by adjusting the names in the XML and then just install your
'new' mambot! :)</p>
<p><b>Links</b> <i>(automatically open in new window)</i>:
<ul>
<li>Michael's Homepage
</ul>
]]>
</description>
<copyright>(c) 2013 Michael Baas</copyright>
<license>GPL</license>
<files>
<filename plugin="mb_append">mb_append.php</filename>
</files>
<config>
<fields name="config">
<fieldset name="basic">
<field name="txt_app" type="text" default="" label="Append 2 article" description="The text you want to append to the article" size="40" />
<field name="txt" type="text" default="" label="Append 2 output" description="The text you want to append to the output" size="40"/>
<field name="look4txt" type="radio" value="1" label="Check if txt already there?" description="Check if the specified text has already been added to the text and do not add again if this option is activated.">
<option value="0">No</option>
<option value="1">Yes</option>
</field>
<field name="excat" type="text" default="" label="Categories to EXCLUDE" description="Comma-separated list of IDs" size="40"/>
<field name="exid" type="text" default="" label="Article-IDs to EXCLUDE" description="Comma-separated list of IDs OR a 'less-than'-sign (arrow-left) followed by ONE number to exclude all IDs smaller than thew number you specified!" size="40" />
</fieldset>
</fields>
</config>
</extension>
Change the <fields name="config"> to <fields name="params">. This might work then.

Resources