Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
lutece
lutece-form-plugin-forms
Commits
6161e0b0
Commit
6161e0b0
authored
Dec 10, 2021
by
Guillaume Lépine
Browse files
FORMS-730: fix template fill telephone BO
parent
ddae4a55
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/java/fr/paris/lutece/plugins/forms/web/entrytype/EntryTypeTelephoneDisplayService.java
0 → 100644
View file @
6161e0b0
/*
* Copyright (c) 2002-2021, City of Paris
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright notice
* and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice
* and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* 3. Neither the name of 'Mairie de Paris' nor 'Lutece' nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* License 1.0
*/
package
fr.paris.lutece.plugins.forms.web.entrytype
;
import
java.util.Locale
;
import
java.util.Map
;
import
javax.servlet.http.HttpServletRequest
;
import
org.apache.commons.lang3.StringUtils
;
import
fr.paris.lutece.plugins.forms.business.form.column.IFormColumn
;
import
fr.paris.lutece.plugins.forms.business.form.column.impl.FormColumnEntry
;
import
fr.paris.lutece.plugins.forms.util.FormsConstants
;
import
fr.paris.lutece.plugins.genericattributes.business.Entry
;
import
fr.paris.lutece.plugins.genericattributes.service.entrytype.EntryTypeServiceManager
;
import
fr.paris.lutece.plugins.genericattributes.service.entrytype.IEntryTypeService
;
import
fr.paris.lutece.portal.service.template.AppTemplateService
;
/**
* The default display service
*/
public
class
EntryTypeTelephoneDisplayService
implements
IEntryDisplayService
{
private
static
final
String
MARK_ENTRY_TYPE_SERVICE
=
"entryTypeService"
;
private
static
final
String
LOCALE_MARKER
=
"locale"
;
private
String
_strEntryServiceName
=
StringUtils
.
EMPTY
;
/**
* Constructor of the EntryTypeDefaultDisplayService
*
* @param strEntryServiceName
* The entry service name
*/
public
EntryTypeTelephoneDisplayService
(
String
strEntryServiceName
)
{
_strEntryServiceName
=
strEntryServiceName
;
}
/**
* Return the completed model
*
* @param entry
* The given entry
* @param locale
* The given locale
* @param model
* The given model
* @return the completed model
*/
private
Map
<
String
,
Object
>
setModel
(
Entry
entry
,
Locale
locale
,
Map
<
String
,
Object
>
model
)
{
model
.
put
(
FormsConstants
.
QUESTION_ENTRY_MARKER
,
entry
);
model
.
put
(
LOCALE_MARKER
,
locale
);
return
model
;
}
/**
* {@inheritDoc}
*/
@Override
public
String
getDisplayServiceName
(
)
{
return
_strEntryServiceName
;
}
/**
* {@inheritDoc}
*/
@Override
public
String
getEntryTemplateDisplay
(
HttpServletRequest
request
,
Entry
entry
,
Locale
locale
,
Map
<
String
,
Object
>
model
,
DisplayType
displayType
)
{
String
strEntryHtml
=
StringUtils
.
EMPTY
;
IEntryTypeService
service
=
EntryTypeServiceManager
.
getEntryTypeService
(
entry
);
switch
(
displayType
.
getMode
(
)
)
{
case
EDITION:
strEntryHtml
=
AppTemplateService
.
getTemplate
(
service
.
getTemplateHtmlForm
(
entry
,
displayType
.
isFront
(
)
),
locale
,
setModel
(
entry
,
locale
,
model
)
)
.
getHtml
(
);
break
;
case
READONLY:
model
.
put
(
MARK_ENTRY_TYPE_SERVICE
,
service
);
strEntryHtml
=
AppTemplateService
.
getTemplate
(
service
.
getTemplateEntryReadOnly
(
displayType
.
isFront
(
)
),
locale
,
setModel
(
entry
,
locale
,
model
)
)
.
getHtml
(
);
break
;
default
:
// Nothing to do
}
return
strEntryHtml
;
}
/**
* Get the form column
*
* @param nFormColumnPosition
* @param strColumnTitle
* @param listEntryTitle
* @return The form column
*/
@Override
public
IFormColumn
getFormColumn
(
int
nFormColumnPosition
,
String
strColumnTitle
)
{
return
new
FormColumnEntry
(
nFormColumnPosition
,
strColumnTitle
);
}
}
webapp/WEB-INF/conf/plugins/forms_context.xml
View file @
6161e0b0
...
...
@@ -324,7 +324,7 @@
<bean
id=
"forms.entryTypeCameraDisplayService"
class=
"fr.paris.lutece.plugins.forms.web.entrytype.EntryTypeFileDisplayService"
>
<constructor-arg
type=
"java.lang.String"
value=
"forms.entryTypeCamera"
/>
</bean>
<bean
id=
"forms.entryTypeTelephoneNumberDisplayService"
class=
"fr.paris.lutece.plugins.forms.web.entrytype.EntryType
Default
DisplayService"
>
<bean
id=
"forms.entryTypeTelephoneNumberDisplayService"
class=
"fr.paris.lutece.plugins.forms.web.entrytype.EntryType
Telephone
DisplayService"
>
<constructor-arg
type=
"java.lang.String"
value=
"forms.entryTypeTelephoneNumber"
/>
</bean>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment