/
sikuda
/
php1c2
Обзор
Документация
Войти
/
sikuda
/
php1c2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
index.html
123 строки
5 KB
sikudamobile
All Number1C operation3
13 июн 2024, 14:04
13 июн 2024, 14:04
37bc89f
Код
Авторство
О чём код?
<!doctype html> <meta name=viewport content="width=device-width, initial-scale=1"> <title>PHP and 1C</title> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <link rel="stylesheet" href="./lib/codemirror.css"> <script src="./lib/codemirror.js"></script> <script src="./lib/1c.js"></script> <link rel="stylesheet" href="./lib/1c.css"> <body> <h4>Выбор языка для 1С</h4> <label> <input type="radio" name="lang" value="ru" checked onclick="changeLang('ru')"/> </label>Русский<br> <label> <input type="radio" name="lang" value="en" onclick="changeLang('en')"/> </label> Английский<br> <!-- <input type="radio" name="lang" value="ua"> Украинский<br><br> --> <h4>Открытый проект преобразования кода 1С в PHP. <br><a href='https://github.com/sikuda/php1c.ru'>https://github.com/sikuda/php1c.ru</a></h4> <p>Хотите попробовать выполнить или преобразовать Ваш кусочек кода 1С? Вставьте его в первое поле и нажмите кнопку Преобразовать в PHP для преобразования этого кода.</p> <div width="100%"> <label for="code"></label><textarea id="code" name="code" width="50%"></textarea> </div> <div align="center"> <input type="button" onclick="doExecute()" value="Выполнить" style="font-size:1.5em"/> </div> <br> <div> <label for="codeResult"></label><textarea name="codeResult" id="codeResult"></textarea> </div> <div align="center"> <input type="button" onclick="doCount()" value="Преобразовать в PHP" style="font-size:1.5em"/> </div> <br> <div> <label for="codePHP"></label><textarea name="codePHP" id="codePHP"></textarea> </div> <script type="text/javascript"> codeArea = document.getElementById('code'); var editor = CodeMirror.fromTextArea(codeArea, { lineNumbers: true, indentWithTabs: true, styleActiveLine: true, lineWrapping: true, smartIndent: true, electricChars:false, autofocus: true, indentUnit: 4, readOnly: false, highlightSelectionMatches: {showToken: /[0-9a-zA-Zа-яёА-ЯЁ&]/, annotateScrollbar: false}, mode: "text/x-1c", theme: '1c' }); //set //var content = 'Перем Результат; \nПроцедура Сложение( d, Я) \nРезультат = "4" + d + Я; \nКонецПроцедуры \nСложение(1, 2);'; //editor.setValue(content); changeLang(); for (var i =0; i< editor.lineCount(); i++) { editor.indentLine(i); } editor.setSize("100%","30%"); var editorResult = CodeMirror.fromTextArea(document.getElementById("codeResult"), { lineNumbers: true, matchBrackets: false, mode: "text", indentUnit: 4, indentWithTabs: true }); editorResult.setSize("100%","30%"); var editorPHP = CodeMirror.fromTextArea(document.getElementById("codePHP"), { lineNumbers: true, matchBrackets: false, mode: "application/x-httpd-php", indentUnit: 4, indentWithTabs: true }); editorPHP.setSize("100%","30%"); //run code from 1c function doExecute(){ var context = editor.getValue(); var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState === 4 && this.status === 200) { var str = xhttp.responseText; editorResult.setValue(str); } } var params = context; var lang = "ru" if( document.getElementsByName("lang")[1].checked) lang = "en"; xhttp.open("POST", 'result1CCode.php?lang='+lang, true) xhttp.setRequestHeader('Content-Type', 'text-plain'); xhttp.send(params); } //Make code php function doCount(){ var context = editor.getValue(); var xhttp2 = new XMLHttpRequest(); xhttp2.onreadystatechange = function() { if (this.readyState === 4 && this.status === 200) { var str = xhttp2.responseText; editorPHP.setValue(str); } } var params = context; var lang = "ru" if( document.getElementsByName("lang")[1].checked) lang = "en"; xhttp2.open("POST", 'result1CCode.php?code=1&lang='+lang, true) xhttp2.setRequestHeader('Content-Type', 'text-plain') xhttp2.send(params); } function changeLang(lang) { if( lang === 'en') editor.setValue('var Result;\n\nProcedure fAdd(Y,z)\n Return "4"+Y+z;\nEndProcedure\nResult = fAdd(5,7);'); else editor.setValue('Перем Результат; \nПроцедура Сложение( d, Я) \nВозврат "4" + d + Я; \nКонецПроцедуры \nРезультат=Сложение(1, 2);'); } </script> </body>