new_channel - make text strings translatable and use the name as a base for the nick if you try to create without entering a nick

This commit is contained in:
zotlabs 2018-05-21 20:17:17 -07:00
parent a403611ac9
commit 1061027071
4 changed files with 46 additions and 9 deletions

View File

@ -41,7 +41,7 @@ class New_channel extends \Zotlabs\Web\Controller {
$test[] = legal_webbie($x);
// fullname plus random number
$test[] = legal_webbie($x) . mt_rand(1000,9999);
json_return_and_die(check_webbie($test));
}
@ -49,7 +49,10 @@ class New_channel extends \Zotlabs\Web\Controller {
require_once('library/urlify/URLify.php');
$result = array('error' => false, 'message' => '');
$n = trim($_REQUEST['nick']);
if(! $n) {
$n = trim($_REQUEST['name']);
}
$x = false;
if(get_config('system','unicode_usernames')) {
@ -58,9 +61,20 @@ class New_channel extends \Zotlabs\Web\Controller {
if((! $x) || strlen($x) > 64)
$x = strtolower(\URLify::transliterate($n));
$test = array();
// first name
if(strpos($x,' '))
$test[] = legal_webbie(substr($x,0,strpos($x,' ')));
if($test[0]) {
// first name plus first initial of last
$test[] = ((strpos($x,' ')) ? $test[0] . legal_webbie(trim(substr($x,strpos($x,' '),2))) : '');
// first name plus random number
$test[] = $test[0] . mt_rand(1000,9999);
}
$n = legal_webbie($x);
if(strlen($n)) {
$test[] = $n;

View File

@ -23,6 +23,16 @@ function js_strings() {
'$linkurl' => t('Please enter a link URL'),
'$leavethispage' => t('Unsaved changes. Are you sure you wish to leave this page?'),
'$location' => t('Location'),
'$lovely' => t('lovely'),
'$wonderful' => t('wonderful'),
'$fantastic' => t('fantastic'),
'$great' => t('great'),
'$nick_invld1' => t('Your chosen nickname was either already taken or not valid. Please use our suggestion ('),
'$nick_invld2' => t(') or enter a new one.'),
'$nick_valid' => t('Thank you, this nickname is valid.'),
'$name_empty' => t('A channel name is required.'),
'$name_ok1' => t('This is a '),
'$name_ok2' => t(' channel name'),
// translatable prefix and suffix strings for jquery.timeago -
// using the defaults set below if left untranslated, empty strings if

View File

@ -43,19 +43,20 @@
$("#nick_help_loading").show();
$("#nick_help_text").hide();
var zreg_name = $("#id_name").val();
var zreg_nick = $("#id_nickname").val();
$.get("new_channel/checkaddr.json?f=&nick=" + encodeURIComponent(zreg_nick),function(data) {
$.get("new_channel/checkaddr.json?f=&nick=" + encodeURIComponent(zreg_nick) + '&name=' + encodeURIComponent(zreg_name),function(data) {
$("#id_nickname").val(data);
if(data !== zreg_nick) {
$("#id_nickname").addClass('is-validated');
$("#help_nickname").addClass('text-danger').removeClass('text-muted');
$("#help_nickname").html('Your chosen nickname was either already taken or not valid. Please use our suggestion (' + data + ') or enter a new one.');
$("#help_nickname").html(aStr['nick_invld1'] + data + aStr['nick_invld2']);
$("#id_nickname").focus();
}
else {
$("#id_nickname").addClass('is-validated');
$("#help_nickname").addClass('text-success').removeClass('text-muted').removeClass('text-danger');
$("#help_nickname").html("Thank you, this nickname is valid.");
$("#help_nickname").html(aStr['nick_valid']);
}
$("#nick_help_loading").hide();
$("#nick_help_text").show();
@ -69,18 +70,18 @@
if($("#id_name").hasClass('is-validated'))
return true;
var verbs = ['lovely', 'wonderful', 'gorgeous', 'great'];
var verbs = [ aStr['lovely'], aStr['wonderful'], aStr['fantastic'], aStr['great'] ];
var verb = verbs[Math.floor((Math.random() * 4) + 0)];
if(! $("#id_name").val()) {
$("#id_name").focus();
$("#help_name").addClass('text-danger').removeClass('text-muted');
$("#help_name").html("A channel name is required.");
$("#help_name").html(aStr['name_empty']);
return false;
}
else {
$("#help_name").addClass('text-success').removeClass('text-muted').removeClass('text-danger');
$("#help_name").html('This is a ' + verb + ' channel name.');
$("#help_name").html(aStr['name_ok1'] + verb + aStr['name_ok2']);
$("#id_name").addClass('is-validated');
return true;
}

View File

@ -23,6 +23,18 @@
'linkurl' : "{{$linkurl}}",
'leavethispage' : "{{$leavethispage}}",
'location' : "{{$location}}",
'lovely' : "{{$lovely}}",
'wonderful' : "{{$wonderful}}",
'fantastic' : "{{$fantastic}}",
'great' : "{{$great}}",
'nick_invld1' : "{{$nick_invld1}}",
'nick_invld2' : "{{$nick_invld2}}",
'nick_valid' : "{{$nick_valid}}",
'name_empty' : "{{$name_empty}}",
'name_ok1' : "{{$name_ok1}}",
'name_ok2' : "{{$name_ok2}}",
't01' : "{{$t01}}",
't02' : "{{$t02}}",