Fix save code on execute

This commit is contained in:
Aurelien Labate 2019-12-28 15:21:55 +01:00
parent 58e5a50e4a
commit a0a258dbc4
7 changed files with 16 additions and 100 deletions

View File

@ -317,10 +317,8 @@ function compilation(langage_source) {
var i, mot = "", dernier_mot = 0, espace_position , mot_en_cours;
var ligne = 1, type;
var calcul_memoire = "undefined", ligne_memoire, chaine = 0;
var texte_compil = escape(texte);
createCookie("last_algo",texte_compil,30);
createCookie("last_language",langage_source,30);
createCookie('exemple','init',30);
createCookie("last_algo", encodeURIComponent(texte), 30);
createCookie("last_language", langage_source, 30);
debug_efface();
// remise à 0 des variables

View File

@ -88,16 +88,4 @@ function affiche_resultats() {
}
alert(code[z]);
}
}
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value;
}
}

View File

@ -1,28 +1,9 @@
function getelem(id)
{
return document.getElementById(id);
}
function insert(f, e, id)
{
var scroll = getelem(id).scrollTop;
if(document.selection)
{
getelem(id).focus();
sel = document.selection.createRange();
sel.text = f+sel.text+e;
function createCookie(name,value,days) {
expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else if(getelem(id).selectionStart || getelem(id).selectionStart == '0')
{
var startPos = getelem(id).selectionStart;
var endPos = getelem(id).selectionEnd;
getelem(id).value = getelem(id).value.substring(0, startPos)+f+getelem(id).value.substring(startPos, endPos)+e+getelem(id).value.substring(endPos, getelem(id).value.length);
getelem(id).selectionStart = startPos+f.length;
getelem(id).selectionEnd = startPos+f.length+(endPos-startPos);
}
else
{
getelem(id).value += msg;
}
getelem(id).scrollTop = scroll;
getelem(id).focus();
document.cookie = name+"="+value + expires;
}

View File

@ -467,30 +467,6 @@ $(document).ready(function() {
return false;
});
}
function default_code()
{
if((document.cookie.indexOf('exemple=') == -1 || readCookie('exemple') == "init") && document.cookie.indexOf('last_algo=') != -1 && document.cookie.indexOf('last_language=') != -1 && (readCookie('last_language') == 1 || readCookie('last_language') == 2 || readCookie('last_language') == 3)){
langage = readCookie('last_language');
var t;
switch(langage)
{
case "1": t = 1; break;
case "2": t = 2; break;
case "3": t = 3; break;
}
langage = t;
var code = unescape(readCookie('last_algo'));
document.getElementById("saisie").value = code;
$("#saisie").cleditor()[0].updateFrame().focus();
affiche_conversion();
affiche_langage();
}
}
$("#saisie").cleditor().focus(); // transforme le textarea en éditeur html
@ -505,31 +481,9 @@ $(document).ready(function() {
boutons();
signes();
menus_deroulants_show();
default_code();
alert_mobile();
});
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value;
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function alert_mobile() {
if(/iPhone|iPod|Android|opera mini|blackberry|palm os|palm|hiptop|avantgo|plucker|xiino|blazer|elaine|iris|3g_t|windows ce|opera mobi|windows ce; smartphone;|windows ce;iemobile/i.test(navigator.userAgent)){
alert("Cette interface ne fonctionne pas encore sur mobile. Merci de vous procurer un ordinateur pour l'utiliser.");

View File

@ -143,7 +143,7 @@ La suite de Fibonacci sert à déterminer une approximation du nombre d\'Or en d
<h3>Description :</h3>
<?php echo $dnn['description']; ?>
<form method="POST" action="<?= $base_url ?>/index.php">
<form method="POST" action="<?= $base_url ?>">
<textarea style="display:none;" name="programme"><?= $dnn['programme'] ?></textarea>
<input type="image" src="assets/img/examples/tester.png" alt="Submit" />
</form>

View File

@ -11,6 +11,7 @@
<script type="text/javascript" src="assets/js/jquery/jquery.js"></script>
<script type="text/javascript" src="assets/js/jquery/jquery.cleditor.js"></script>
<script type="text/javascript" src="assets/js/functions.js"></script>
<script type="text/javascript" src="assets/js/interface.js"></script>
<script type="text/javascript" src="assets/js/compil1.js"></script>
<script type="text/javascript" src="assets/js/compil2.js"></script>

View File

@ -1,12 +1,4 @@
<?php
// Clean cookies that store the last algo when we come from an example
if(isset($_POST["programme"]))
{
setcookie('last_algo', '', time() - 3600, $base_url);
setcookie('algorithme', '', time() - 3600, $base_url);
setcookie('algo', '', time() - 3600, $base_url);
}
$page_title = 'Programmer, exécuter et traduire des algorithmes pour toutes les calculatrices';
require_once('includes/header.php');
?>
@ -67,10 +59,12 @@
<div id="disable"></div>
<textarea cols="41" rows="22" name="Saisie" id="saisie" spellcheck="false" method="post" action="<?= $base_url ?>">
<?php
if(isset($_POST["programme"]))
{
if (!empty($_POST["programme"])) {
echo $_POST["programme"];
}
elseif (!empty($_COOKIE['last_algo']) && urldecode($_COOKIE['last_algo'])) {
echo urldecode($_COOKIE['last_algo']);
}
?>
</textarea></form>
</div>