Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Mathieu Loiseau
GameOfWords
Commits
358d18a6
Commit
358d18a6
authored
Sep 08, 2016
by
Mathieu
Committed by
GitHub
Sep 08, 2016
Browse files
Merge pull request #2 from InnovaLangues/dirty-fix
Dirty fix
parents
3ccfb501
ca0874d0
Changes
7
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
358d18a6
...
...
@@ -41,6 +41,8 @@ Contributors
*
Arnaud Bey
*
Benjamin Abrial
*
Mathieu Loiseau
*
Typos
*
Yoann Goudin
Credits
--------
...
...
controllersJS/display_lang.js
View file @
358d18a6
<
script
>
function
dispalyMoreLanguages
(){
//var dl=document.getElementById("list_lang");
var
t
=
document
.
getElementById
(
"
userlang_spoken
"
);
var
count
=
t
.
getElementsByTagName
(
"
tr
"
).
length
;
if
(
count
===
10
)
{
return
;}
var
tr
=
t
.
insertRow
(
count
);
//var tr = document.createElement("tr");
var
td
=
tr
.
insertCell
(
0
);
td
.
align
=
"
center
"
;
//var td = document.createElement("td");
var
i
=
document
.
createElement
(
'
input
'
);
i
.
type
=
"
text
"
;
i
.
required
=
"
required
"
;
i
.
setAttribute
(
'
list
'
,
'
iso
'
);
i
.
setAttribute
(
'
name
'
,
'
choix_langs_
'
.
concat
(
count
));
i
.
setAttribute
(
'
onchange
'
,
'
updateRadio(this);
'
);
//i.list="iso";
i
.
size
=
"
10
"
;
td
.
appendChild
(
i
);
// tr.appendChild(td);
var
td
=
tr
.
insertCell
(
1
);
//td = document.createElement('td');
td
.
align
=
"
center
"
;
i
=
document
.
createElement
(
'
input
'
);
i
.
type
=
"
text
"
;
i
.
required
=
"
required
"
;
i
.
setAttribute
(
'
list
'
,
'
lang_level
'
);
i
.
setAttribute
(
'
name
'
,
'
choix_niveau_
'
.
concat
(
count
));
i
.
size
=
"
10
"
;
td
.
appendChild
(
i
);
//tr.appendChild(td);
var
td
=
tr
.
insertCell
(
2
);
//td = document.createElement('td');
td
.
align
=
"
center
"
;
i
=
document
.
createElement
(
'
input
'
);
i
.
type
=
"
radio
"
;
i
.
setAttribute
(
'
name
'
,
'
lang_game
'
);
td
.
appendChild
(
i
);
//tr.appendChild(td);
//t.appendChild(tr);
}
function
dispalyLessLanguages
(){
var
t
=
document
.
getElementById
(
"
userlang_spoken
"
);
function
addLanguage
(){
var
t
=
document
.
getElementById
(
"
userlang_spoken
"
);
var
count
=
t
.
getElementsByTagName
(
"
tr
"
).
length
;
if
(
count
>
2
)
{
t
.
deleteRow
(
count
-
1
);
}
if
(
count
===
10
)
{
return
;}
// spoken language
var
options
=
document
.
getElementById
(
'
languages
'
).
innerHTML
;
var
tr
=
t
.
insertRow
(
count
);
var
td
=
tr
.
insertCell
(
0
);
td
.
align
=
"
center
"
;
var
s
=
document
.
createElement
(
'
select
'
);
s
.
required
=
"
required
"
;
s
.
setAttribute
(
'
name
'
,
'
choix_langs_
'
.
concat
(
count
));
s
.
setAttribute
(
'
onchange
'
,
'
updateRadio(this);
'
);
s
.
innerHTML
=
options
;
s
.
selectedIndex
=
0
;
td
.
appendChild
(
s
);
// level
var
td
=
tr
.
insertCell
(
1
);
options
=
document
.
getElementById
(
'
levels
'
).
innerHTML
;
td
.
align
=
"
center
"
;
s
=
document
.
createElement
(
'
select
'
);
s
.
required
=
"
required
"
;
s
.
setAttribute
(
'
name
'
,
'
choix_niveau_
'
.
concat
(
count
));
s
.
innerHTML
=
options
;
s
.
selectedIndex
=
0
;
td
.
appendChild
(
s
);
// Game language
var
td
=
tr
.
insertCell
(
2
);
td
.
align
=
"
center
"
;
i
=
document
.
createElement
(
'
input
'
);
i
.
type
=
"
radio
"
;
i
.
setAttribute
(
'
name
'
,
'
lang_game
'
);
td
.
appendChild
(
i
);
}
function
removeLastLanguage
(){
var
t
=
document
.
getElementById
(
"
userlang_spoken
"
);
var
count
=
t
.
getElementsByTagName
(
"
tr
"
).
length
;
if
(
count
>
2
)
{
t
.
deleteRow
(
count
-
1
);
}
}
function
updateRadio
(
l
)
{
var
tr
=
l
.
parentNode
.
parentNode
;
var
game
=
tr
.
cells
[
2
].
children
[
0
];
game
.
setAttribute
(
'
value
'
,
l
.
value
);
}
<
/script>
\ No newline at end of file
}
<
/script
>
languages/lang.fr.php
View file @
358d18a6
...
...
@@ -28,6 +28,7 @@ $lang['login'] = 'Connexion';
$lang
[
'logout'
]
=
'Déconnexion'
;
$lang
[
'langue_apprentissage'
]
=
'Indiquez la/les langue(s) que vous apprenez:'
;
$lang
[
'ajout_langue'
]
=
'ajouter une langue parlée'
;
//Menu et boutons de formulaires
$lang
[
'cmd_submit'
]
=
'Valider'
;
$lang
[
'cmd_cancel'
]
=
'Annuler'
;
...
...
@@ -53,7 +54,7 @@ $lang['select_role'] = 'Selectionez un rôle';
$lang
[
'card_create'
]
=
'Création d\'une carte'
;
$lang
[
'card_description'
]
=
'Description d\'une carte'
;
$lang
[
'game_arbitrage'
]
=
'Arbitrage d\'une partie'
;
$lang
[
'card_lexinno'
]
=
'Carte liée à votre lexique'
;
$lang
[
'card_lexinno'
]
=
'Carte liée à votre lexique'
;
// Description d'une carte par un Oracle oracle.card.display.html
$lang
[
'warning'
]
=
'Attention, votre micro n\'a pas été activé.'
;
...
...
@@ -80,10 +81,10 @@ $lang['word_direction'] = 'Niveau du CECR de ce mot (indépendamment des mots in
$lang
[
'level_easy'
]
=
'Facile'
;
$lang
[
'level_medium'
]
=
'Moyen'
;
$lang
[
'level_hard'
]
=
'Difficile'
;
$lang
[
'level_beg'
]
=
"
Débutant
"
;
$lang
[
'level_int'
]
=
"
Intermédiaire
"
;
$lang
[
'level_adv'
]
=
"
Avancé
"
;
$lang
[
'level_nat'
]
=
"
Natif
"
;
$lang
[
'level_beg'
]
=
'
Débutant
'
;
$lang
[
'level_int'
]
=
'
Intermédiaire
'
;
$lang
[
'level_adv'
]
=
'
Avancé
'
;
$lang
[
'level_nat'
]
=
'
Natif
'
;
$lang
[
'validate'
]
=
'Valider'
;
$lang
[
'reset'
]
=
'Réinitialiser'
;
...
...
@@ -127,7 +128,7 @@ $lang['RecordCard'] = 'Si vous voulez proposer un enregistrement pour cette cart
$lang
[
'RecordArbitre'
]
=
'Si vous voulez arbitrer cet enregistrement cliquez ici : '
;
$lang
[
'restart'
]
=
'Rejouer une partie ? '
;
$lang
[
'start'
]
=
'Il est temps de jouer !'
;
$lang
[
'start_playback'
]
=
"Commencer l'écoute"
;
$lang
[
'start_playback'
]
=
"Commencer l'écoute"
;
$lang
[
'give_up'
]
=
'Abandonner'
;
$lang
[
'devin-nope'
]
=
'Pas ce mot…'
;
$lang
[
'game'
]
=
'Jouer'
;
...
...
@@ -149,7 +150,7 @@ $lang['score_diviner'] = 'Devin';
$lang
[
'score_global'
]
=
'Score global'
;
$lang
[
'userName'
]
=
'Joueur'
;
$lang
[
'global_score'
]
=
'Classement général'
;
$lang
[
'scores_by_language'
]
=
"
Scores par langue
"
;
$lang
[
'scores_by_language'
]
=
'
Scores par langue
'
;
// Timeout
$lang
[
'diviner_timeout'
]
=
'Tu n\'as pas fourni de réponse dans le temps imparti'
;
...
...
@@ -200,21 +201,20 @@ $lang['Oracle_medium'] = "Trois mots interdits et 1′ d'enregistrement (mise&nb
$lang
[
'Oracle_hard'
]
=
"Six mots interdits et 30″ d'enregistrement (mise : 30 points)."
;
$lang
[
'Devin_easy'
]
=
"2 fois la durée de l'enregistrement pour une mise de 10 points."
;
$lang
[
'Devin_medium'
]
=
"1,5 fois la durée de l'enregistrement pour une mise de 20 points."
;
$lang
[
'Devin_hard'
]
=
"
Enregistrement + 8″ pour une mise de 30 points.
"
;
$lang
[
'Devin_hard'
]
=
'
Enregistrement + 8″ pour une mise de 30 points.
'
;
$lang
[
'Card_created'
]
=
"Merci d'avoir créé une carte : "
;
$lang
[
'Rec_verified'
]
=
"Merci d'avoir vérifié l'enregistrement de "
;
$lang
[
'Oracle_verif'
][
true
]
=
" a vérifié votre enregistrement et pense que vous n'avez pas utilisé de mot interdit"
;
$lang
[
'Oracle_verif'
][
false
]
=
" a vérifié votre enregistrement et pense que vous n'avez pas utilisé de mot interdit"
;
$lang
[
'Oracle_devin'
][
false
]
=
" a écouté votre enregistrement et n'a pas trouvé le mot…"
;
$lang
[
'Oracle_devin'
][
true
]
=
"
a écouté votre enregistrement et a trouvé !
"
;
$lang
[
'Devin_played'
]
=
"
Vous avez écouté un enregistrement de
"
;
$lang
[
'Devin_oracle'
][
true
]
=
"
Et vous avez trouvé !
"
;
$lang
[
'Oracle_devin'
][
true
]
=
'
a écouté votre enregistrement et a trouvé !
'
;
$lang
[
'Devin_played'
]
=
'
Vous avez écouté un enregistrement de
'
;
$lang
[
'Devin_oracle'
][
true
]
=
'
Et vous avez trouvé !
'
;
$lang
[
'Devin_oracle'
][
false
]
=
"Mais vous n'avez pas trouvé…"
;
$lang
[
'img_augur'
]
=
"./profil/diviner.jpg"
;
$lang
[
'img_druid'
]
=
"./profil/druide.jpg"
;
$lang
[
'img_oracle'
]
=
"./profil/oracle.jpg"
;
$lang
[
'img_augur'
]
=
'./profil/diviner.jpg'
;
$lang
[
'img_druid'
]
=
'./profil/druide.jpg'
;
$lang
[
'img_oracle'
]
=
'./profil/oracle.jpg'
;
//Erreur upload
$lang
[
'file_unupload'
]
=
'Attention le fichier a mal été uploadé.'
;
...
...
@@ -225,4 +225,4 @@ $lang['uploadProb'] = 'Le fichier n\'a pas été uploadé...';
//
$lang
[
'same_lang'
]
=
'Vous avez choisi deux fois la même langue dans langues parlées '
;
//Administration cartes
$lang
[
'admin'
]
=
"
Administration : Cliquer sur la croix pour supprimer la carte
"
;
$lang
[
'admin'
]
=
'
Administration : Cliquer sur la croix pour supprimer la carte
'
;
sys/load_iso.php
View file @
358d18a6
<?php
require_once
(
'./sys/db.class.php'
);
//probably useless
class
IsoLang
{
private
$db
;
private
static
$common_languages
=
array
(
"en"
=>
"Anglais"
,
"fr"
=>
"Français"
,
"it"
=>
"Italien"
,
"es"
=>
"Espagnol"
,
"zh"
=>
"Chinois"
);
public
function
__construct
(){
$this
->
db
=
db
::
getInstance
();
}
public
function
language_code_for
(
$french
){
$code
=
array_search
(
$french
,
self
::
$common_languages
,
true
);
if
(
$code
===
false
){
$this
->
db
->
query
(
"SELECT `iso_code` FROM `langues` WHERE `french`='"
.
$french
.
"'"
);
if
(
$this
->
db
->
affected_rows
()
==
1
){
$code
=
$this
->
db
->
fetch_object
()
->
iso_code
;
}
else
{
$code
=
false
;
}
}
return
$code
;
}
public
function
any_to_iso
(
$any
){
$res
=
$this
->
language_code_for
(
$any
);
if
(
$res
===
false
){
if
(
$this
->
french_for
(
$any
)
!==
false
){
$res
=
$any
;
}
else
{
throw
new
Exception
(
"
$any
n'est ni une langue en français, ni un code iso."
);
}
}
return
$res
;
}
public
function
any_to_french
(
$any
){
$res
=
$this
->
french_for
(
$any
);
if
(
$res
===
false
){
if
(
$this
->
language_code_for
(
$any
)
!==
false
){
$res
=
$any
;
}
else
{
throw
new
Exception
(
"
$any
n'est ni une langue en français, ni un code iso."
);
}
}
return
$res
;
}
public
function
french_for
(
$isoCode
){
if
(
!
isset
(
self
::
$common_languages
[
$isoCode
])){
$this
->
db
->
query
(
"SELECT `french` FROM `langues` WHERE `iso_code`='"
.
$isoCode
.
"'"
);
if
(
$this
->
db
->
affected_rows
()
==
1
){
$french
=
$this
->
db
->
fetch_object
()
->
french
;
}
else
{
$french
=
false
;
}
}
else
{
$french
=
self
::
$common_languages
[
$isoCode
];
}
return
$french
;
}
public
function
get_all_codes
(
$language
=
"french"
){
$res
=
array
();
$this
->
db
->
query
(
"SELECT `iso_code`,`
$language
` FROM `langues`"
);
if
(
$this
->
db
->
affected_rows
()
>=
1
){
while
(
$tmpObj
=
$this
->
db
->
fetch_object
()){
$res
[
$tmpObj
->
iso_code
]
=
$tmpObj
->
{
$language
};
}
}
else
{
$res
=
false
;
}
return
$res
;
}
}
?>
<?php
require_once
'./sys/db.class.php'
;
//probably useless
class
IsoLang
{
private
$db
;
private
static
$common_languages
=
array
(
'en'
=>
'Anglais'
,
'fr'
=>
'Français'
,
'it'
=>
'Italien'
,
'es'
=>
'Espagnol'
,
'zh'
=>
'Chinois'
,
);
public
$commonlyUsed
=
[
'Allemand'
,
'Anglais'
,
'Arabe'
,
'Chinois'
,
'Espagnol'
,
'Français'
,
'Hindi'
,
'Russe'
];
public
function
__construct
()
{
$this
->
db
=
db
::
getInstance
();
}
public
function
language_code_for
(
$french
)
{
$code
=
array_search
(
$french
,
self
::
$common_languages
,
true
);
if
(
$code
===
false
)
{
$this
->
db
->
query
(
"SELECT `iso_code` FROM `langues` WHERE `french`='"
.
$french
.
"'"
);
if
(
$this
->
db
->
affected_rows
()
==
1
)
{
$code
=
$this
->
db
->
fetch_object
()
->
iso_code
;
}
else
{
$code
=
false
;
}
}
return
$code
;
}
public
function
any_to_iso
(
$any
)
{
$res
=
$this
->
language_code_for
(
$any
);
if
(
$res
===
false
)
{
if
(
$this
->
french_for
(
$any
)
!==
false
)
{
$res
=
$any
;
}
else
{
throw
new
Exception
(
"
$any
n'est ni une langue en français, ni un code iso."
);
}
}
return
$res
;
}
public
function
any_to_french
(
$any
)
{
$res
=
$this
->
french_for
(
$any
);
if
(
$res
===
false
)
{
if
(
$this
->
language_code_for
(
$any
)
!==
false
)
{
$res
=
$any
;
}
else
{
throw
new
Exception
(
"
$any
n'est ni une langue en français, ni un code iso."
);
}
}
return
$res
;
}
public
function
french_for
(
$isoCode
)
{
if
(
!
isset
(
self
::
$common_languages
[
$isoCode
]))
{
$this
->
db
->
query
(
"SELECT `french` FROM `langues` WHERE `iso_code`='"
.
$isoCode
.
"'"
);
if
(
$this
->
db
->
affected_rows
()
==
1
)
{
$french
=
$this
->
db
->
fetch_object
()
->
french
;
}
else
{
$french
=
false
;
}
}
else
{
$french
=
self
::
$common_languages
[
$isoCode
];
}
return
$french
;
}
public
function
get_all_codes
(
$language
=
'french'
)
{
$res
=
array
();
$this
->
db
->
query
(
"SELECT `iso_code`,`
$language
` FROM `langues`"
);
if
(
$this
->
db
->
affected_rows
()
>=
1
)
{
while
(
$tmpObj
=
$this
->
db
->
fetch_object
())
{
$res
[
$tmpObj
->
iso_code
]
=
$tmpObj
->
{
$language
};
}
}
else
{
$res
=
false
;
}
return
$res
;
}
}
views/edit.form.html
View file @
358d18a6
...
...
@@ -4,7 +4,6 @@ include('./views/page.header.html');
require_once('./sys/load_iso.php');
$lang_iso = new IsoLang();
include('./controllersJS/display_lang.js');
?>
<div
id=
"main-container"
>
<div
id=
"jrForm"
>
...
...
@@ -51,20 +50,6 @@ include('./controllersJS/display_lang.js');
<dl>
<dt><label
for=
"userlang_spoken"
>
<?php echo "Langues parlées";?>
</label></dt>
<dd>
<datalist
id=
"lang_level"
>
<option
value=
"Débutant"
>
<option
value=
"Intermédiaire"
>
<option
value=
"Avancé"
>
<option
value=
"Natif"
>
</datalist>
<datalist
id=
"iso"
>
<?php
$tableLang=$lang_iso->get_all_codes();
foreach($tableLang as $value){
echo "<option value='".$value."'>";
}
?>
</datalist>
<table
id=
"userlang_spoken"
>
<tr>
<td
width=
"25%"
align=
"center"
>
Langue
</td>
...
...
@@ -73,26 +58,61 @@ include('./controllersJS/display_lang.js');
</tr>
<?php
$i=1;
$languages = $lang_iso->get_all_codes();
$commonlyUsed = $lang_iso->commonlyUsed;
$levels = ["Débutant", "Intermédiaire", "Avancé", "Natif"];
$spoken_lang = explode(';',$this->spoken_lang);
$niveaux = explode(';',$this->niveau);
$userlang_game = strlen($this->userlang_game) > 0 ? $lang_iso->french_for($this->userlang_game) : '';
if (sizeof($spoken_lang) >= 1 && !empty($spoken_lang[0])) {
for ($i=0; $i<sizeof($spoken_lang); $i++) {
$languageid = ($i === 0) ? "id='languages'" : "";
$levelid = ($i === 0) ? "id='levels'" : "";
$l = $spoken_lang[$i];
$n = $niveaux[$i];
$i++;
//foreach ($spoken_lang as $l) {
if (strlen($l) > 0) {
echo "<tr><td align='center'>" .
"<input list='iso' type='text' name='choix_langs_" . $i . "' required='required' size='10' onchange=\"updateRadio(this);\" value='" . $l . "'/>" .
"</td>" .
"<td align='center'><input list='lang_level' name='choix_niveau_" . $i . "' required='required' size='10'/ value='" . $n . "'></td>";
if (strlen($l) > 0) {
?>
<tr>
<td
align=
'center'
>
<select
<?
php
echo
$
languageid
;?
>
name='choix_langs_
<?php echo $i; ?>
' required='required' onchange='updateRadio(this);'>
<option
value=
''
>
--
</option>
<optgroup
label=
'Commonly Used'
>
<?php
foreach($commonlyUsed as $language){
echo "<option value='".$language."'>".$language."</option>";
}
?>
</optgroup>
<optgroup
label=
'All'
>
<?php
foreach($languages as $language){
$selected = ($l === $language) ? "selected" : "";
echo "<option value='".$language."' ".$selected.">".$language."</option>";
}
?>
</optgroup>
</select>
</td>
<td
align=
'center'
>
<select
<?
php
echo
$
levelid
;?
>
name='choix_niveau_
<?php echo $i; ?>
' required='required'>
<option
value=
''
>
--
</option>
<?php
foreach($levels as $level){
$selected = ($n === $level) ? "selected" : "";
echo "<option value='".$level."' ".$selected.">".$level."</option>";
}
?>
</select>
</td>
<?php
if (strcmp($l,$userlang_game) == 0) {
echo "<td align='center'><input type='radio' name='lang_game' required='required' checked value='" . $l . "'/></td></tr>";
} else {
echo "<td align='center'><input type='radio' name='lang_game' required='required' value='" . $l . "'/> </td></tr>";
}
// $i++;
}
$i--;
}
...
...
@@ -109,10 +129,10 @@ include('./controllersJS/display_lang.js');
</table>
<table>
<tr>
<!-- ici, on include display_lang.js pour ajouter des langues ou les retirer-->
<td><button
type=
"button"
id=
"langueAppriseBtn"
onClick=
"
dispalyMore
Language
s
();"
align=
"center"
>
<?php echo $lang['ajout_langue'];?>
</button></td>
<td><button
type=
"button"
id=
"langueAppriseBtn"
onClick=
"
add
Language();"
align=
"center"
>
<?php echo $lang['ajout_langue'];?>
</button></td>
</tr>
<tr>
<td><button
type=
"button"
id=
"langueAppriseCancel"
onClick=
"
dispalyLess
Language
s
();"
align=
"center"
>
<?php echo "Retirer langue";?>
</button></td>
<td><button
type=
"button"
id=
"langueAppriseCancel"
onClick=
"
removeLast
Language();"
align=
"center"
>
<?php echo "Retirer langue";?>
</button></td>
</tr>
</table>
...
...
views/page.header.html
View file @
358d18a6
...
...
@@ -13,10 +13,9 @@ $notif->readNotif();
<head>
<title>
<?php echo $title; ?>
</title>
<meta
charset=
"UTF-8"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1"
>
<script
type=
"text/javascript"
src=
"style/default.js/js/jquery-1.11.2.min.js"
></script>
<!-- Adaptation au Bootstrap -->
...
...
@@ -35,7 +34,7 @@ $notif->readNotif();
<!--Module de son : -->
<script
src=
"style/default.js/RecordRTC.js"
></script>
<script
src=
"style/default.js/RecordRTC.js"
></script>
<!-- ALL jQuery Tools. No jQuery library -->
<script
src=
"http://cdn.jquerytools.org/1.2.6/full/jquery.tools.min.js"
></script>
...
...
@@ -44,8 +43,6 @@ $notif->readNotif();
<script
src=
"controllersJS/Notification/modernizr.custom.js"
></script>
<script
src=
"controllersJS/sendSQL.js"
></script>
<script
src=
"controllersJS/notif.js"
></script>
</head>
<body>
<div
id=
"header-logo"
></div>
...
...
views/register.form.html
View file @
358d18a6
<?php
$title = 'S\'enregister';
$title = 'S\'enregist
r
er
';
include('./views/page.header.html');
require_once('./sys/load_iso.php');
$lang_iso = new IsoLang();
include('./controllersJS/display_lang.js');
?>
<div
id=
"main-container"
>
<div
id=
"jrForm"
>
<form
class=
"form-jr"
role=
"form"
id=
"register"
method=
"post"
action=
"./"
enctype=
"multipart/form-data"
>
...
...
@@ -48,20 +49,6 @@ include('./controllersJS/display_lang.js');
<dl>
<dt><label
for=
"userlang_spoken"
>
Choisissez les langues que vous parlez
</label></dt>
<dd>
<datalist
id=
"lang_level"
>
<option
value=
"Débutant"
>
<option
value=
"Intermédiaire"
>
<option
value=
"Avancé"
>
<option
value=
"Natif"
>
</datalist>
<datalist
id=
"iso"
>
<?php
$tableLang=$lang_iso->get_all_codes();
foreach($tableLang as $value){
echo "<option value='".$value."'>";
}
?>
</datalist>
<table
id=
"userlang_spoken"
>
<tr>
<td
width=
"25%"
align=
"center"
>
Langue
</td>
...
...
@@ -69,22 +56,52 @@ include('./controllersJS/display_lang.js');
<td
width=
"50%"
align=
"center"
>
Langue de jeu
</td>
</tr>
<tr>
<td
align=
"center"
><input
list=
"iso"
type=
"text"
name=
"choix_langs_1"
required=
"required"
size=
"10"
onchange=
"updateRadio(this);"
/></td>
<td
align=
"center"
><input
list=
"lang_level"
name=
"choix_niveau_1"
required=
"required"
size=
"10"
/></td>
<td>
<select
id=
"languages"
name=
"choix_langs_1"
required=
"required"
onchange=
"updateRadio(this);"
>
<option
value=
""
>
--
</option>
<?php
$languages = $lang_iso->get_all_codes();
$commonlyUsed = $lang_iso->commonlyUsed;
?>
<optgroup
label=
"Commonly used"
>
<?php
foreach($commonlyUsed as $language){
echo "<option value='".$language."'>".$language."</option>";
}
?>
</optgroup>
<optgroup
label=
"All"
>
<?php
foreach($languages as $language){
echo "<option value='".$language."'>".$language."</option>";
}
?>
</optgroup>
</select>
</td>
<td
align=
"center"
>
<select
id=
"levels"
name=
"choix_niveau_1"
required=
"required"
>
<option
value=
""
>
--
</option>
<?php
$levels = ["Débutant", "Intermédiaire", "Avancé", "Natif"];
foreach($levels as $level){
echo "<option value='".$level."'>".$level."</option>";
}
?>
</select>
</td>
<td
align=
"center"
><input
type=
"radio"
name=
"lang_game"
required=
"required"
/></td>
</tr>
</table>
<table>
<tr>
<td><button
type=
"button"
id=
"langueAppriseBtn"
onClick=
"
dispalyMore
Language
s
();"
align=
"center"
>
Ajouter une langue
</button></td>
<td><button
type=
"button"
id=
"langueAppriseBtn"
onClick=
"
add
Language();"
align=
"center"
>
Ajouter une langue
</button></td>
</tr>
<tr>
<td><button
type=
"button"
id=
"langueAppriseCancel"
onClick=
"
dispalyLess
Language
s
();"
align=
"center"
>
Retirer une langue
</button></td>
<td><button
type=
"button"
id=
"langueAppriseCancel"
onClick=
"
removeLast
Language();"
align=
"center"
>
Retirer une langue
</button></td>
</tr>
</table>
</dd>
</dl>
...
...
@@ -102,7 +119,7 @@ include('./controllersJS/display_lang.js');
<dl>
<dt><label
for=
"userlang"
>
Choisissez une langue d'interface
</label></dt>
<!-- userlang= langue d'interface -->
<dd>
<select
id=
"userlang"
name=
"userlang"
>
<select
required
id=
"userlang"
name=
"userlang"
>
<option
value =
""
></option>
<option
value =
"fr"
>
Français
</option>
<option
value =
"en"
>
Anglais
</option>
...
...
Write
Preview