';
+ echo '
';
do_meta_boxes(get_current_screen()->id, 'normal', null );
echo '
';
+ echo '
';
+ do_meta_boxes(get_current_screen()->id, 'side', null );
+ echo '
';
echo '
';
echo '
';
$this->generateAccordionBoxes($pFieldsCollection);
@@ -169,7 +174,10 @@ public function generatePageMainTitle($subTitle)
private function generateMetaBoxes()
{
$pFormSimilarEstates = $this->getFormModelByGroupSlug(self::FORM_VIEW_SIMILAR_ESTATES);
- $this->createMetaBoxByForm($pFormSimilarEstates, 'normal');
+ $this->createMetaBoxByForm($pFormSimilarEstates, 'side');
+
+ $pFormPictureTypes = $this->getFormModelByGroupSlug(self::FORM_VIEW_PICTURE_TYPES);
+ $this->createMetaBoxByForm($pFormPictureTypes, 'normal');
}
/**
@@ -193,7 +201,6 @@ protected function generateAccordionBoxes(FieldsCollection $pFieldsCollection)
*/
protected function buildForms()
{
- add_screen_option('layout_columns', array('max' => 2, 'default' => 2) );
$pFormModelBuilder = new FormModelBuilderSimilarEstateSettings();
$pFormModel = $pFormModelBuilder->generate($this->getPageSlug());
$this->addFormModel($pFormModel);
@@ -222,6 +229,14 @@ protected function buildForms()
$pFormModelSimilarEstates->addInputModel($pInputModelShowPriceOnRequest);
$this->addFormModel($pFormModelSimilarEstates);
+ $pInputModelSimilarEstatesPictureTypes = $pFormModelBuilder->createInputModelPictureTypes();
+ $pFormModelPictureTypes = new FormModel();
+ $pFormModelPictureTypes->setPageSlug($this->getPageSlug());
+ $pFormModelPictureTypes->setGroupSlug(self::FORM_VIEW_PICTURE_TYPES);
+ $pFormModelPictureTypes->setLabel(__('Photo Types', 'onoffice-for-wp-websites'));
+ $pFormModelPictureTypes->addInputModel($pInputModelSimilarEstatesPictureTypes);
+ $this->addFormModel($pFormModelPictureTypes);
+
$pFieldsCollection = $this->readAllFields();
$pFieldsCollectionConverter = $this->getContainer()->get(FieldsCollectionToContentFieldLabelArrayConverter::class);
$fieldsEstate = $pFieldsCollectionConverter->convert($pFieldsCollection, onOfficeSDK::MODULE_ESTATE);
@@ -244,7 +259,6 @@ private function readAllFields(): FieldsCollection
(new FieldModuleCollectionDecoratorReadAddress(new FieldsCollection()))));
$this->getContainer()->get(FieldsCollectionBuilderShort::class)
->addFieldsAddressEstate($pFieldsCollection);
- $pFieldsCollection->removeFieldByModuleAndName(onOfficeSDK::MODULE_ESTATE, 'preisAufAnfrage');
return $pFieldsCollection;
}
diff --git a/plugin/Gui/Table/EstateListTable.php b/plugin/Gui/Table/EstateListTable.php
index 15324edfe..93ead5ad2 100644
--- a/plugin/Gui/Table/EstateListTable.php
+++ b/plugin/Gui/Table/EstateListTable.php
@@ -139,7 +139,7 @@ public function prepare_items()
];
$hidden = ['ID', 'filterId'];
- $sortable = [];
+ $sortable = $this->get_sortable_columns();
$this->_column_headers = [$columns, $hidden, $sortable,
$this->get_default_primary_column_name()];
@@ -147,6 +147,20 @@ public function prepare_items()
$this->fillData();
}
+ /**
+ *
+ */
+
+ public function get_sortable_columns()
+ {
+ $columns = array(
+ 'name' => ['name', false],
+ 'template' => ['template', false],
+ 'list_type' => ['list_type', false],
+ );
+ return $columns;
+ }
+
/**
*
* @param object $pItem
diff --git a/plugin/Installer/DatabaseChanges.php b/plugin/Installer/DatabaseChanges.php
index 265e3a2af..f1e1f9872 100644
--- a/plugin/Installer/DatabaseChanges.php
+++ b/plugin/Installer/DatabaseChanges.php
@@ -32,6 +32,7 @@
use onOffice\WPlugin\DataView\DataDetailViewHandler;
use onOffice\WPlugin\Model\FormModelBuilder\FormModelBuilderEstateDetailSettings;
use onOffice\WPlugin\Template\TemplateCall;
+use onOffice\WPlugin\Types\ImageTypes;
use onOffice\WPlugin\Utility\__String;
use onOffice\WPlugin\DataView\DataDetailView;
use onOffice\WPlugin\DataView\DataSimilarView;
@@ -44,7 +45,7 @@
class DatabaseChanges implements DatabaseChangesInterface
{
/** @var int */
- const MAX_VERSION = 39;
+ const MAX_VERSION = 41;
/** @var WPOptionWrapperBase */
private $_pWpOption;
@@ -287,6 +288,16 @@ public function install()
$dbversion = 39;
}
+ if ( $dbversion == 39 ) {
+ dbDelta($this->getCreateQueryListviews());
+ $dbversion = 40;
+ }
+
+ if ( $dbversion == 40 ) {
+ $this->updateDefaultPictureTypesForSimilarEstate();
+ $dbversion = 41;
+ }
+
$this->_pWpOption->updateOption( 'oo_plugin_db_version', $dbversion, true );
}
@@ -377,6 +388,7 @@ private function getCreateQueryListviews()
`sortByUserDefinedDirection` ENUM('0','1') NOT NULL DEFAULT '0' COMMENT 'Formulierung der Sortierrichtung: 0 means highestFirst/lowestFirt, 1 means descending/ascending',
`show_reference_estate` tinyint(1) NOT NULL DEFAULT '0',
`page_shortcode` tinytext NOT NULL,
+ `show_map` tinyint(1) NOT NULL DEFAULT '1',
`show_price_on_request` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`listview_id`),
UNIQUE KEY `name` (`name`)
@@ -1030,6 +1042,18 @@ public function checkAllPageIdsHaveDetailShortCode()
}
+ /**
+ *
+ */
+ private function updateDefaultPictureTypesForSimilarEstate()
+ {
+ $pDataSimilarViewOptions = get_option('onoffice-similar-estates-settings-view');
+ if(!empty($pDataSimilarViewOptions) && empty($pDataSimilarViewOptions->getDataViewSimilarEstates()->getPictureTypes())){
+ $pDataSimilarViewOptions->getDataViewSimilarEstates()->setPictureTypes([ImageTypes::TITLE]);
+ $this->_pWpOption->updateOption('onoffice-similar-estates-settings-view', $pDataSimilarViewOptions);
+ }
+ }
+
/**
* @return void
*/
diff --git a/plugin/Model/FormModelBuilder/FormModelBuilderDBAddress.php b/plugin/Model/FormModelBuilder/FormModelBuilderDBAddress.php
index c0ea425e4..bd0ff484d 100644
--- a/plugin/Model/FormModelBuilder/FormModelBuilderDBAddress.php
+++ b/plugin/Model/FormModelBuilder/FormModelBuilderDBAddress.php
@@ -241,7 +241,7 @@ public function getInputModelIsFilterable()
{
$pInputModelFactoryConfig = new InputModelDBFactoryConfigAddress();
$pInputModelFactory = new InputModelDBFactory($pInputModelFactoryConfig);
- $label = __('Filterable', 'onoffice-for-wp-websites');
+ $label = __('Show in search', 'onoffice-for-wp-websites');
$type = InputModelDBFactoryConfigEstate::INPUT_FIELD_FILTERABLE;
/* @var $pInputModel InputModelDB */
$pInputModel = $pInputModelFactory->create($type, $label, true);
diff --git a/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateListSettings.php b/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateListSettings.php
index 31cc78324..5162e110b 100644
--- a/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateListSettings.php
+++ b/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateListSettings.php
@@ -213,7 +213,7 @@ public function getInputModelIsFilterable()
{
$pInputModelFactoryConfig = new InputModelDBFactoryConfigEstate();
$pInputModelFactory = new InputModelDBFactory($pInputModelFactoryConfig);
- $label = __('Filterable', 'onoffice-for-wp-websites');
+ $label = __('Show in search', 'onoffice-for-wp-websites');
$type = InputModelDBFactoryConfigEstate::INPUT_FIELD_FILTERABLE;
/* @var $pInputModel InputModelDB */
$pInputModel = $pInputModelFactory->create($type, $label, true);
@@ -234,7 +234,7 @@ public function getInputModelAvailableOptions()
{
$pInputModelFactoryConfig = new InputModelDBFactoryConfigEstate();
$pInputModelFactory = new InputModelDBFactory($pInputModelFactoryConfig);
- $label = __('Reduce values according to selected filter', 'onoffice-for-wp-websites');
+ $label = __('Hide empty values from onOffice enterprise', 'onoffice-for-wp-websites');
$type = InputModelDBFactoryConfigEstate::INPUT_FIELD_AVAILABLE_OPTIONS;
/* @var $pInputModel InputModelDB */
$pInputModel = $pInputModelFactory->create($type, $label, true);
@@ -751,6 +751,25 @@ public function getInputModelCustomLabelLanguageSwitch(): InputModelDB
return $pInputModel;
}
+ /**
+ *
+ * @return InputModelDB
+ *
+ */
+
+ public function createInputModelShowMap()
+ {
+ $labelShowMap = __('Show estate map', 'onoffice-for-wp-websites');
+
+ $pInputModelShowMap = $this->getInputModelDBFactory()->create
+ (InputModelDBFactory::INPUT_SHOW_MAP, $labelShowMap);
+ $pInputModelShowMap->setHtmlType(InputModelOption::HTML_TYPE_CHECKBOX);
+ $pInputModelShowMap->setValue($this->getValue('show_map') ?? true);
+ $pInputModelShowMap->setValuesAvailable(1);
+
+ return $pInputModelShowMap;
+ }
+
/**
*
* @return InputModelDB
diff --git a/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateUnitListSettings.php b/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateUnitListSettings.php
index 0776e7acc..924192f63 100644
--- a/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateUnitListSettings.php
+++ b/plugin/Model/FormModelBuilder/FormModelBuilderDBEstateUnitListSettings.php
@@ -98,8 +98,8 @@ public function generate(string $pageSlug, $listViewId = null): FormModel
}
/**
- * In unit list settings, the field options "Filterable", "Hidden"
- * and "Reduce values according to selected filter" has been removed.
+ * In unit list settings, the field options "Show in search", "Hidden"
+ * and "Hide empty values from onOffice enterprise" has been removed.
* @param string $module
* @param string $htmlType
* @param bool $isShow
diff --git a/plugin/Model/FormModelBuilder/FormModelBuilderDBForm.php b/plugin/Model/FormModelBuilder/FormModelBuilderDBForm.php
index 39b934459..34e258f7a 100644
--- a/plugin/Model/FormModelBuilder/FormModelBuilderDBForm.php
+++ b/plugin/Model/FormModelBuilder/FormModelBuilderDBForm.php
@@ -457,7 +457,7 @@ public function getInputModelIsAvailableOptions()
{
$pInputModelFactoryConfig = new InputModelDBFactoryConfigForm();
$pInputModelFactory = new InputModelDBFactory($pInputModelFactoryConfig);
- $label = __('Reduce values according to selected filter', 'onoffice-for-wp-websites');
+ $label = __('Hide empty values from onOffice enterprise', 'onoffice-for-wp-websites');
$type = InputModelDBFactoryConfigForm::INPUT_FORM_AVAILABLE_OPTIONS;
/* @var $pInputModel InputModelDB */
$pInputModel = $pInputModelFactory->create($type, $label, true);
diff --git a/plugin/Model/FormModelBuilder/FormModelBuilderSimilarEstateSettings.php b/plugin/Model/FormModelBuilder/FormModelBuilderSimilarEstateSettings.php
index f4ce5f564..b9dd749d4 100644
--- a/plugin/Model/FormModelBuilder/FormModelBuilderSimilarEstateSettings.php
+++ b/plugin/Model/FormModelBuilder/FormModelBuilderSimilarEstateSettings.php
@@ -39,6 +39,7 @@
use onOffice\WPlugin\Model\InputModelOption;
use onOffice\WPlugin\Types\FieldsCollection;
use onOffice\WPlugin\Field\Collection\FieldsCollectionBuilderShort;
+use onOffice\WPlugin\Types\ImageTypes;
use function __;
use onOffice\WPlugin\WP\InstalledLanguageReader;
use onOffice\WPlugin\Model\InputModelBuilder\InputModelBuilderCustomLabel;
@@ -431,6 +432,41 @@ public function getInputModelCustomLabelLanguageSwitch(): InputModelDB
return $pInputModel;
}
+ /**
+ *
+ * @return InputModelDB
+ *
+ */
+
+ public function createInputModelPictureTypes()
+ {
+ $pDataViewSimilarEstates = $this->_pDataSimilarView->getDataViewSimilarEstates();
+ $allPictureTypes = ImageTypes::getAllImageTypesTranslated();
+
+ $pInputModelPictureTypes = $this->_pInputModelSimilarViewFactory->create
+ (InputModelOptionFactorySimilarView::INPUT_PICTURE_TYPE, null, true);
+ $pInputModelPictureTypes->setHtmlType(InputModelOption::HTML_TYPE_CHECKBOX);
+ $pInputModelPictureTypes->setValuesAvailable($allPictureTypes);
+ $pictureTypes = $pDataViewSimilarEstates->getPictureTypes();
+
+ if (null == $pictureTypes)
+ {
+ $pictureTypes = array(
+ 'Titelbild',
+ 'Foto',
+ 'Foto_gross',
+ 'Panorama',
+ 'Grundriss',
+ 'Lageplan',
+ 'Epass_Skala',
+ );
+ }
+
+ $pInputModelPictureTypes->setValue($pictureTypes);
+
+ return $pInputModelPictureTypes;
+ }
+
/**
*
* @return InputModelDB
diff --git a/plugin/Model/InputModel/InputModelDBFactory.php b/plugin/Model/InputModel/InputModelDBFactory.php
index 48cbaec2f..bc223090f 100644
--- a/plugin/Model/InputModel/InputModelDBFactory.php
+++ b/plugin/Model/InputModel/InputModelDBFactory.php
@@ -87,6 +87,8 @@ class InputModelDBFactory
/** */
const INPUT_FIELD_CONFIG = 'fieldConfig';
+ /** */
+ const INPUT_SHOW_MAP = 'showMap';
/** @var InputModelDBFactoryConfigBase */
private $_pInputModelDBFactoryConfig = null;
diff --git a/plugin/Model/InputModel/InputModelDBFactoryConfigEstate.php b/plugin/Model/InputModel/InputModelDBFactoryConfigEstate.php
index 85aaeba3e..149a177d3 100644
--- a/plugin/Model/InputModel/InputModelDBFactoryConfigEstate.php
+++ b/plugin/Model/InputModel/InputModelDBFactoryConfigEstate.php
@@ -122,6 +122,10 @@ class InputModelDBFactoryConfigEstate
self::KEY_TABLE => 'oo_plugin_listviews',
self::KEY_FIELD => 'show_price_on_request',
],
+ InputModelDBFactory::INPUT_SHOW_MAP => [
+ self::KEY_TABLE => 'oo_plugin_listviews',
+ self::KEY_FIELD => 'show_map',
+ ],
];
diff --git a/plugin/Model/InputModel/InputModelOptionFactorySimilarView.php b/plugin/Model/InputModel/InputModelOptionFactorySimilarView.php
index 23ef6a147..f03c0becf 100644
--- a/plugin/Model/InputModel/InputModelOptionFactorySimilarView.php
+++ b/plugin/Model/InputModel/InputModelOptionFactorySimilarView.php
@@ -70,6 +70,9 @@ class InputModelOptionFactorySimilarView
/** */
const KEY_TYPE = 'type';
+ /** */
+ const INPUT_PICTURE_TYPE = DataSimilarView::PICTURES;
+
/** @var string */
private $_optionGroup = null;
@@ -100,6 +103,9 @@ class InputModelOptionFactorySimilarView
self::INPUT_FIELD_ENABLE_SIMILAR_ESTATES => [
self::KEY_TYPE => InputModelOption::SETTING_TYPE_BOOLEAN,
],
+ self::INPUT_PICTURE_TYPE => [
+ self::KEY_TYPE => InputModelOption::SETTING_TYPE_STRING,
+ ],
self::INPUT_SHOW_PRICE_ON_REQUEST => [
self::KEY_TYPE => InputModelOption::SETTING_TYPE_BOOLEAN
]
diff --git a/plugin/Record/RecordManagerReadListViewEstate.php b/plugin/Record/RecordManagerReadListViewEstate.php
index cf02de83b..a9fcc288e 100644
--- a/plugin/Record/RecordManagerReadListViewEstate.php
+++ b/plugin/Record/RecordManagerReadListViewEstate.php
@@ -91,11 +91,14 @@ public function getRecordsSortedAlphabetically():array
{
$where .= "AND (name LIKE '%".esc_sql($_GET['search'])."%' OR template LIKE '%".esc_sql($_GET['search'])."%')";
}
+ $orderBy = ( ! empty($_GET['orderby'])) ? $_GET['orderby'] : 'name';
+ $order = ( ! empty($_GET['order'])) ? $_GET['order'] : 'asc';
+
$sql = "SELECT SQL_CALC_FOUND_ROWS {$columns}
FROM {$prefix}oo_plugin_listviews
{$join}
WHERE {$where}
- ORDER BY `name` ASC
+ ORDER BY `{$orderBy}` {$order}
LIMIT {$this->getOffset()}, {$this->getLimit()}";
$this->setFoundRows($pWpDb->get_results($sql, OBJECT));
diff --git a/plugin/ScriptLoader/ScriptLoaderGenericConfigurationDefault.php b/plugin/ScriptLoader/ScriptLoaderGenericConfigurationDefault.php
index c896cdcc9..a3d5eab7a 100644
--- a/plugin/ScriptLoader/ScriptLoaderGenericConfigurationDefault.php
+++ b/plugin/ScriptLoader/ScriptLoaderGenericConfigurationDefault.php
@@ -71,7 +71,7 @@ public function getScriptLoaderGenericConfiguration(): array
->setLoadInFooter(true),
(new IncludeFileModel($script, 'onoffice-form-preview', plugins_url('/js/onoffice-form-preview.js', $pluginPath)))
->setLoadInFooter(true),
- (new IncludeFileModel($script, 'onoffice-honeypot', plugins_url('/js/onoffice-honeypot.js', $pluginPath)))
+ (new IncludeFileModel($script, 'onoffice-prevent-double-form-submission', plugins_url('/js/onoffice-prevent-double-form-submission.js', $pluginPath)))
->setDependencies(['jquery'])
->setLoadInFooter(true),
@@ -117,6 +117,11 @@ public function getStyleUriByVersion($styleVersion): string
$onofficeCssStyleFilePath = get_stylesheet_directory() . '/onoffice-theme/templates/onoffice-style.css';
if (file_exists($onofficeCssStyleFilePath))
{
+ return get_stylesheet_directory_uri() . '/onoffice-theme/templates/onoffice-style.css';
+ }
+
+ $onofficeCssStyleFilePath = get_template_directory() . '/onoffice-theme/templates/onoffice-style.css';
+ if (file_exists($onofficeCssStyleFilePath)) {
return get_template_directory_uri() . '/onoffice-theme/templates/onoffice-style.css';
}
@@ -138,6 +143,8 @@ public function getOnOfficeStyleVersion()
. 'onoffice-personalized' );
$folderTemplates[ TemplateCall::TEMPLATE_FOLDER_THEME ] = glob( get_stylesheet_directory()
. '/onoffice-theme' );
+ $folderTemplates[ TemplateCall::TEMPLATE_FOLDER_PARENT_THEME ] = glob( get_template_directory()
+ . '/onoffice-theme' );
$defaultview = 'onoffice_defaultview';
$newstyle = 'onoffice_style';
@@ -148,6 +155,11 @@ public function getOnOfficeStyleVersion()
. '/onoffice-theme/templates/onoffice-style.css' ) )
? $newstyle
: $defaultview;
+ } elseif ( ! empty( $folderTemplates[ TemplateCall::TEMPLATE_FOLDER_PARENT_THEME ] ) ) {
+ $onofficeCssStyleVersion = ! empty( glob( get_template_directory()
+ . '/onoffice-theme/templates/onoffice-style.css' ) )
+ ? $newstyle
+ : $defaultview;
} elseif ( ! empty( $folderTemplates[ TemplateCall::TEMPLATE_FOLDER_PLUGIN ] ) ) {
$onofficeCssStyleVersion = ! empty( glob( plugin_dir_path( ONOFFICE_PLUGIN_DIR )
. 'onoffice-personalized/templates/onoffice-style.css' ) )
diff --git a/plugin/Template/TemplateCall.php b/plugin/Template/TemplateCall.php
index 40ddc5d3e..20b750269 100644
--- a/plugin/Template/TemplateCall.php
+++ b/plugin/Template/TemplateCall.php
@@ -69,6 +69,7 @@ public function getTemplatesFolderInfo()
const TEMPLATE_FOLDER_THEME = 'theme';
+ const TEMPLATE_FOLDER_PARENT_THEME = 'parent_theme';
/** @var array */
private $_templates = [];
diff --git a/plugin/ViewFieldModifier/EstateViewFieldModifierTypeEstateGeoBase.php b/plugin/ViewFieldModifier/EstateViewFieldModifierTypeEstateGeoBase.php
index 312d936d4..e2d781f25 100644
--- a/plugin/ViewFieldModifier/EstateViewFieldModifierTypeEstateGeoBase.php
+++ b/plugin/ViewFieldModifier/EstateViewFieldModifierTypeEstateGeoBase.php
@@ -97,8 +97,6 @@ protected function editViewFieldsForApiGeoPosition(array $viewFields): array
if ($pos !== false) {
unset($viewFields[$pos]);
- $viewFields []= 'breitengrad';
- $viewFields []= 'laengengrad';
}
return $viewFields;
diff --git a/readme.txt b/readme.txt
index bd536ff67..7b6cc3e61 100644
--- a/readme.txt
+++ b/readme.txt
@@ -2,9 +2,9 @@
Contributors: jayay, anniken1
Tags: real estate, onoffice
Requires at least: 4.6
-Tested up to: 6.1.1
+Tested up to: 6.3.1
Requires PHP: 7.3
-Stable tag: 4.11.1
+Stable tag: 4.14
License: AGPL 3.0
License URI: https://www.gnu.org/licenses/agpl-3.0.html
@@ -76,6 +76,67 @@ Start editing inside the `onoffice-personalized` folder.
== Changelog ==
+= 4.14 (2023-09-11) =
+
+**Added**
+
+* Property lists in the plugin backend are now sortable by name, template and type.
+
+**Changed**
+
+* Title tags and description tags that are too long will be shortened.
+* New address records of interested parties of a property are created with the same supervisor as the property.
+
+**Fixed**
+
+* The sending of e-mails when the send button has been pressed for several times.
+* Bug with invalid estate Ids.
+* Bug with onoffice-style.css when using a child theme.
+
+= 4.13 (2023-08-15) =
+
+**Added**
+
+* All types of images for similar properties.
+
+**Changed**
+
+* Hide coordinates of property if "Geo range search" is on.
+
+**Fixed**
+
+* Display of "Price on request" in custom templates.
+* Displaying the fax number in the contact details.
+* Sending property data by email using the owner form.
+* Text of the agreed privacy policy in emails.
+
+= 4.12.1 (2023-08-03) =
+
+**Fixed**
+
+* Error if "Preis auf Anfrage" is deactivated in onOffice enterprise
+
+= 4.12 (2023-08-02) =
+
+**Added**
+
+* An option to toggle visibility of the map for each estate list.
+* 'Price on request' option to hide prices in lists and detail view.
+
+**Changed**
+
+* Renaming a notification if name of estate list, form, etc. is empty while saving.
+* Renaming the options to add fields to the search and filter.
+
+**Fixed**
+
+* The honeypot javascript is always being loaded even when disabled.
+* Customizing labels of message field in forms doesn't work.
+
+**Removed**
+
+* Faulty options for the admistration view.
+
= 4.11.1 (2023-05-24) =
**Fixed**
diff --git a/templates.dist/form/applicantform.php b/templates.dist/form/applicantform.php
index c3dcc0e2e..10d25cfc6 100644
--- a/templates.dist/form/applicantform.php
+++ b/templates.dist/form/applicantform.php
@@ -21,7 +21,7 @@
include(ONOFFICE_PLUGIN_DIR.'/templates.dist/fields.php');
?>
-