Modifying the self-registration text

More
4 years 8 months ago #91299 by stevage
stevage created the topic: Modifying the self-registration text
I can't find an easy way to modify this text, from within LimeSurvey:

You must be registered to complete this survey
You may register for this survey if you wish to take part.
Enter your details below, and an email containing the link to participate in this survey will be sent immediately.


Also, we would really like to remove the "first name" and "last name" boxes: all we want to collect is the email address. Is this possible?

We'd really prefer to host the survey on LimeSurvey Professional (previously LimeService), so modifying code is out - but can do it if there's no other solution.

Please Log in to join the conversation.

More
4 years 8 months ago #91301 by stevage
stevage replied the topic: Modifying the self-registration text
Ah, I've solved it.

1. Copy the default template
2. On startpage.pstpl, insert this at the end of the HEAD tag:
<script>
$(function(){
$("[name=register_firstname]").parent().parent().hide()
$("[name=register_lastname]").parent().parent().hide()
});
</script>
3. On register.pstpl, replace {REGISTERMESSAGE1} and {REGISTERMESSAGE2} with whatever you want. (This wouldn't work if you needed multiple languages.)

Sweet!

Please Log in to join the conversation.

More
3 years 11 months ago #100725 by firstservey
firstservey replied the topic: Modifying the self-registration text
Hello,

I think it is too late now, but you can change the REGISTERMESSAGE1 and REGISTERMESSAGE2 in the following folder: /application/helper/replacements_helper.php

in line 841 & 842 you can change the messages but as you said: translation to a second language is not possible this way

Please Log in to join the conversation.

More
3 years 11 months ago #100973 by dweisser
dweisser replied the topic: Modifying the self-registration text
My question pertains to the screen a registrant sees after he/she registers.


Thank you for registering to participate in this survey.

An email has been sent to the address you provided with access details for this survey. Please follow the link in that email to proceed.

Survey administrator Administrator (This email address is being protected from spambots. You need JavaScript enabled to view it.)


Am I dense? (yes, but...) I can't seem to find a way to access and alternate this text and formatting. The Register.pstpl doesn't seem to contain this text. Any help anyone?

Nebraska

Please Log in to join the conversation.

More
3 years 11 months ago #100975 by dweisser
dweisser replied the topic: Modifying the self-registration text
Found it.

This text is in /(your install directory)/application/controllers/RegisterController.php.

The text is in line 242. However, I'm scared to change it. And, even if I change it, it will be blown away when I update.

Are there alternatives?

Thank you,
David

Please Log in to join the conversation.

More
3 years 11 months ago #100977 by tpartner
tpartner replied the topic: Modifying the self-registration text
Safer to modify the translation string or create a new "custom" language - manual.limesurvey.org/How_to_translate_L...existing_translation

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.

Please Log in to join the conversation.

More
3 years 11 months ago #100981 by dweisser
dweisser replied the topic: Modifying the self-registration text
Thank you T. As always, your advice is appreciated.

But, I simply want to change the text. I don't see how the translation editor can help.
If I could create new {replacement} fields, that might be something, but as it stands the .php sends the email upon registration and prints the text as defined above to the page.

I think I'd have to alter that function, or alter the text, in order to influence the outcome. Am I wrong?

David

Please Log in to join the conversation.

More
3 years 11 months ago #100982 by tpartner
tpartner replied the topic: Modifying the self-registration text
If you create a custom language for your survey and modify that string in the language file, it will automatically be applied.

That is what $clang->gT() does.

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.

Please Log in to join the conversation.

More
3 years 11 months ago #100983 by dweisser
dweisser replied the topic: Modifying the self-registration text
The light is dawning.
I think I now understand this process. I downloaded and installed poedit.
I downloaded the language template file from www.limesurvey.org/translationstatus/limesurvey.pot .

Couple of questions:

Question 1. Does every entry (There are over 10,000 need a "translation" or can I simply "translate" the one(s) I want changed?

Question 2. Will LimeSurvey updates obliterate these edits? Easy workaround is to save the custom language offline and reload upon update.

David

Please Log in to join the conversation.

More
3 years 11 months ago #100984 by tpartner
tpartner replied the topic: Modifying the self-registration text
1) Simply translate those you want changed.

2) If you create a custom language, it will not be affected by updates.

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.

Please Log in to join the conversation.

More
3 years 11 months ago #100986 by dweisser
dweisser replied the topic: Modifying the self-registration text
Thank you!
The control offered by this process is pretty amazing.
Karma/Thanks + 1

Please Log in to join the conversation.

More
2 months 1 week ago #156894 by blocka
blocka replied the topic: Modifying the self-registration text
I'm also interested in a way to at least be able to specify the multilingual text strings for:
{REGISTERMESSAGE1}
{REGISTERMESSAGE2}

Sometimes survey's require the display of a Privacy Statement that respondents need to be able to access before they can complete a survey. Private Statements might be different per survey, so changing the PO/MO files isn't practical.

And modifying core isn't good, since it has to be per survey.

And modifying register template doesn't quite cut it either, unless we provide multilingual text -- which looks a bit odd, given everything else on the register page is based on the user's current language.

I might be able to sponsor a solution to this....

Please Log in to join the conversation.

More
2 months 1 week ago - 2 months 1 week ago #156895 by blocka
blocka replied the topic: Modifying the self-registration text
There is a way to do this using Javascript in the register.pstpl file, by checking the lang= parameter.

Here's what register.pstpl looks like:


<style>
.dynamic-content {
display:none;
}
</style>

<div class='jumbotron'>
<div class="container clearfix">
<h2>{REGISTERMESSAGE1}</h2>
<h3><small class='text-info'>{REGISTERMESSAGE2}</small></h3>
</div>
</div>

<div id="default-content" class="dynamic-content">
Get started – sign up now! It's fast and easy.
</div>
<!-- Dynamic Section 1 -->
<div id="french" class="dynamic-content">
Commencez ici – Inscrivez-vous maintenant! C’est rapide et facile.
</div>
<!-- Dynamic Section 2 -->
<div id="english" class="dynamic-content">
Get started – sign up now! It's fast and easy.
</div>

<script type="text/javascript">
// Parse the URL parameter
function getParameterByName(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
// Give the parameter a variable name
var dynamicContent = getParameterByName('lang');

$(document).ready(function() {

// Check if the URL parameter is apples
if (dynamicContent == 'fr') {
$('#french').show();
}
// Check if the URL parameter is oranges
else if (dynamicContent == 'en') {
$('#english').show();
}
// Check if the URL parmeter is empty or not defined, display default content
else {
$('#default-content').show();
}
});
</script>


{REGISTERERROR}

<div class="register-form">

<div class="container">

{REGISTERFORM}</div>
</div>
<input type='hidden' class='hidemenubutton'/>
Last Edit: 2 months 1 week ago by blocka.

Please Log in to join the conversation.

More
2 months 1 week ago - 2 months 1 week ago #156912 by DenisChenu
DenisChenu replied the topic: Modifying the self-registration text
You can surely use beforeRegister event and set in a clean way your own message
$this->getEvent()->set('sMessage','<p>Your own message</p>');

github.com/LimeSurvey/LimeSurvey/blob/ma...rController.php#L112

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand (or search sondages pro).
An error happen ? Before make a new topic : remind the Debug mode .
Last Edit: 2 months 1 week ago by DenisChenu.

Please Log in to join the conversation.

More
2 months 1 week ago #156929 by blocka
blocka replied the topic: Modifying the self-registration text
That's interesting. I'd need to develop a plugin to do this, right?

Please Log in to join the conversation.

Start now!

Just create your account and start using Limesurvey today.

Register now