index.html 194 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>CocoBlockly X – CocoRobo AI & IoT Module</title>
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  7. <meta http-equiv="Content-Type" content="text/html; scharset=UTF-8">
  8. <meta name="theme-color" content="#2C4FCD">
  9. <link type="text/css" rel="stylesheet" href="libs/materialize.min.css" media="screen,projection">
  10. <link rel="stylesheet" href="libs/codemirror/codemirror.css" />
  11. <link rel="stylesheet" href="libs/font-awesome.min.css" />
  12. <link rel="stylesheet" href="libs/summernote/summernote.css" />
  13. <link rel="stylesheet" href="libs/multi-select.css" />
  14. <link rel="stylesheet" href="src/blockpy.css" />
  15. <link rel="stylesheet" href="index.css" />
  16. <link rel="stylesheet" href="cocoblockly.css" />
  17. <!-- JQuery, D3, Math.js, Bootstrap -->
  18. <!-- <script type="text/javascript" src="libs/jquery.js"></script> -->
  19. <script type="text/javascript" src="uform.js"></script>
  20. <script type="text/javascript" src="js_libs/jquery-2.1.3.min.js"></script>
  21. <script type="text/javascript" src="libs/jquery-ui.min.js"></script>
  22. <script type="text/javascript" src="libs/jquery.hotkeys.js"></script>
  23. <script type="text/javascript" src="libs/jquery.multi-select.js"></script>
  24. <script type="text/javascript" src="libs/materialize.min.js"></script>
  25. <!-- <script src="materialize/js/materialize.js"></script> -->
  26. <script type="text/javascript" src="libs/d3.min.js"></script>
  27. <script type="text/javascript" src="libs/math.0.19.0.min.js"></script>
  28. <!-- <script type="text/javascript" src="libs/bootstrap.min.js"></script>
  29. <script type="text/javascript" src="libs/bootstrap-wysiwyg.js"></script> -->
  30. <script type="text/javascript" src="libs/mindmup-editabletable.js"></script>
  31. <script type="text/javascript" src="libs/codemirror/codemirror.js"></script>
  32. <script type="text/javascript" src="libs/codemirror/python.js"></script>
  33. <script type="text/javascript" src="libs/codemirror/htmlmixed.js"></script>
  34. <script type="text/javascript" src="libs/codemirror/xml.js"></script>
  35. <script type="text/javascript" src="libs/knockout-3.4.0.js"></script>
  36. <script type="text/javascript" src="libs/stringify.js"></script>
  37. <!-- Summernote, a rich text editor -->
  38. <script type="text/javascript" src="libs/summernote/summernote.min.js"></script>
  39. <script type="text/javascript" src="libs/summernote/summernote-ext-hint.js"></script>
  40. <script type="text/javascript" src="libs/summernote/summernote-ext-video.js"></script>
  41. <!-- Blockly -->
  42. <!-- <script type="text/javascript" src="blockly/blockly_uncompressed.js"></script> -->
  43. <!-- <script type="text/javascript" src="blockly/blockly_compressed.js"></script>
  44. <script type="text/javascript" src="src/imported.js"></script>
  45. <script type="text/javascript" src="blockly/blocks_compressed.js"></script>
  46. <script type="text/javascript" src="src/python_to_blockly.js"></script>
  47. <script type="text/javascript" src="blockly/python_compressed.js"></script> -->
  48. <script type="text/javascript" src="blockly/blocks/python/head.js"></script>
  49. <script type="text/javascript" src="blockly/blocks/python/citys.js"></script>
  50. <script type="text/javascript" src="blockly/blocks/python/define_colors.js"></script>
  51. <script type="text/javascript" src="blockly/blocks/python/blockly_compressed.js"></script>
  52. <script type="text/javascript" src="blockly/blocks/python/blocks_compressed.js"></script>
  53. <script type="text/javascript" src="blockly/blocks/python/python_compressed.js"></script>
  54. <script type="text/javascript" src="blockly/blocks/python/blocks_microbit.min.js"></script>
  55. <script type="text/javascript" src="blockly/blocks/python/blocks_mpython.min.js"></script>
  56. <script type="text/javascript" src="blockly/blocks/python/python_microbit.min.js"></script>
  57. <script type="text/javascript" src="blockly/blocks/python/python_mpython.min.js"></script>
  58. <script type="text/javascript" src="src/imported.js"></script>
  59. <script type="text/javascript" src="src/python_to_blockly.js"></script>
  60. <script type="text/javascript" src="blockly/blocks/python/ai.js"></script>
  61. <script type="text/javascript" src="blockly/blocks/python/iot.js"></script>
  62. <script type="text/javascript" src="blockly/blocks/python/esp32.js"></script>
  63. <script type="text/javascript" src="blockly/blocks/python/extension_module.js"></script>
  64. <script type="text/javascript" src="blockly/blocks/python/mainwifi.js"></script>
  65. <script type="text/javascript" src="blockly/blocks/text.js"></script>
  66. <script type="text/javascript" src="blockly/blocks/utility.js"></script>
  67. <!-- <script type="text/javascript" src="blockly/generators/utility.js"></script> -->
  68. <!--
  69. <script type="text/javascript" src="blockly/blocks/math.js"></script>
  70. <script type="text/javascript" src="blockly/generators/python/math.js"></script>-->
  71. <script type="text/javascript" src="blockly/generators/python.js"></script>
  72. <script type="text/javascript" src="blockly/blocks/python/time.js"></script>
  73. <script type="text/javascript" src="blockly/generators/python/time.js"></script>
  74. <script type="text/javascript" src="blockly/blocks/python/mainwifi.js"></script>
  75. <script type="text/javascript" src="blockly/generators/python/mainwifi.js"></script>
  76. <script type="text/javascript" src="blockly/blocks/python/screen.js"></script>
  77. <script type="text/javascript" src="blockly/generators/python/screen.js"></script>
  78. <script type="text/javascript" src="/blockly/msg/index.js"></script>
  79. <script type="text/javascript" src="src/blockly/FileSaver.js"></script>
  80. <script type="text/javascript" src="src/blockly/term.js"></script>
  81. <script type="text/javascript" src="src/blockly/web.js"></script>
  82. <script type="text/javascript" src="src/blockly/load.js"></script>
  83. <script type="text/javascript" src="src/blockly/Devices.js"></script>
  84. <!-- Skulpt -->
  85. <script type="text/javascript" src="skulpt/dist/skulpt.min.js"></script>
  86. <script type="text/javascript" src="skulpt/dist/skulpt-stdlib.js"></script>
  87. <!-- Source Code -->
  88. <script type="text/javascript" src="src/utilities.js"></script>
  89. <script type="text/javascript" src="src/python_errors.js"></script>
  90. <script type="text/javascript" src="src/ast_node_visitor.js"></script>
  91. <script type="text/javascript" src="src/abstract_interpreter.js"></script>
  92. <script type="text/javascript" src="src/pytifa.js"></script>
  93. <script type="text/javascript" src="src/abstract_interpreter_definitions.js"></script>
  94. <script type="text/javascript" src="src/dialog.js"></script>
  95. <script type="text/javascript" src="src/storage.js"></script>
  96. <script type="text/javascript" src="src/printer.js"></script>
  97. <script type="text/javascript" src="src/interface.js"></script>
  98. <script type="text/javascript" src="src/server.js"></script>
  99. <script type="text/javascript" src="src/english.js"></script>
  100. <script type="text/javascript" src="src/corgis.js"></script>
  101. <script type="text/javascript" src="src/history.js"></script>
  102. <script type="text/javascript" src="src/presentation.js"></script>
  103. <script type="text/javascript" src="src/editor.js"></script>
  104. <script type="text/javascript" src="src/feedback.js"></script>
  105. <script type="text/javascript" src="src/toolbar.js"></script>
  106. <script type="text/javascript" src="src/sk_mod_instructor_extended.js"></script>
  107. <script type="text/javascript" src="src/sk_mod_instructor.js"></script>
  108. <script type="text/javascript" src="src/engine.js"></script>
  109. <script type="text/javascript" src="src/main.js"></script>
  110. <!-- FileSaver JS -->
  111. <script src="src/js_libs/FileSaver.min.js"></script>
  112. <!-- JS Diff -->
  113. <script src="src/js_libs/diff.js"></script>
  114. <!-- Prettify JS -->
  115. <script src="src/prettify/prettify.js"></script>
  116. <!-- Lazyload JS -->
  117. <script src="src/lazysize/lazysizes.min.js"></script>
  118. <!-- Socket.io -->
  119. <script src="src/socket.io-client/dist/socket.io.js"></script>
  120. <!-- clipboard -->
  121. <script src="src/clipboard/dist/clipboard.js"></script>
  122. <!-- Event Proxy -->
  123. <script type="text/javascript" src="src/blockly/eventproxy.js"></script>
  124. <!-- jQuery and Materialize JS -->
  125. <!-- <script src="js_libs/jquery-2.1.3.min.js"></script> -->
  126. <script src="materialize/js/materialize.js"></script>
  127. <!-- echarts -->
  128. <script src="./js_libs/echarts.min.js"></script>
  129. <!-- platform.js -->
  130. <!-- Desktop version of Ardublockly JS, needs to be loaded first. -->
  131. <!-- <script src="ardublockly_desktop.js"></script> -->
  132. <script type="text/javascript" src="src/webcam.min.js"></script>
  133. <script src="src/platformjs/platform.js"></script>
  134. <script src="ardublockly_lang.js"></script>
  135. <script src="ardublockly_toolbox.js"></script>
  136. <!-- <script src="ardublockly_blockly.js"></script> -->
  137. <script src="ardublocklyserver_ajax.js"></script>
  138. <script type="text/javascript" src="src/blockly/ardublockly_desktop.js"></script>
  139. <script type="text/javascript" src="src/blockly/ardublockly_design.js"></script>
  140. <script type="text/javascript" src="src/blockly/ardublockly_blockly.js"></script>
  141. <script type="text/javascript" src="src/blockly/ardublockly.js"></script>
  142. <script type="text/javascript" src="src/blockly/cocoblockly.js"></script>
  143. <script src="src/blockly/account.js"></script>
  144. <script src="src/blockly/socket.js"></script>
  145. <script src="src/blockly/machine.js"></script>
  146. <script type="text/javascript" src="./libs/clipboard.min.js"></script>
  147. <script type="text/javascript" src="./index.js"></script>
  148. </head>
  149. <body>
  150. <div id="white-box">
  151. <div id="preloader">
  152. <img src="./images/preloader.gif">
  153. <h4 style="margin:0;">Loading...</h4>
  154. </div>
  155. </div>
  156. <!-- modal -->
  157. <!-- <div class="modals">
  158. <span></span>
  159. </div> -->
  160. <div id="container">
  161. <!-- Horizontal Navigation bar -->
  162. <nav id="nav_" class="nav-fixed arduino_teal" style="overflow:hidden;background-color: #3454D2;">
  163. <div id="nav_shadow" class="shadowbox" style="display:none;"></div>
  164. <div class="nav-wrapper"
  165. style="min-width: 1200px; padding:0px 10px;display: flex;justify-content: space-between;position:static;">
  166. <a id="logo-container" class="brand-logo" style="display: none;">
  167. <span style="font-size:28px;font-family:'GT Walsheim Pro Trial Bold';"
  168. class="app_title translatable_title">CocoBlockly X</span>
  169. <!-- Sketch name editable text field -->
  170. <span class="sketch_name_wrapper" style="position:relative">
  171. <!-- <a id="button_delete" class="lang_resize" style="position:relative">
  172. <img style="height:28px;margin-top:20px" src="./icons/trash.png"> -->
  173. </a>
  174. <ul id="nav-mobile" class="hide-on-med-and-down" style="display: inline-block;">
  175. <!-- <li>
  176. <img style="height: 40px;margin-top: 10px;" class="left nav-icon" src="./icons/logo.png">
  177. </li> -->
  178. <li style="display: block;">
  179. <a id="nav_language" class='dropdown-button lang_resize' data-activates='languages'
  180. style="position:relative;padding: 0 25px;">
  181. <span class="translatable_language" style="display: none;">Language</span>
  182. <img class="left nav-icon" src="/images/language.png" style="width: 30px;height: 50px;">
  183. <i class="down" style="position: relative;top: 30px;left: 2px;float: right;"></i>
  184. </a>
  185. <ul id='languages' class='dropdown-content active'>
  186. <li id="EN" onclick="changeLanguage('en')">
  187. <span>English</span>
  188. </li>
  189. <li id="TC" onclick="changeLanguage('zh-hant')">
  190. <span>繁体中文</span>
  191. </li>
  192. <li id="CN" onclick="changeLanguage('zh-hans')">
  193. <span>简体中文</span>
  194. </li>
  195. </ul>
  196. </li>
  197. <!-- <li>
  198. <span class="vertical-separator"></span>
  199. </li> -->
  200. <li style="display: block;">
  201. <a id="local_storage" class='dropdown-button lang_resize' data-activates='local_saveOrOpen'
  202. style="position:relative;padding: 0 25px;">
  203. <span class="translatable_files">文件</span>
  204. <!-- <img class="left nav-icon" src="./icons/local_storage.png"> -->
  205. </a>
  206. <ul id='local_saveOrOpen' class='dropdown-content' style="top:62px">
  207. <li id="button_load">
  208. <span class="translatable_import_local_file">导入本地文件</span>
  209. </li>
  210. <li id="button_import_cloud">
  211. <span class="translatable_import_cloud_file">导入云端文件</span>
  212. </li>
  213. <li id="button_save">
  214. <span class="translatable_export_local_file">保存到本地</span>
  215. </li>
  216. <li id="button_save_cloud">
  217. <span class="translatable_export_cloud_file">保存到云端</span>
  218. </li>
  219. </ul>
  220. <div id="fileImport" class="btn" style="display:none;">
  221. <input type="file" accept=".py">
  222. </div>
  223. <div id="xmlFileImport" class="btn" style="display:none;">
  224. <input type="file" accept=".xml">
  225. </div>
  226. <div id="pyFileImport" class="btn" style="display:none;">
  227. <input type="file" accept=".py">
  228. </div>
  229. </li>
  230. <li style="display: block;">
  231. <a id="local_connect" class='dropdown-button lang_resize' data-activates='local_connect_select'
  232. style="position:relative;padding: 0 25px;">
  233. <span class="translatable_connect">连接</span>
  234. </a>
  235. <ul id='local_connect_select' class='dropdown-content' style="top:62px">
  236. <li id="plugin_download" href="javaScript:(0)">
  237. <span class="translatable_download_uploader">下载安装程序</span>
  238. <ul id="plugin_mac_or_windows" class='dropdown-content'
  239. style="display:none; position: fixed; left: 320px; top: 64px;">
  240. <li id="Mac" href="//cocorobo.cn/downloads/CocoBlocklyXUploaderInstallerv1.0.10.pkg"
  241. target="_black">
  242. <span><img src="./icons/mac-icon.png">Mac</span>
  243. </li>
  244. <li id="Windows"
  245. href="//cocorobo.cn/downloads/CocoBlocklyXUploaderInstallerv1.0.11.exe"
  246. target="_black">
  247. <span><img src="./icons/windows-icon.png">Windows</span>
  248. </li>
  249. </ul>
  250. </li>
  251. <li id="button_upgrade_firmware">
  252. <span class="translatable_upgrade_firmware">固件升级</span>
  253. </li>
  254. <li id="button_connection_type">
  255. <span class="translatable_connect_method">连接方式</span>
  256. <ul id="connect_method" class='dropdown-content'
  257. style="display:none; position: fixed; left: 320px; top: 170px;">
  258. <li id="select_connecteds" style="text-align: center;"
  259. onclick="selectConnectMethods(0)">
  260. <span id="Wired" class="translatable_select_connecteds">有线上传</span>
  261. </li>
  262. <li id="no_select_connecteds" style="text-align: center;"
  263. onclick="selectConnectMethods(1)">
  264. <span id="Wireless" class="translatable_no_select_connecteds">无线上传</span>
  265. </li>
  266. </ul>
  267. </li>
  268. </ul>
  269. </li>
  270. <li style="display: block;">
  271. <a id="help" class='dropdown-button lang_resize' data-activates='local_help'
  272. style="position:relative;padding: 0 25px;">
  273. <span class="translatable_help_board">帮助</span>
  274. </a>
  275. <ul id='local_help' class='dropdown-content' style="top:62px">
  276. <li id="local_help_ai">
  277. <span class="translatable_ai_kit">AI Kit</span>
  278. <ul id="local_help_ai_kit" class='dropdown-content'
  279. style="display:none; position: fixed; left: 398px; top: 64px;">
  280. <li id="ai_kit_0" href="//x-help.cocorobo.hk/#/aikit/AI_1" target="_black">
  281. <span class="translatable_ai_kit_0">Mac</span>
  282. </li>
  283. <li id="ai_kit_1" href="//x-help.cocorobo.hk/#/aikit/AI_2" target="_black">
  284. <span class="translatable_ai_kit_1">Windows</span>
  285. </li>
  286. <li id="ai_kit_2" href="//x-help.cocorobo.hk/#/aikit/AI_3" target="_black">
  287. <span class="translatable_ai_kit_2">Windows</span>
  288. </li>
  289. <li id="ai_kit_3" href="//x-help.cocorobo.hk/#/aikit/AI_4" target="_black">
  290. <span class="translatable_ai_kit_3">Windows</span>
  291. </li>
  292. </ul>
  293. </li>
  294. <li id="local_help_extends">
  295. <span class="translatable_extends">拓展转接模组</span>
  296. <ul id="help_extends" class='dropdown-content'
  297. style="display:none; position: fixed; left: 398px; top: 120px;">
  298. <li id="extends_0" href="//x-help.cocorobo.hk/#/extension/EX_01" target="_black">
  299. <span class="translatable_extends_0">Mac</span>
  300. </li>
  301. <li id="extends_1" href="//x-help.cocorobo.hk/#/extension/EX_02" target="_black">
  302. <span class="translatable_extends_1">Windows</span>
  303. </li>
  304. <li id="extends_2" href="//x-help.cocorobo.hk/#/extension/EX_03" target="_black">
  305. <span class="translatable_extends_2">Windows</span>
  306. </li>
  307. </ul>
  308. </li>
  309. <li id="local_help_error" href="//x-help.cocorobo.cn/#/aikit/A0">
  310. <span class="translatable_error">常见错误处理</span>
  311. </li>
  312. </ul>
  313. </li>
  314. <li>
  315. <div style="margin: 0px 20px 0px 0px;">
  316. <input type="text" value="A.I. Module" id="iot_modules" readonly
  317. class="selectMode_input browser-default"
  318. style="font-size: 0.9rem;border: none;width: 130px;">
  319. <i class="down" style="position: relative;top: -20px;float: right;"></i>
  320. <div class="downbox MouduleBox" id="downboxModule" style="top: 64px;">
  321. <div style="border: none;"><a href="javaScript:(0)" style="color: #424242 !important;"
  322. class="translatable_ai_module">A.I. Module</a></div>
  323. <div style="border: none;"><a href="javaScript:(0)" style="color: #424242 !important;"
  324. class="translatable_iot_module">IoT Module
  325. Mode</a></div>
  326. <div style="border: none;"><a href="/python" style="color: #424242 !important;"
  327. class="translatable_python_full_screen_mode" target="_blank">Cloud
  328. Mode</a></div>
  329. </div>
  330. </div>
  331. </li>
  332. <li class="Mode_select_box">
  333. <div class="ModeSelectBox">
  334. <div class="ModeSelect">
  335. <div style="font-size: 0.9rem;">样例 </div>
  336. <i class="down" style="position: relative;top: -34px;left: 20px;float: right;"></i>
  337. <div class="downbox ModeBox downbox-style">
  338. <div>
  339. <div>人工智能教材程序</div>
  340. <i class="downboxdown"></i>
  341. <div class="Hardware2 HarxA" style="height:auto;top:-35px">
  342. <div class="Hardware9">
  343. <div>三年级</div>
  344. <i class="downboxdown"></i>
  345. <ul class="Hardware4 HarxA">
  346. <li>录制语音指令</li>
  347. <li>语音识别台灯</li>
  348. <!-- <li>人脸识别防盗门</li> -->
  349. </ul>
  350. </div>
  351. <div class="Hardware5">
  352. <div>五年级</div>
  353. <i class="downboxdown"></i>
  354. <ul class="Hardware4 HarxA">
  355. <li>录制语音指令</li>
  356. <li>智能窗帘</li>
  357. <li>水果采摘机器人</li>
  358. <!-- <li>智能质检机器人</li> -->
  359. </ul>
  360. </div>
  361. <div class="Hardware6">
  362. <div>六年级</div>
  363. <i class="downboxdown"></i>
  364. <ul class="Hardware4 HarxA">
  365. <!-- <li>无人驾驶循环小车</li> -->
  366. <li>智能交通信号灯</li>
  367. <li>导盲项链</li>
  368. <!-- <li>二维码包裹分拣机器人</li> -->
  369. </ul>
  370. </div>
  371. <div class="Hardware7">
  372. <div>七年级</div>
  373. <i class="downboxdown"></i>
  374. <ul class="Hardware4 HarxA">
  375. <li>人脸辨识电子警察</li>
  376. </ul>
  377. </div>
  378. <div class="Hardware8">
  379. <div>八年级</div>
  380. <i class="downboxdown"></i>
  381. <ul class="Hardware4 HarxA">
  382. <li>支付台</li>
  383. </ul>
  384. </div>
  385. </div>
  386. </div>
  387. <div>
  388. <div>IoT 模块基础案例</div>
  389. <i class="downboxdown"></i>
  390. <ul class="Hardware2 HarxA">
  391. <li>侧边按键控制蜂鸣器</li>
  392. <li> 侧边按键控制开关 LED</li>
  393. <li> 触摸区域控制 LED</li>
  394. <li> 蜂鸣器警报</li>
  395. <li> 黑暗环境感应光照灯</li>
  396. <li> 倾斜方向感应 LED</li>
  397. <li> 湿度报警器</li>
  398. <li> 摇晃感应 LED</li>
  399. <li> LED 显示光线强度值</li>
  400. </ul>
  401. </div>
  402. <div>
  403. <div>IoT 模块扩展功能案例</div>
  404. <i class="downboxdown"></i>
  405. <ul class="Hardware2 HarxA">
  406. <li>使用 LED 灯屏</li>
  407. <li>使用电机驱动模块</li>
  408. <li>使用游戏手柄 + LED 灯屏</li>
  409. <li>使用游戏手柄 + 屏幕模块</li>
  410. <li>在扩展模块上控制舵机</li>
  411. <li>屏幕显示Hello World</li>
  412. <li>屏幕绘制线条动画</li>
  413. <li>按键控制屏幕直线转动</li>
  414. <li>按键控制颜色切换</li>
  415. <li>计步器</li>
  416. </ul>
  417. </div>
  418. <div>
  419. <div>IoT 模块联网案例</div>
  420. <i class="downboxdown"></i>
  421. <ul class="Hardware2 HarxA">
  422. <li>按键发送光照数据至 CocoCloud</li>
  423. <li>按键发送环境数据至 IFTTT</li>
  424. <li>按键获取光照数据并根据条件亮灯</li>
  425. <li>定时发送环境数据至 CocoCloud</li>
  426. <li>定时接收环境数据并根据条件亮灯</li>
  427. <li>建立 WiFi 热点并显示连接设备数量</li>
  428. <li>局域网环境数据存储 - 服务器端</li>
  429. <li>局域网环境数据获取 - 客户端</li>
  430. <li>连接 WiFi 网络</li>
  431. <li>模块间按钮状态存储 - 服务端</li>
  432. <li>模块间按钮状态接收 - 客户端</li>
  433. <li>模块间进行 WebSocket 实时通信 - 发送端</li>
  434. <li>模块间进行 WebSocket 实时通信 - 接收端</li>
  435. <li>同步网络时间</li>
  436. <li>数字手表显示实时时间</li>
  437. </ul>
  438. </div>
  439. <div>
  440. <div>IoT工作坊上</div>
  441. <i class="downboxdown"></i>
  442. <ul class="Hardware2 HarxA">
  443. <li>01 点亮正中间的LED灯</li>
  444. <li>02 点亮所有LED灯</li>
  445. <li>03 流水灯</li>
  446. <li>04 蜂鸣器警报</li>
  447. <li>05 8-bit音乐</li>
  448. <li>06 串口通讯:按钮开关</li>
  449. <li>07 串口通讯:触摸开关</li>
  450. <li>08 按钮开关蜂鸣器</li>
  451. <li>09 触摸开关灯</li>
  452. <li>10 补光装置</li>
  453. <li>11 湿度报警器</li>
  454. </ul>
  455. </div>
  456. <div>
  457. <div>IoT工作坊下</div>
  458. <i class="downboxdown"></i>
  459. <ul class="Hardware2 HarxA">
  460. <li>12 晃晃灯</li>
  461. <!-- <li>13 连接Wi-Fi</li> -->
  462. <li>14 连接Wi-Fi并显示连接状态</li>
  463. <li>15 建立热点并显示已连接的设备数</li>
  464. <li>16 亮度数据上传与下载</li>
  465. <li>17 舵机来回摆动</li>
  466. <li>19 舵机定时摆动</li>
  467. <li>20 按键控制舵机</li>
  468. <li>18 门(人脸识别)</li>
  469. <li>体验 iot-机械车(语音控制)</li>
  470. <li>体验 iot-机械人(陀螺仪)</li>
  471. <li>体验 iot-机械人(姿态识别)</li>
  472. <li>体验 iot-台灯(语音控制)</li>
  473. </ul>
  474. </div>
  475. <div>
  476. <div>AI 模块机器学习案例</div>
  477. <i class="downboxdown"></i>
  478. <ul class="Hardware2 HarxA">
  479. <li>垃圾分类识别(香港版)</li>
  480. <li>人脸检测</li>
  481. <li>物体识别</li>
  482. <li>人脸检测</li>
  483. <li>物体识别</li>
  484. <li>语音录制</li>
  485. <li>语音识别</li>
  486. <li>MNIST 手写数字识别</li>
  487. </ul>
  488. </div>
  489. <div>
  490. <div>AI 模块基础案例</div>
  491. <i class="downboxdown"></i>
  492. <ul class="Hardware2 HarxA">
  493. <li>按键控制屏幕时针转动</li>
  494. <li style="display:none">按键控制图片改变颜色制式</li>
  495. <li style="display:none">按键控制图片进行反色变化</li>
  496. <li>按键控制颜色切换</li>
  497. <li>迷你相机</li>
  498. <li>屏幕方向旋转</li>
  499. <li>屏幕绘制线条动画</li>
  500. </ul>
  501. </div>
  502. <div>
  503. <div>AI 模块扩展功能案例</div>
  504. <i class="downboxdown"></i>
  505. <ul class="Hardware2 HarxA">
  506. <li>使用 LED 灯屏</li>
  507. <li>使用电机驱动模块</li>
  508. <li>使用游戏手柄 + 屏幕模块</li>
  509. <li>在扩展模块上控制舵机</li>
  510. <li>贪吃蛇</li>
  511. </ul>
  512. </div>
  513. <div>
  514. <div>AI AI 模块视觉案例</div>
  515. <i class="downboxdown"></i>
  516. <ul class="Hardware2 HarxA">
  517. <li>按键改变相机图像的亮度</li>
  518. <li>区域颜色分析</li>
  519. <li>识别 QR 二维码</li>
  520. <li>寻线(黑线)</li>
  521. <li>寻找绿色的圆形</li>
  522. <li>寻找绿色区域并进行追踪</li>
  523. </ul>
  524. </div>
  525. <div>
  526. <div>AI AI 模块影音案例</div>
  527. <i class="downboxdown"></i>
  528. <ul class="Hardware2 HarxA">
  529. <li style="display:none">播放录制的视频档案</li>
  530. <li>播放音乐</li>
  531. <li style="display:none">录制摄像头画面并保存</li>
  532. <li>麦克风声音频谱分析</li>
  533. </ul>
  534. </div>
  535. <div>
  536. <div>AI基础篇案例上</div>
  537. <i class="downboxdown"></i>
  538. <ul class="Hardware2 HarxA">
  539. <li>Hello World</li>
  540. <li>螢幕顯示 Hello World</li>
  541. <li>畫布應用</li>
  542. <li>迷你相機</li>
  543. <li>簡易物體識別</li>
  544. </ul>
  545. </div>
  546. <div>
  547. <div>AI 基础篇案例下</div>
  548. <i class="downboxdown"></i>
  549. <ul class="Hardware2 HarxA">
  550. <li>物體識別進階</li>
  551. <li>人臉檢測</li>
  552. <li>顏色識別</li>
  553. <li>形狀識別(圓形)</li>
  554. <li>形狀識別(矩形)</li>
  555. <li>音頻分析</li>
  556. </ul>
  557. </div>
  558. <div>
  559. <div>AI 扩展使用案例</div>
  560. <i class="downboxdown"></i>
  561. <ul class="Hardware2 HarxA">
  562. <li>私服马达</li>
  563. <li>超声波感测器</li>
  564. <!-- <li>测距仪</li> -->
  565. <li>灯带</li>
  566. <li id="AI_Workshop_III_ex5_Microbit">Microbit</li>
  567. <li id="AI_Workshop_III_ex6_MicrobitFace">人脸检测</li>
  568. <li>电动门</li>
  569. </ul>
  570. </div>
  571. <div>
  572. <div>AI 垃圾分类</div>
  573. <i class="downboxdown"></i>
  574. <ul class="Hardware2 HarxA">
  575. <li>私服马达</li>
  576. <li>超声波感测器</li>
  577. <li>电动门</li>
  578. </ul>
  579. </div>
  580. <div>
  581. <div>AI 自动驾驶</div>
  582. <i class="downboxdown"></i>
  583. <ul class="Hardware2 HarxA">
  584. <li>第一場-路標識別(香港標識)</li>
  585. <li>第二場-巡線(雙線)</li>
  586. <li>第二場-巡線(單線-靠左行駛))</li>
  587. <li>第一場-路標識別(香港標識)</li>
  588. </ul>
  589. </div>
  590. </div>
  591. </div>
  592. </div>
  593. </li>
  594. <!-- help button -->
  595. <!-- <li id="cloudBtn-shares">
  596. <i class="material-icons" style="margin-left:5px;cursor: pointer;">share</i>
  597. </li>
  598. <i id="workspace_screenshot" class="material-icons sketch_name_icon right"
  599. style="margin-left:5px;cursor: pointer;">photo_camera</i>
  600. <i id="button_delete" class="material-icons sketch_name_icon right"
  601. style="margin-left:5px;cursor: pointer;">delete</i> -->
  602. </ul>
  603. <!-- <i id="workspace_screenshot" class="material-icons sketch_name_icon right"
  604. style="margin-left:5px;cursor: pointer;">photo_camera</i> -->
  605. <!-- <i class="material-icons sketch_name_icon right">create</i> -->
  606. <!-- <input id="sketch_name" class="sketch_name" type="text"> -->
  607. <input id="sketch_name_w" class="sketch_name" type="text" name="wifi" style="display:none">
  608. </span>
  609. <!-- </a> -->
  610. <!-- Horizontal Navbar links only shown on large resolutions -->
  611. <ul id="nav-mobile" class="right hide-on-med-and-down nav-mobile-right" style="display: flex;">
  612. <!-- AI Demo -->
  613. <!-- <li>
  614. <a id="AI_experience" class='dropdown-button lang_resize' data-activates='AI_experience_dropdown' style="position:relative">
  615. <span class="translatable_AI_experience">AI</span>
  616. <img class="left nav-icon" src="./icons/nav-ai-experience.png">
  617. </a>
  618. <ul id='AI_experience_dropdown' class='dropdown-content' style="top:62px">
  619. <li id="webcam" class='modal-trigger' href="#webcam_capture_modal">
  620. <span class="translatable_AI_emotion">Emotion Recognotion</span>
  621. </li>
  622. <li class="divider"></li>
  623. <li id="voice-input" class='modal-trigger' href="#voice_input_modal">
  624. <span class="translatable_AI_speech">Speech Recognotion</span>
  625. </li>
  626. </ul>
  627. </li> -->
  628. <!-- help button -->
  629. <li style="display: none;">
  630. <a id="help" style="display:none" class='dropdown-button lang_resize'
  631. data-activates="help_board" style="position:relative">
  632. <!-- <i class="material-icons left" style="margin-right: 5px;font-size: 34px;">help_outline</i> -->
  633. <span class="translatable_help_board">Help</span>
  634. <img class="left nav-icon" src="./icons/nav_help.png">
  635. </a>
  636. <ul id='help_board' class='dropdown-content' style="top:62px">
  637. <li id="">
  638. <a href="http://help.cocorobo.cn/" target="_blank">
  639. <span class="translatable_tutorial">Tutorial</span>
  640. </a>
  641. </li>
  642. <!-- <li class="divider"></li>
  643. <li>
  644. <a href="#tourmode" class="modal-trigger">
  645. <span class="translatable_tour">Start Tour</span>
  646. </a>
  647. </li> -->
  648. <li class="divider"></li>
  649. <!-- <li>
  650. <a href="#env_detect" class="modal-trigger">
  651. <span class="translatable_env_detect">Environment Detect</span>
  652. </a>
  653. </li> -->
  654. <li class="divider"></li>
  655. <li>
  656. <a href="http://help.cocorobo.cn/#/changelog" target="_blank">
  657. <span class="translatable_changelog">Change Log</span>
  658. </a>
  659. </li>
  660. </ul>
  661. </li>
  662. <li style="display:none;">
  663. <select onchange="selectmode(this)" id="mode"
  664. style="outline:0;position:relative;color: #fff;font-weight: 500;width: 175px;height: 35px;border-radius: 30px;background: #fff0;border: 2px solid #fff;margin: 15px 35px 0px 0px;display: block;">
  665. <option value="" style="color: #000;">AI Mode</option>
  666. <option value="" style="color: #000;">Main Mode</option>
  667. </select>
  668. </li>
  669. <li id="cloudBtn-shares">
  670. <i class="material-icons" style="margin-left:5px;cursor: pointer;display: none;">share</i>
  671. </li>
  672. <i id="workspace_screenshot" style="margin-left:5px;cursor: pointer;">
  673. <img src="/images/screenshot.png" style="width: 50px;height: 45px;margin-top:8px;" />
  674. </i>
  675. <i id="button_delete" class="material-icons sketch_name_icon right"
  676. style="margin-left:5px;cursor: pointer;display: none;">delete</i>
  677. <li>
  678. <input id="sketch_name" placeholder="请输入作品名称" class="sketch_name"
  679. style="background: #fff;padding: 4px 10px 4px 20px;color:#222222;width:220px;font-style: initial;"
  680. type="text">
  681. </li>
  682. <li>
  683. <button id="downloadbutton" class="translatable_sketch_save"
  684. style="color: #fff;font-weight: 700;background: #4A6AFF;border: none;font-size: 15px;padding: 13px 20px;height: 40px;">保存</button>
  685. </li>
  686. <!-- App Center demo -->
  687. <!-- <li>
  688. <a id="app_center_title" href="#app_center_modal" class="modal-trigger lang_resize"
  689. style="position:relative">
  690. <span id="app_center_title_demo">
  691. <span class="translatable_labscenter">Labs</span>
  692. <img class="left nav-icon" src="./icons/cocoblockly-navbar_labs-icon.png">
  693. </span>
  694. </a>
  695. </li> -->
  696. <!-- <li>
  697. <a id="nav_learn" class='dropdown-button lang_resize' data-activates="learn_board"
  698. style="position:relative">
  699. <i class="material-icons left" style="margin-right: 5px;font-size: 34px;">help_outline</i>
  700. <span class="translatable_learn_board">Files</span>
  701. <img class="left nav-icon" src="./icons/learn_nav_icon.png">
  702. </a>
  703. <ul id='learn_board' class='dropdown-content'>
  704. <li>
  705. <a href="//edu.cocorobo.cn/" target="_blank">
  706. <span class="translatable_cocoedu">Education Platform</span>
  707. </a>
  708. </li>
  709. <li class="divider"></li>
  710. <li>
  711. <a href="//aihub.cocorobo.cn" target="_blank">
  712. <span class="translatable_learn_principle">Learn AI: Theory</span>
  713. </a>
  714. </li>
  715. <li class="divider"></li>
  716. <li>
  717. <a href="//aihub.cocorobo.cn/vision" target="_blank">
  718. <span class="translatable_learn_vision">Learn AI: Vision</span>
  719. </a>
  720. </li>
  721. <li class="divider"></li>
  722. <li>
  723. <a href="//aihub.cocorobo.cn/speech" target="_blank">
  724. <span class="translatable_learn_speech">Learn AI: Speech</span>
  725. </a>
  726. </li>
  727. <li class="divider"></li>
  728. <li>
  729. <a href="//aihub.cocorobo.cn/text" target="_blank">
  730. <span class="translatable_learn_text">Learn AI: Text</span>
  731. </a>
  732. </li>
  733. <li class="divider"></li>
  734. <li>
  735. <a href="//beta.aihub.cocorobo.cn/art" target="_blank">
  736. <span class="translatable_learn_art">Learn AI: Art</span>
  737. </a>
  738. </li>
  739. </ul>
  740. </li> -->
  741. <!-- <li>
  742. target="_blank"
  743. <a id="help" style="display: none;" class='dropdown-button lang_resize'
  744. href="//x.help.cocorobo.cn" style="position:relative">
  745. <i class="material-icons left" style="margin-right: 5px;font-size: 34px;">help_outline</i>
  746. <span class="translatable_help_board">Help</span>
  747. <img class="left nav-icon" src="./icons/nav_help.png">
  748. </a>
  749. </li> -->
  750. <!-- <li>
  751. <a target="_blank" id="nav_journal" class='dropdown-button lang_resize' href="/md.html"
  752. style="position:relative">
  753. <span class="translatable_journal">日志</span>
  754. <img class="left nav-icon" src="./icons/news.png">
  755. </a>
  756. </li> -->
  757. <!-- <li>
  758. <a id="help" class='dropdown-button lang_resize' target="_blank" href="//x-help.cocorobo.cn"
  759. style="position:relative">
  760. <i class="material-icons left" style="margin-right: 5px;font-size: 34px;">help_outline</i>
  761. <span class="translatable_help_board">Help</span>
  762. <img class="left nav-icon" src="./icons/nav_help.png">
  763. </a>
  764. <a id="nav_devices" class='dropdown-button lang_resize' style="position:relative">
  765. <span class="translatable_devices">Devices</span>
  766. <img class="left nav-icon" src="./icons/Devices.png">
  767. </a>
  768. </li> -->
  769. <!-- <li style="display: block;">
  770. <a id="local_storage" class='dropdown-button lang_resize' data-activates='local_saveOrOpen'
  771. style="position:relative">
  772. <span class="translatable_storage">Files</span>
  773. <img class="left nav-icon" src="./icons/local_storage.png">
  774. </a>
  775. <ul id='local_saveOrOpen' class='dropdown-content' style="top:62px">
  776. <li id="button_cloud" class='modal-trigger' href="#cloud_storage_modal">
  777. <span class="translatable_cloud_storage">Cloud</span>
  778. </li>
  779. <li class="divider"></li>
  780. <li id="button_load">
  781. <span class="translatable_import">Import</span>
  782. </li>
  783. <li class="divider"></li>
  784. <li id="button_save">
  785. <span class="translatable_export">Export</span>
  786. </li>
  787. </ul>
  788. <div id="fileImport" class="btn" style="display:none;">
  789. <input type="file" accept=".py">
  790. </div>
  791. <div id="xmlFileImport" class="btn" style="display:none;">
  792. <input type="file" accept=".xml">
  793. </div>
  794. <div id="pyFileImport" class="btn" style="display:none;">
  795. <input type="file" accept=".py">
  796. </div>
  797. </li> -->
  798. <!-- <li>
  799. <a id="nav_language" class='dropdown-button lang_resize' data-activates='languages'
  800. style="position:relative">
  801. <span class="translatable_language">Language</span>
  802. <img class="left nav-icon" src="./icons/language2.png">
  803. </a>
  804. <ul id='languages' class='dropdown-content active'>
  805. <li onclick="changeLanguage('en')">
  806. <a>English</a>
  807. </li>
  808. <li class="divider"></li>
  809. <li onclick="changeLanguage('zh-hant')">
  810. <a>繁体中文</a>
  811. </li>
  812. <li class="divider"></li>
  813. <li onclick="changeLanguage('zh-hans')">
  814. <a>简体中文</a>
  815. </li>
  816. </ul>
  817. </li> -->
  818. <!-- <li>
  819. <span class="vertical-separator"></span>
  820. </li> -->
  821. <!-- <li>
  822. <a id="nav_account" href="#login_modal" class="modal-trigger lang_resize"
  823. style="position:relative"
  824. onclick="$('#api-key').html(''); $('#api-key').html($('#cloud_events').val()); document.getElementById('api-key').value = $('#cloud_events').val();">
  825. <span id="account_alias"></span>
  826. <button id="account_loginTitle" class="translatable_login_title"
  827. style="color: #fff;font-weight: 500;width: 80px;height: 35px;border-radius: 30px;background: #fff0;border: 2px solid #fff;margin: 0 0 0 15px;">Login</button>
  828. <span id="account_loginTitle" class="translatable_login_title">Login</span>
  829. <img class="nav-icon2 left" src="./icons/user.png">
  830. </a>
  831. </li> -->
  832. <!--<li>
  833. <a id="back_home" class="lang_resize" target="_blank" href="//cocorobo.cn/online/"
  834. style="position:relative">
  835. <img class="nav-icon2" src="./icons/home_icon.png">
  836. </a>
  837. </li> -->
  838. </ul>
  839. </div>
  840. </nav>
  841. <!-- shadow -->
  842. <div id="main_shadow" class="shadowbox" style="display:none;">
  843. <div id="shadow_content" class="shadow_container">
  844. <div class="shadow_top">
  845. <img src="./images/drag_import.png" style="width:200px">
  846. <p class="translatable_drag_import">Drag and drop your file to here</p>
  847. </div>
  848. </div>
  849. </div>
  850. <!-- Content -->
  851. <div id="main_content" style=" width:100%;overflow:hidden;">
  852. <div id="term" style=" width:100%; height:70%;display:none">
  853. </div>
  854. <div style="height:100%;" id="blockpy-div">
  855. <div>
  856. <div id='blockpy-content' style="height:100%">
  857. <div class="blockpy-editor" style="display:none">
  858. <div class="white blockpy-blocks blockpy-editor-menu"> <img id="fullscreenIcon"
  859. class="fullscreenIcon" src="./images/icon-fullscreen.svg"> <img
  860. id="fullscreenExitIcon" class="fullscreenIcon hidden"
  861. src="./images/icon-fullscreen-exit.svg">
  862. <div class='blockly-div' style="width:100%;height:100%;"></div>
  863. </div>
  864. </div>
  865. <div id="py-editor" class="blockpy-editor card-panel"
  866. style=' height:100%;display:block;overflow:auto;float:left;border-right:1px solid #ccc;'>
  867. <div class="card-header"
  868. style='display:none;position:relative;height: 60px;line-height: 60px;background: #f1f2f5; border-bottom: unset;'>
  869. <!--<span class="header-icon">&lt &gt</span>--> <span id="python_SourceCode" class="header-text translate-code
  870. translatable_pythonSourceCode switch_box switch_select"
  871. style='margin-left: 25px;'>Python
  872. Source Code</span> <span id="Serial_Interaction"
  873. class="header-text switch_box1">串口交互窗</span>
  874. <!-- <i id="repl_delete"
  875. class="material-icons sketch_name_icon right"
  876. style="margin-left: 20px;cursor: pointer;position: absolute;top: 30px;left: 260px;display:none;">delete</i> -->
  877. <div class="editDiv" id="editDiv" style="top: 0;">
  878. <!-- <span class="translatable_editing">Enable Editing</span>
  879. <span style="display: none;" class="translatable_close_editing">Close
  880. Editing</span> -->
  881. <input type="checkbox" id="toggle-button">
  882. <!--label中的for跟input的id绑定。作用是在点击label时选中input或者取消选中input-->
  883. <label for="toggle-button" class="button-label">
  884. <span class="circle"></span>
  885. <span class="text on"></span>
  886. <span class="text off"></span>
  887. </label>
  888. </div>
  889. <a class="copy_code" style="position:absolute;top: 5px;right: 75px;"
  890. data-clipboard-action="copy">
  891. <img src="./images/icon-copy.png" style="width: 33px;margin-top:
  892. 7px;"> </a>
  893. <a class="blockpy-toolbar-download" style="position:absolute;top: 5px;right:
  894. 39px;"> <img src="./images/icon-downward.png" style="width: 33px;margin-top: 7px;">
  895. </a>
  896. <a class="blockpy-toolbar-upload" style="position:absolute;top: 5px;right: 5px;">
  897. <img src="./images/upload.png" style="width: 33px;margin-top: 7px;"> </a>
  898. <img class="fullscreenIcon hidden" src="./images/icon-fullscreen.svg">
  899. <img class="fullscreenIcon hidden" src="./images/icon-fullscreen-exit.svg">
  900. </div>
  901. <div class="card-content" style="position:relative;height:100%;overflow:auto;"
  902. id="python_box">
  903. <div class="blockpy-toolbar" style="position: relative;">
  904. <div class='blockpy-text blockpy-editor-menu'>
  905. <div class='blockpy-text-sidebar'></div>
  906. <textarea readonly class='codemirror-div language-python'></textarea>
  907. </div>
  908. <div style="display: none;" class="edit" id="edit"></div>
  909. <!-- <a class="copy_code" style="position:fixed;top:112px;right:25px;z-index:999;cursor:pointer;" data-clipboard-action="copy"> <img src="./images/icon-copy.svg" width="24px"> </a> <div class="blockpy-toolbar-download" style="position:fixed;top:113px;right:55px;z-index:999;cursor:pointer;"> <img src="./images/icon-downward.svg" width="24px"> </div>-->
  910. </div>
  911. </div>
  912. <!-- <a class="copy_code" style="position:absolute;top:160px;right:70px;z-index:999;cursor:pointer;" data-clipboard-action="copy"> <img src="./images/icon-copy.svg" width="24px"> </a> <div class="blockpy-toolbar-download" style="position:absolute;top:160px;right:95px;z-index:999;cursor:pointer;"> <img src="./images/icon-downward.svg" width="24px"> </div> -->
  913. </div>
  914. <div id='sss' style='display:block;overflow: hidden;'>
  915. <div class='blockpy-content-left card-panel card'
  916. style='display: block;background: #f8f8f8;height: 100%;position:relative;'>
  917. <div class="card-content"
  918. style="position:relative;height: calc(100% - 245px);overflow:auto;padding:5px 10px;background-color: #fff; color: #000;"
  919. id="repl_box">
  920. <div class="editDiv" id="editDiv"
  921. style="width: 100%;left: -10px;background: #E6F1FF;">
  922. <span class="translatable_serial_plotter switch_select"
  923. onclick="switchSerial('1')">The
  924. data to print</span>
  925. <span class="translatable_serial_visualization"
  926. onclick="switchSerial('2')">Visual
  927. display</span>
  928. <i id="repl_delete" class="material-icons sketch_name_icon right"
  929. style="margin-left: 20px;cursor: pointer;position: absolute;top: 6px;right: 12px;display:block;">delete</i>
  930. </div>
  931. <div class="blockpy-toolbar" id="repl_box_content"
  932. style="display:block;padding-top:35px;">
  933. </div>
  934. <div style="width: 100%;height: calc(100% - 50px);display: none;margin: 35px 0 10px 0;position: relative;"
  935. id="echartsShow">
  936. <div id="echartsMain" class="echartsMain"></div>
  937. <div id="echartsMains" style="display: none;">
  938. <span id="echartsMainSpan"></span>
  939. </div>
  940. </div>
  941. </div>
  942. <div class="card-header"
  943. style='height: 60px;line-height: 60px;background: #f1f2f5;text-align: center;'>
  944. <!-- http://help.cocorobo.cn/#/getting-started/info target="_blank"-->
  945. <div style='float:right;display: none;'>
  946. <a class="header-link upload_instruction" style="display: none;" href="#"
  947. data-tooltip-id="61c522fa-be27-2a3e-1f2d-cde212348740">
  948. <img src="./icons/instruction.png">
  949. </a>
  950. <a id="plugin_download" class="header-link" href="javaScript:(0)"
  951. data-tooltip-id="9e546554-688a-01c7-cde3-faaff99b557d"> <img
  952. src="./icons/plugin_download.png">
  953. <img style="position:absolute;height:10px;right:45px;bottom:32px; display:none; "
  954. src="./icons/icon_new.png">
  955. </a>
  956. <a href="#iframe" class="modal-trigger header-link" id="showIframe">
  957. <img src="./icons/firmware.png">
  958. </a>
  959. <!-- <a href="#updatePy" class="modal-trigger header-link">
  960. <img src="./icons/加载.png">
  961. </a> -->
  962. <label class="hidden"><input type="checkbox" class="filled-in" />
  963. <span class="translatable_Adapter_fill_connected filled-in_nocheked"
  964. style="color: #26a69a;font-size: 17px;font-weight: 600;">Adapter is
  965. disconnected</span>
  966. </label>
  967. </div>
  968. <!--<span class="header-icon"><img style="width: 30px;margin: 8px 8px 8px 20px;" src="./images/zhixing.png"> </span>-->
  969. <span class="header-text translate-code translatable_title_device"
  970. style='font-weight: 800;font-size: 20px;margin-left: 25px;display: none;'>Device</span>
  971. <div style="display: none;margin-left: 20px;"><select class="select-connected "
  972. id="select-connected">
  973. <option class="select-connected translatable_select_connecteds"
  974. style="color: #000;">The
  975. cable to upload</option>
  976. <option style="color: #000;" class="translatable_no_select_connecteds">
  977. Wireless cable
  978. upload</option>
  979. </select></div>
  980. <!-- <div id="discnt_icon" style="display:inline-block;">
  981. <a href="#env_detect" class="modal-trigger"><img
  982. style="height:17px;margin-left:8px;transform:translateY(2px);"
  983. src="./icons/uploader_disconnect.png"></a>
  984. </div>
  985. <div id="cnt_icon" style="display:none;"><img
  986. style="height:17px;margin-left:8px;transform:translateY(2px);"
  987. src="./icons/uploader_connect.png"></div> -->
  988. <span id="device_connect_status" class="translatable_device_no_connect"
  989. style="color: #222222;font-family: '微软雅黑';font-size: 16px;font-weight: bold;">硬件(未连接)</span>
  990. <a id="send_string" onclick="sendstring('machine.reset()')" class="waves-effect
  991. waves-light blue disabled"
  992. style="margin-right:0.5rem;background-color: #f1f2f5 !important;float: right;margin-top: 10px;">
  993. <!-- <span id="resetDevice">Reset Device</span> -->
  994. <img id="refresh-disabled" src="./images/icon-refresh-disabled.svg"
  995. style="margin-top: 7px;display: block;">
  996. <img id="refresh" src="./images/icon-refresh.svg"
  997. style="margin-top: 7px;display: none;">
  998. <img id="refresh-press" src="./images/icon-refresh-press.svg"
  999. style="margin-top: 7px;display: none;">
  1000. </a>
  1001. </div>
  1002. <div class="card-content" style="padding:8px 10px;width:100%">
  1003. <div class="row" id="status" style="display: none;">
  1004. <div class="col s12"><img id="error-btn" class="activator"
  1005. src="./icons/error.png">
  1006. <span id="status_bar" class="translatable_statusbar">直接将代码上传到电子模块中。</span>
  1007. </div>
  1008. </div>
  1009. <div class="row" style="width: 100%;margin: 0;margin-top: 20px;">
  1010. <div id="uploader-btns" class="col s6">
  1011. <a onclick='sendfile();' id="send_file" class="waves-effect
  1012. waves-light btn blue disabled"
  1013. style="margin-right:0.5rem;padding:0 0.5rem;">
  1014. <i style="cursor: pointer;" class="fa fa-play-circle"
  1015. aria-hidden="true"></i>
  1016. <span id="runCode"></span>
  1017. </a>
  1018. <a onclick="uploadpyfile()" id="uploadpy" class="waves-effect
  1019. waves-light btn blue disabled" style="padding:0 0.5rem;">
  1020. <i style="cursor: pointer;" class="fa fa-upload" aria-hidden="true"></i>
  1021. <span id="uploadFiles"></span>
  1022. </a>
  1023. <div style="float: right;">
  1024. <li style="display: none;">
  1025. <ul id="localsssssaveOrOpen" class="dropdown-content active">
  1026. <li style="padding: 14px 16px;" onclick="uploadfile(true)">
  1027. <a>开机启动可视化菜单界面</a></li>
  1028. <li style="padding: 14px 16px;" onclick="uploadfile(false)">
  1029. <a>开机运行上次的程序</a></li>
  1030. </ul>
  1031. <a id="qiehuanbtn"
  1032. class="qiehuanbtn btn dropdown-trigger blue lang_resize dropdown-button disabled"
  1033. data-activates="localsssssaveOrOpen"><span
  1034. id="runCuploadFilesode">更换启动模式</span><i
  1035. class="material-icons right"
  1036. style="margin-left: 0;">arrow_drop_down</i></a>
  1037. </li>
  1038. <!-- <a id="send_string" onclick="sendstring('machine.reset()')" class="waves-effect
  1039. waves-light btn blue disabled" style="margin-right:0.5rem;"><span
  1040. id="resetDevice">Reset Device</span></a> -->
  1041. </div>
  1042. </div>
  1043. <a onclick="getmcnty()" class="waves-effect waves-light btn blue"
  1044. style="display:none"><span id="gettype">Upload
  1045. files</span></a>
  1046. <div class="col s6 btn-network" style="padding-right:1px;">
  1047. <div class="select-wrapper initialized"><span class="caret">▼</span><input
  1048. type="text" class="select-dropdown" id="select_dropdown"
  1049. readonly="true"
  1050. data-activates="select-options-eca84f35-6884-7dc4-9d8b-c14115abe698"
  1051. value="检测不到连接端口">
  1052. <ul id="select-options-eca84f35-6884-7dc4-9d8b-c14115abe698" class="dropdown-content
  1053. select-dropdown ">
  1054. <li class="disabled "><span>检测不到连接端口</span></li>
  1055. </ul><select id="ports"
  1056. data-select-id="eca84f35-6884-7dc4-9d8b-c14115abe698"
  1057. class="initialized">
  1058. <option value="null" disabled="">检测不到连接端口</option>
  1059. </select>
  1060. </div>
  1061. </div>
  1062. <div class="col cs6 btn-network hidden" style="padding-right:1px;width: 50%;">
  1063. <div class="select-wrapper initialized" style='width: 61%;float: left;'>
  1064. <input type="text" class="select-dropdown" data-activates=""
  1065. id='ipAddress' placeholder="请输入ip地址">
  1066. </div>
  1067. <div style='display:inline-block'><a onclick='button_click();' class="waves-effect waves-light
  1068. btn blue" style="margin-left: 0.5rem;margin-top: 4px;"><span
  1069. id="ConnectBtn">Connect
  1070. </spanbutton_click></a></div>
  1071. </div>
  1072. </div>
  1073. <!-- <div class="row btn-network hidden">
  1074. <div class="col cs6" style="padding-right:1px;width:100%">
  1075. <div class="select-wrapper initialized" style='float: left;width: 45%;'>
  1076. <input type="text" class="select-dropdown" data-activates=""
  1077. id='ipAddress' placeholder="请输入ip地址">
  1078. </div>
  1079. <div style='display:inline-block'><a onclick='button_click();' class="waves-effect waves-light
  1080. btn blue" style="margin-left: 0.5rem;margin-top: 4px;"><span
  1081. id="ConnectBtn">Connect
  1082. </spanbutton_click></a></div>
  1083. </div>
  1084. </div>
  1085. <div class="row" style="position: absolute;bottom: 15px;width: 98%;margin: 0;">
  1086. <div id="uploader-btns" class="col s12">
  1087. <a onclick='sendfile();' id="send_file" class="waves-effect
  1088. waves-light btn blue disabled"
  1089. style="margin-right:0.5rem;padding:0 0.5rem;">
  1090. <i style="cursor: pointer;" class="fa fa-play-circle"
  1091. aria-hidden="true"></i>
  1092. <span id="runCode"></span>
  1093. </a>
  1094. <a onclick="uploadpyfile()" id="uploadpy" class="waves-effect
  1095. waves-light btn blue disabled" style="padding:0 0.5rem;">
  1096. <i style="cursor: pointer;" class="fa fa-upload" aria-hidden="true"></i>
  1097. <span id="uploadFiles"></span>
  1098. </a>
  1099. <div style="float: right;">
  1100. <li style="display: none;">
  1101. <ul id="localsssssaveOrOpen" class="dropdown-content active">
  1102. <li style="padding: 14px 16px;" onclick="uploadfile(true)">
  1103. <a>开机启动可视化菜单界面</a></li>
  1104. <li style="padding: 14px 16px;" onclick="uploadfile(false)">
  1105. <a>开机运行上次的程序</a></li>
  1106. </ul>
  1107. <a id="qiehuanbtn"
  1108. class="qiehuanbtn btn dropdown-trigger blue lang_resize dropdown-button disabled"
  1109. data-activates="localsssssaveOrOpen"><span
  1110. id="runCuploadFilesode">更换启动模式</span><i
  1111. class="material-icons right"
  1112. style="margin-left: 0;">arrow_drop_down</i></a>
  1113. </li>
  1114. <a id="send_string" onclick="sendstring('machine.reset()')" class="waves-effect
  1115. waves-light btn blue disabled" style="margin-right:0.5rem;"><span
  1116. id="resetDevice">Reset
  1117. Device</span></a>
  1118. </div>
  1119. </div>
  1120. <a onclick="getmcnty()" class="waves-effect waves-light btn blue"
  1121. style="display:none"><span id="gettype">Upload
  1122. files</span></a>
  1123. </div> -->
  1124. <div class="row" id="progress" style="margin-top: 30px;">
  1125. <div class="col s12">
  1126. <div class="progress" style="margin:7px 0;">
  1127. <div class="determinate green" style="width:0%;"></div>
  1128. </div>
  1129. </div>
  1130. </div>
  1131. <div class="row">
  1132. <div class="col s6" style="float: right;">
  1133. <div style="float: right;margin-top: 15px;">
  1134. <div style="display: inline-block;vertical-align: middle;">
  1135. <img id="runSuccess" src="/images/success.png"
  1136. style="display: none;" />
  1137. <img id="runFail" src="/images/fail.png" style="display: none;" />
  1138. </div>
  1139. <div style="display: inline-block;">
  1140. <span id="statusMsg"></span>
  1141. </div>
  1142. </div>
  1143. </div>
  1144. </div>
  1145. </div>
  1146. <div class="blockpy-toolbar btn-toolbar hidden" style="align-self:center;margin: 20px 8px 0;text-align:
  1147. center;">
  1148. <div class="btn-toolbar-title">直接将代码上传到电子模块中<div></div>
  1149. </div>
  1150. <div class="btn-toolbar-inputbox"><input type="text" name="webrepl_url" id="url"
  1151. placeholder="Select a device"><input type="submit" id='button'
  1152. value='Connect' onclick='button_click(); return false'></div>
  1153. <div class="btn-toolbar-btnbox"></div>
  1154. <!--<button onclick='sendfile();' style='width: 80%;background: #6e83cc !important;margin-top: 15px;font-size: 16px;height:45px' class='waves-effect waves-light btn blue blockpy-run translate-execute'>上傳</button>-->
  1155. <!--<button class='waves-effect waves-light btn blue blockpy-run translate-execute'>UPLOAD</button>-->
  1156. <!-- <button href="#aiymodal" class='waves-effect waves-light btn blue modal-trigger'>run on aiy</button> -->
  1157. <!--<button id="resetAll" class='waves-effect waves-light btn blue translate-reset' style="float:right;">reset</button> <button id="clearOutput" class='waves-effect waves-light btn blue translate-clear' style="float:right;margin-right:5px;">clear</button>-->
  1158. </div>
  1159. <div class="blockpy-toolbar btn-toolbar hidden" style="align-self:center;margin: 20px 8px 0;text-align:
  1160. center;">
  1161. <div class="btn-toolbar-title2">直接将代码上传到电子模块中 <div></div>
  1162. </div>
  1163. <div class="btn-toolbar-inputbox2"><select>
  1164. <option>检测不到连接端口</option>
  1165. </select></div>
  1166. </div>
  1167. <div class="card-reveal grey darken-3 white-text" style="padding:8px 13px;">
  1168. <div class="card-title" style="height:18%;margin-bottom:2px;">
  1169. <span class="translatable_errmsg" style="font-weight:normal;">Error
  1170. Message</span>
  1171. <a id="err-copy" style="display:inline-block;margin-left:26px;"
  1172. data-clipboard-action="copy" data-clipboard-target="#err-msg">
  1173. <i class="material-icons right"
  1174. style="color:#fff;font-size:18px;cursor:pointer;">content_copy</i>
  1175. </a>
  1176. <i class="material-icons right" style="cursor:pointer;">close</i>
  1177. </div>
  1178. <div style="width:100%;height:78%;">
  1179. <textarea readonly id="err-msg"
  1180. style="color:#fff;overflow:visible;font-family:consolas;font-size:14px;height:100%;resize:none;border:none;"></textarea>
  1181. </div>
  1182. </div>
  1183. </div>
  1184. <!-- <div class="card plugin_options options_hide">
  1185. <div class="card-content">
  1186. <div>
  1187. <span id="downloadver" style="display:none">1.0.6</span>
  1188. <a download=""
  1189. href="//cocorobo.cn/downloads/CocoBlocklyXUploaderInstallerv1.0.10.pkg"
  1190. target="_black"><img src="./icons/mac-icon.png">Mac </a>
  1191. <a download=""
  1192. href="//cocorobo.cn/downloads/CocoBlocklyXUploaderInstallerv1.0.11.exe"
  1193. target="_black"><img src="./icons/windows-icon.png">Windows </a> </div>
  1194. </div>
  1195. </div> -->
  1196. </div>
  1197. </div>
  1198. </div>
  1199. <div class='modal blockpy-popup'>
  1200. <div class='modal-content' id='modal-message'>
  1201. <div class='modal-header'>
  1202. <h4 class='modal-title'>Dynamic Content</h4>
  1203. </div>
  1204. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;">
  1205. <div class='modal-body' style='width:100%;min-height:200px;'> </div>
  1206. </div>
  1207. <div class='modal-footer'> <button
  1208. class='waves-effect waves-light btn blue modal-close translate-close'>close</button>
  1209. </div>
  1210. </div>
  1211. <div id="aiymodal" class="modal">
  1212. <div class="modal-content" height="50%">
  1213. <h4>Run on AIY</h4>
  1214. <p>This feature gives you the ability to run your AIY python code directly to the AIY Vision Kit
  1215. or Voice Kit, follow the instruction below:</p>
  1216. <div style="margin-top:30px;"> <b
  1217. style="background-color:#fff; border-radius:25px;padding:
  1218. 10px 20px; box-shadow: 1px 5px 23px -10px rgba(0,0,0,0.59);">Step 1</b> </div>
  1219. <div style="margin-top:30px;"> Run the <b data-position="bottom" data-tooltip="I am a
  1220. tooltip" class="tooltipped">AIY Helper</b>, <a id="AIYdownload"
  1221. style="cursor:pointer;">Download</a> the python code to local, <br />make sure you are
  1222. in the same network with the Google AIY Vision Kit. </div>
  1223. <div style="margin-top:30px;"> <b
  1224. style="background-color:#fff; border-radius:25px;padding:
  1225. 10px 20px; box-shadow: 1px 5px 23px -10px rgba(0,0,0,0.59);">Step 2</b> </div>
  1226. <div class="input-field col s9" style="margin-top:0px;"> Enter the IP Address of your Google
  1227. AIY Kit: <div class="input-field inline"> <input id="aiyip_input" class="validate">
  1228. </div> <a id="aiyModalRun" onclick="functionSSH();" style="margin-left:10px;"
  1229. class="waves-effect blue waves-light btn">Run</a> <a id="aiyModalStop"
  1230. onclick="functionSSHstop();" style="margin-left:10px;" class="waves-effect blue
  1231. waves-light btn">Stop</a>
  1232. <!-- <a id="aiyModalRun" style="margin-left:10px;" class="waves-effect blue waves-light btn">Run</a> -->
  1233. <!-- <a id="aiyModalStop" style="margin-left:10px;" class="waves-effect blue waves-light btn">Stop</a> -->
  1234. </div>
  1235. <div id="modal_preload" style="display:none">
  1236. <div style="position:relative;top:50%;transform:translateY(-50%);height:128px;width:128px;margin:0
  1237. auto;">
  1238. <div class="preloader-wrapper big active" style="top:0;left:0">
  1239. <div class="spinner-layer spinner-blue-only">
  1240. <div class="circle-clipper left">
  1241. <div class="circle"></div>
  1242. </div>
  1243. <div class="gap-patch">
  1244. <div class="circle"></div>
  1245. </div>
  1246. <div class="circle-clipper right">
  1247. <div class="circle" style="border-width: 8px;"></div>
  1248. </div>
  1249. </div>
  1250. </div>
  1251. </div>
  1252. </div>
  1253. </div>
  1254. <div class="modal-footer" style="margin-top:-20px;"> <a href="#!" class="modal-close
  1255. waves-effect waves-green btn-flat">Close</a> </div>
  1256. </div>
  1257. </div>
  1258. <!-- <ul id="icon-tool">
  1259. <li class="card-icon active" onclick="">
  1260. <i class="material-icons media">build</i>
  1261. </li>
  1262. <li id="file-tool" class="card-icon">
  1263. <i class="material-icons media">folder</i>
  1264. </li>
  1265. <li id="lang-tool" class="card-icon">
  1266. <i class="material-icons media">translate</i>
  1267. </li>
  1268. </ul> -->
  1269. <ul id="icon-tool" class="card-icon-area" style="display: none;">
  1270. <li class="card-icon active hidden" onclick="changeSideCard('code')">
  1271. <i class="material-icons media">build</i>
  1272. </li>
  1273. <li class="card-icon hidden" onclick="changeSideCard('monitor')">
  1274. <i class="material-icons ">search</i>
  1275. </li>
  1276. <!-- <li class="card-icon" onclick="changeSideCard('fullmode')">
  1277. <i class="material-icons ">crop_free</i>
  1278. </li> -->
  1279. <li id="bar_python" class="card-icon">
  1280. <a href="/python" target="_blank">
  1281. <img class="bar-icon" src="./icons/python_icon.png" style="height: 30px;">
  1282. </a>
  1283. </li>
  1284. <li id="lang-tool" class="card-icon">
  1285. <i class="material-icons">translate</i>
  1286. </li>
  1287. <li id="apps_center" class="card-icon modal-trigger" href="#app_center_modal" style="display:none;">
  1288. <img class="bar-icon Img-filter" src="./icons/cocoblockly-navbar_labs-icon.png">
  1289. </li>
  1290. <li id="bar_storage" class="card-icon">
  1291. <img class="bar-icon" src="./icons/storage_icon-blockly-widget.png">
  1292. </li>
  1293. <!-- http://help.cocorobo.cn/ target="_blank"-->
  1294. <li id="bar_help" class="card-icon">
  1295. <a href="//x-help.cocorobo.cn" target="_blank">
  1296. <img class="bar-icon" src="./icons/help_icon-blockly-widget.png">
  1297. </a>
  1298. </li>
  1299. <li id="bar_ai" class="card-icon" onclick="$('.MouduleBox')[1].style.display = 'block';">
  1300. <a href="#">
  1301. <img class="bar-icon" src="./icons/AIicon.png">
  1302. </a>
  1303. </li>
  1304. <li id="bar_t" class="card-icon modal-trigger" onclick="$('#ai_tt')[0].style.display = 'block';">
  1305. <a href="#">
  1306. <img class="bar-icon" src="./icons/l.png">
  1307. </a>
  1308. </li>
  1309. </ul>
  1310. <a id='side-lang-trigger' class='dropdown-button' data-activates='side-lang'></a>
  1311. <!-- <div id='side-lang-trigger'>
  1312. <a class='dropdown-trigger' data-target='side-lang'></a>
  1313. </div> -->
  1314. <ul id="side-lang" class='dropdown-content'>
  1315. <li onclick="changeLanguage('en')">
  1316. <a>English</a>
  1317. </li>
  1318. <li class="divider"></li>
  1319. <li onclick="changeLanguage('zh-hant')">
  1320. <a>繁体中文</a>
  1321. </li>
  1322. <li class="divider"></li>
  1323. <li onclick="changeLanguage('zh-hans')">
  1324. <a>简体中文</a>
  1325. </li>
  1326. </ul>
  1327. <a id='side-storage-trigger' class='dropdown-button' data-activates='side-storage'></a>
  1328. <ul id='side-storage' class='dropdown-content'>
  1329. <li class='modal-trigger' href="#cloud_storage_modal" style="display:none;">
  1330. <span class="translatable_cloud_storage">Cloud</span>
  1331. </li>
  1332. <li class="divider"></li>
  1333. <li class='modal-trigger' href="#Storage_import_modal">
  1334. <span class="translatable_localimport">Import</span>
  1335. </li>
  1336. <li class="divider"></li>
  1337. <li class='modal-trigger' href="#Storage_export_modal">
  1338. <span class="translatable_localexport">Export</span>
  1339. </li>
  1340. </ul>
  1341. <div id='side-file-trigger'>
  1342. <a class='dropdown-trigger' data-target="side-file"></a>
  1343. </div>
  1344. <ul id='side-file' class='dropdown-content blockpy-toolbar'>
  1345. <li id="side_button_load">
  1346. <span class="translate_import">Import</span>
  1347. </li>
  1348. <li class="divider"></li>
  1349. <li id="side_button_save">
  1350. <span class="translate_export">Export</span>
  1351. </li>
  1352. </ul>
  1353. </div>
  1354. <!-- <footer id="footer">
  1355. <div style="padding:0 1.5rem">
  1356. <div><span class="translatable_copyright" style="color:#fff;">CocoRobo LTD © 2020 Copyright</span></div>
  1357. <div><span>CocoBlockly X Beta</span></div>
  1358. </div>
  1359. </footer> -->
  1360. <!-- app center modal -->
  1361. <div id="app_center_modal" class="modal modal_closes">
  1362. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1363. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1364. <div id="TM_login"></div>
  1365. <div class="modal-content" style="padding: 20px;">
  1366. <span class="modal_close" style="padding: 15px;">
  1367. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  1368. </span>
  1369. <h4 class="translatable_labs_center_modal_title">CocoBlockly X Labs</h4>
  1370. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  1371. <div class="row" style="text-align:left;">
  1372. <div style="float:center;" class="col s3">
  1373. <p class="translatable_app_center_all_categories" style="padding-bottom:0px;font-weight: bold">
  1374. All
  1375. Categories:</p>
  1376. <div id="center_categories" class="collection ">
  1377. <a name="center_ai"
  1378. class="collection-item grey-text text-darken-4 active translatable_app_center_ai"
  1379. onclick="ACCategorySelect(1)">Artificial Intelligence</a>
  1380. <a name="center_iot"
  1381. class="collection-item grey-text text-darken-4 translatable_app_center_iot"
  1382. onclick="ACCategorySelect(2)">Internet of Things</a>
  1383. <a name="center_robot"
  1384. class="collection-item grey-text text-darken-4 translatable_app_center_robot"
  1385. onclick="ACCategorySelect(3)">Robot Controller</a>
  1386. <a name="center_science"
  1387. class="collection-item grey-text text-darken-4 translatable_app_center_science"
  1388. onclick="ACCategorySelect(4)">Science Experiements</a>
  1389. <a name="center_game"
  1390. class="collection-item grey-text text-darken-4 translatable_app_center_games"
  1391. onclick="ACCategorySelect(5)">Games</a>
  1392. <a name="center_arvr"
  1393. class="collection-item grey-text text-darken-4 translatable_app_center_arvr"
  1394. onclick="ACCategorySelect(6)">AR/VR</a>
  1395. </div>
  1396. </div>
  1397. <div style="float:center;padding-top:5px; overflow-y:auto;max-height:400px" class="col s9">
  1398. <div id="center_ai" class=" col s12">
  1399. <h5 class="translatable_app_center_ai">Artificial Intelligence</h5>
  1400. <ul class="tabs">
  1401. <li class="tab col s2"><a href="#center_ai_vision"
  1402. class="translatable_app_center_tab_vision active">Vision</a></li>
  1403. <li class="tab col s2"><a href="#center_ai_speech"
  1404. class="translatable_app_center_tab_speech">Speech</a></li>
  1405. <li class="tab col s2"><a href="#center_ai_text"
  1406. class="translatable_app_center_tab_text">Text</a></li>
  1407. </ul>
  1408. <div id="center_ai_vision" class="col s12">
  1409. <div class="row">
  1410. <div style="float:left;" class="col s6">
  1411. <div class="card">
  1412. <div class="card-image waves-effect waves-block waves-light">
  1413. <img class="" src="icons/AppCenter_ai_teachableMachine.jpg"
  1414. style="border: solid 1.2px lightgray;">
  1415. </div>
  1416. <div class="card-content">
  1417. <!-- <span class="AI_card_content">COCOCLOUD APP</span> -->
  1418. <span id="ac-card-title"
  1419. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_Teachabel_Machine">Teachable
  1420. Machine</span>
  1421. <p class="">
  1422. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1423. href="#setting_teacher">Enter</a>
  1424. </p>
  1425. </div>
  1426. </div>
  1427. </div>
  1428. <div style="float:left;" class="col s6">
  1429. <div class="card">
  1430. <div class="card-image waves-effect waves-block waves-light">
  1431. <!-- <img class="activator" src="icons/app-center_ai_emotion.jpg"> -->
  1432. <img class="" src="icons/AppCenter_ai_emotion.jpg">
  1433. </div>
  1434. <div class="card-content">
  1435. <!-- <span class="AI_card_content">COCOCLOUD APP</span> -->
  1436. <span id="ac-card-title emotion_recognition_enter_button"
  1437. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_emotion_recognition">Emotion
  1438. Recognition</span>
  1439. <p class="">
  1440. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1441. href="#setting_webcam_capture_modal">Enter</a>
  1442. </p>
  1443. </div>
  1444. </div>
  1445. </div>
  1446. </div>
  1447. <div class="row">
  1448. <div style="float:left;" class="col s6">
  1449. <div class="card">
  1450. <div class="card-image waves-effect waves-block waves-light">
  1451. <!-- <img class="activator" src="icons/app-center_ai_emotion.jpg"> -->
  1452. <img class="" src="icons/AppCenter_ai_gesture_recognition.jpg">
  1453. </div>
  1454. <div class="card-content">
  1455. <!-- <span class="AI_card_content">COCOCLOUD APP</span> -->
  1456. <span id="ac-card-title emotion_recognition_enter_button"
  1457. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_gesture_recognition translatable_gesturesTitle">Gesture
  1458. Recognition</span>
  1459. <p class="">
  1460. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1461. href="#setting_gesture_recog_modal">Enter</a>
  1462. </p>
  1463. </div>
  1464. </div>
  1465. </div>
  1466. <div style="float:left;" class="col s6">
  1467. <div class="card">
  1468. <div class="card-image waves-effect waves-block waves-light">
  1469. <!-- <img class="activator" src="icons/app-center_ai_emotion.jpg"> -->
  1470. <img class="" src="icons/object_recognition_header.jpg">
  1471. </div>
  1472. <div class="card-content">
  1473. <!-- <span class="AI_card_content">COCOCLOUD APP</span> -->
  1474. <span id="ac-card-title emotion_recognition_enter_button"
  1475. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_object_recognition translatable_objectRecognition">Object
  1476. Recognition</span>
  1477. <p class="">
  1478. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1479. href="#setting_objectRecog">Enter</a>
  1480. </p>
  1481. </div>
  1482. </div>
  1483. </div>
  1484. <div style="float:left;" class="col s6">
  1485. <div class="card">
  1486. <div class="card-image waves-effect waves-block waves-light">
  1487. <!-- <img class="activator" src="icons/app-center_ai_emotion.jpg"> -->
  1488. <img class="" src="icons/posenet_recogition.png">
  1489. </div>
  1490. <div class="card-content">
  1491. <!-- <span class="AI_card_content">COCOCLOUD APP</span> -->
  1492. <span id="ac-card-title emotion_recognition_enter_button"
  1493. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_object_recognition translatable_posenetRecognition">Posenet
  1494. Recognition</span>
  1495. <p class="">
  1496. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1497. href="#setting_posenetRecog">Enter</a>
  1498. </p>
  1499. </div>
  1500. </div>
  1501. </div>
  1502. <div style="float:left;" class="col s6">
  1503. <div class="card">
  1504. <div class="card-image waves-effect waves-block waves-light">
  1505. <img class="" src="images/tm_with_pose.jpg"
  1506. style="border: solid 1.2px lightgray;">
  1507. </div>
  1508. <div class="card-content">
  1509. <!-- <span class="AI_card_content">COCOCLOUD APP</span> -->
  1510. <span id="ac-card-title"
  1511. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_Teachabel_Machine_posenet">Teachable
  1512. Machine (with Pose Recognition)</span>
  1513. <p class="">
  1514. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1515. href="#setting_teacher_ponsenet">Enter</a>
  1516. </p>
  1517. </div>
  1518. </div>
  1519. </div>
  1520. </div>
  1521. </div>
  1522. <div id="center_ai_speech" class="col s12">
  1523. <div style="float:center;" class="col s6">
  1524. <div class="card">
  1525. <div class="card-image waves-effect waves-block waves-light">
  1526. <img class="" src="icons/AppCenter_ai_speech.jpg">
  1527. </div>
  1528. <div class="card-content">
  1529. <!-- <span class="AI_card_content">COCOCLOUD APP</span> -->
  1530. <span id="ac-card-title"
  1531. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_speech_recognition">Speech
  1532. Recognition</span>
  1533. <p class="">
  1534. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1535. href="#voice_input_modal">Enter</a>
  1536. </p>
  1537. </div>
  1538. </div>
  1539. </div>
  1540. </div>
  1541. <div id="center_ai_text" class="col s12">
  1542. <div style="float:center;" class="col s6">
  1543. <div class="card">
  1544. <div class="card-image waves-effect waves-block waves-light">
  1545. <img class="" src="./icons/AppCenter_comingSoon.jpg">
  1546. </div>
  1547. <div class="card-content">
  1548. <span id="ac-card-title"
  1549. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_wait_to_come">Comming
  1550. soon</span>
  1551. <p class="">
  1552. <!-- <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button disabled" href="#">Enter</a> -->
  1553. </p>
  1554. </div>
  1555. </div>
  1556. </div>
  1557. </div>
  1558. </div>
  1559. <div id="center_iot" class=" col s12" style="display:none">
  1560. <h5 class="translatable_app_center_iot">Internet of Things</h5>
  1561. <div style="float:center;" class="col s6">
  1562. <div class="card">
  1563. <div class="card-image waves-effect waves-block waves-light">
  1564. <img class="" src="icons/AppCenter_iot_thingspeak.jpg">
  1565. </div>
  1566. <div class="card-content">
  1567. <!-- <span class="AI_card_content">3RD-PARTY APP</span> -->
  1568. <span id="ac-card-title"
  1569. class="ac-card-title card-title activator grey-text text-darken-4 ">ThingSpeak</span>
  1570. <p class="">
  1571. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1572. href="https://thingspeak.com" target="_blank">Enter</a>
  1573. </p>
  1574. </div>
  1575. </div>
  1576. </div>
  1577. <div style="float:center;" class="col s6">
  1578. <div class="card">
  1579. <div class="card-image waves-effect waves-block waves-light">
  1580. <img class="" src="icons/AppCenter_iot_ifttt.jpg">
  1581. </div>
  1582. <div class="card-content">
  1583. <!-- <span class="AI_card_content">3RD-PARTY APP</span> -->
  1584. <span id="ac-card-title"
  1585. class="ac-card-title card-title activator grey-text text-darken-4 ">IFTTT</span>
  1586. <p class="">
  1587. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1588. href="https://ifttt.com/maker_webhooks" target="_blank">Enter</a>
  1589. </p>
  1590. </div>
  1591. </div>
  1592. </div>
  1593. </div>
  1594. <div id="center_robot" class=" col s12" style="display:none">
  1595. <h5 class="translatable_app_center_robot">Robot Controller</h5>
  1596. <div style="float:center;" class="col s6">
  1597. <div class="card">
  1598. <div class="card-image waves-effect waves-block waves-light">
  1599. <img class="" src="./icons/AppCenter_comingSoon.jpg">
  1600. </div>
  1601. <div class="card-content">
  1602. <span id="ac-card-title"
  1603. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_wait_to_come">Comming
  1604. soon</span>
  1605. <p class="">
  1606. <!-- <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button disabled" href="#">Enter</a> -->
  1607. </p>
  1608. </div>
  1609. </div>
  1610. </div>
  1611. </div>
  1612. <div id="center_science" class="col s12" style="display:none">
  1613. <h5 class="translatable_app_center_science">Science Experiements</h5>
  1614. <div style="float:center;" class="col s6">
  1615. <div class="card">
  1616. <div class="card-image waves-effect waves-block waves-light">
  1617. <img class="" src="./icons/AppCenter_comingSoon.jpg">
  1618. </div>
  1619. <div class="card-content">
  1620. <span id="ac-card-title"
  1621. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_wait_to_come">Comming
  1622. soon</span>
  1623. <p class="">
  1624. <!-- <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button disabled" href="#">Enter</a> -->
  1625. </p>
  1626. </div>
  1627. </div>
  1628. </div>
  1629. </div>
  1630. <div id="center_game" class=" col s12" style="display:none">
  1631. <h5 class="translatable_app_center_games">Interactive Games</h5>
  1632. <div style="float:center;" class="col s6">
  1633. <div class="card">
  1634. <div class="card-image waves-effect waves-block waves-light">
  1635. <img class="" src="./icons/AppCenter_game_floppy-bird.jpg">
  1636. </div>
  1637. <div class="card-content">
  1638. <!-- <span class="AI_card_content">3RD-PARTY APP</span> -->
  1639. <span id="ac-card-title"
  1640. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_game_flappy">Floppy
  1641. bird</span>
  1642. <p class="">
  1643. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button "
  1644. href="https://cocorobo.cn/demo/floppybird/" target="_blank">Enter</a>
  1645. </p>
  1646. </div>
  1647. </div>
  1648. </div>
  1649. <div style="float:center;" class="col s6">
  1650. <div class="card">
  1651. <div class="card-image waves-effect waves-block waves-light">
  1652. <img class="" src="icons/AppCenter_game_space_lamb.jpg">
  1653. </div>
  1654. <div class="card-content">
  1655. <!-- <span class="AI_card_content">3RD-PARTY APP</span> -->
  1656. <span id="ac-card-title"
  1657. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_game_space_lamb">Space
  1658. Lamb</span>
  1659. <p class="">
  1660. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button "
  1661. href="https://spacelamb.12wave.com" target="_blank">Enter</a>
  1662. </p>
  1663. </div>
  1664. </div>
  1665. </div>
  1666. </div>
  1667. <div id="center_arvr" class=" col s12" style="display:none">
  1668. <h5 class="translatable_app_center_arvr">AR/VR</h5>
  1669. <div style="float:center;" class="col s6">
  1670. <div class="card">
  1671. <div class="card-image waves-effect waves-block waves-light">
  1672. <!-- <img class="activator" src="icons/app-center_ai_speech.jpg"> -->
  1673. <img class="" src="icons/AppCenter_comingSoon.jpg">
  1674. </div>
  1675. <div class="card-content">
  1676. <span id="ac-card-title"
  1677. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_wait_to_come">Comming
  1678. soon</span>
  1679. <p class="">
  1680. <!-- <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button disabled" href="#">Enter</a> -->
  1681. </p>
  1682. </div>
  1683. </div>
  1684. </div>
  1685. </div>
  1686. </div>
  1687. </div>
  1688. </div>
  1689. </div>
  1690. <!-- 显示Teachable Machine modal配置弹框 -->
  1691. <div id="setting_teacher" class="modal modal_closes">
  1692. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1693. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1694. <div class="modal-content" style="padding: 20px;">
  1695. <span class="modal_close" style="padding: 15px;">
  1696. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  1697. </span>
  1698. <h4 class="translatable_labs_center_modal_title">CocoBlockly Labs</h4>
  1699. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  1700. <div style="display:flex;justify-content:space-around;">
  1701. <div class="modal_setting_teacher_left setting_left_all">
  1702. <div class="card-image waves-effect waves-block waves-light">
  1703. <img class="" src="icons/AppCenter_ai_teachableMachine.jpg"
  1704. style="border: solid 1.2px lightgray;width: 100%;">
  1705. </div>
  1706. <div>
  1707. <span id="ac-card-title"
  1708. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_Teachabel_Machine"
  1709. style="font-size: 30px;">Teachable
  1710. Machine</span>
  1711. <p class="translatable_Teachabel_Machin_content">The trend of robot development is
  1712. artificial
  1713. intelligence. Deep learning is the frontier technology of intelligent robot and a new
  1714. topic
  1715. in the field of machine learning.Deep learning technology is widely used in agriculture,
  1716. industry, military, aviation and other fields, and the organic combination with machines
  1717. can
  1718. design intelligent robots with high working efficiency, high real-time and high
  1719. accuracy.
  1720. </p>
  1721. </div>
  1722. </div>
  1723. <div class="modal_setting_teacher_right setting_right_all">
  1724. <div class="translatable_computer_configuration"
  1725. style="background: rgb(33, 150, 243);padding: 5px 10px;color: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;">
  1726. <span>Computer Configuration Requirements</span>
  1727. </div>
  1728. <div class="setting_border">
  1729. <p><span class="translatable_the_operating_system">Minimum Opearting System
  1730. version</span>:Windows (>Windows7), macOS (>10.11)</p>
  1731. <p><span class="translatable_resolution_of_the">Suggested Resolution
  1732. Supported</span>:1440*768
  1733. </p>
  1734. <p><span class="translatable_memory_capacity">Memory Capacity</span>:8GB-16GB</p>
  1735. <p><span class="translatable_the_hard_disk">The Hard Disk</span>:256GB-512Gb</p>
  1736. <p><span class="translatable_the_graphics_card">The Graphics Card</span>:650M</p>
  1737. <p><span class="translatable_is_need_camera">Do you need a camera</span>:<span
  1738. class="translatable_need">OK</span></p>
  1739. <p><span class="translatable_is_need_microphone">Do you need a microphone</span>:<span
  1740. class="translatable_no_need">NO</span></p>
  1741. </div>
  1742. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1743. href="#Teachable_Machine" style="width: 94%;position: absolute;bottom: 5px;">Enter</a>
  1744. </div>
  1745. </div>
  1746. </div>
  1747. </div>
  1748. <!--Teachable Machine modal-->
  1749. <div id="Teachable_Machine" class="modal TM_class modal_closes">
  1750. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1751. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1752. <div id="TM_login" style="margin-top:10px;top:10%;position:relative"></div>
  1753. <div id="TM_iframe" style="height:100%; width:100%; display:none"></div>
  1754. <div id="teachable_modal" class="object_modal">
  1755. <img src="./gif/loading.gif"
  1756. style="position: absolute;top: calc(50% - 140px);width: 500px;left: calc(50% - 250px);" />
  1757. </div>
  1758. </div>
  1759. <!-- 显示Teachable Machine modal配置弹框 -->
  1760. <div id="setting_teacher_ponsenet" class="modal modal_closes">
  1761. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1762. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1763. <div class="modal-content" style="padding: 20px;">
  1764. <h4 class="translatable_labs_center_modal_title">CocoBlockly Labs</h4>
  1765. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  1766. <div style="display:flex;justify-content:space-around;">
  1767. <div class="modal_setting_teacher_left setting_left_all">
  1768. <div class="card-image waves-effect waves-block waves-light">
  1769. <img class="" src="images/tm_with_pose.jpg"
  1770. style="border: solid 1.2px lightgray;width: 100%;">
  1771. </div>
  1772. <div>
  1773. <span id="ac-card-title"
  1774. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_Teachabel_Machine_posenet"
  1775. style="font-size: 30px;">Teachable
  1776. Machine</span>
  1777. <p class="translatable_Teachabel_Machin_content">The trend of robot development is
  1778. artificial
  1779. intelligence. Deep learning is the frontier technology of intelligent robot and a new
  1780. topic
  1781. in the field of machine learning.Deep learning technology is widely used in agriculture,
  1782. industry, military, aviation and other fields, and the organic combination with machines
  1783. can
  1784. design intelligent robots with high working efficiency, high real-time and high
  1785. accuracy.
  1786. </p>
  1787. </div>
  1788. </div>
  1789. <div class="modal_setting_teacher_right setting_right_all">
  1790. <div class="translatable_computer_configuration"
  1791. style="background: rgb(33, 150, 243);padding: 5px 10px;color: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;">
  1792. <span>Computer Configuration Requirements</span>
  1793. </div>
  1794. <div class="setting_border">
  1795. <p><span class="translatable_the_operating_system">Minimum Opearting System
  1796. version</span>:Windows (>Windows7), macOS (>10.11)</p>
  1797. <p><span class="translatable_resolution_of_the">Suggested Resolution
  1798. Supported</span>:1440*768
  1799. </p>
  1800. <p><span class="translatable_memory_capacity">Memory Capacity</span>:8GB-16GB</p>
  1801. <p><span class="translatable_the_hard_disk">The Hard Disk</span>:256GB-512Gb</p>
  1802. <p><span class="translatable_the_graphics_card">The Graphics Card</span>:650M</p>
  1803. <p><span class="translatable_is_need_camera">Do you need a camera</span>:<span
  1804. class="translatable_need">OK</span></p>
  1805. <p><span class="translatable_is_need_microphone">Do you need a microphone</span>:<span
  1806. class="translatable_no_need">NO</span></p>
  1807. </div>
  1808. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1809. href="#Teachable_Machine_ponsenet"
  1810. style="width: 94%;position: absolute;bottom: 5px;">Enter</a>
  1811. </div>
  1812. </div>
  1813. </div>
  1814. </div>
  1815. <!--Teachable Machine modal-->
  1816. <div id="Teachable_Machine_ponsenet" class="modal TM_class modal_closes" style="position:relative">
  1817. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1818. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1819. <div id="TM_posenet_login" style="margin-top:10px;top:10%;position:relative"></div>
  1820. <div id="TM_posenet_iframe" style="height:100%; width:100%;"></div>
  1821. <div id="teachable_posenet_modal" class="object_modal">
  1822. <img src="./gif/loading.gif"
  1823. style="position: absolute;top: calc(50% - 140px);width: 500px;left: calc(50% - 250px);" />
  1824. </div>
  1825. </div>
  1826. <!-- 显示Object Recog_modal modal配置弹框-->
  1827. <div id="setting_objectRecog" class="modal modal_closes">
  1828. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1829. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1830. <div class="modal-content" style="padding: 20px;">
  1831. <span class="modal_close" style="padding: 15px;">
  1832. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  1833. </span>
  1834. <h4 class="translatable_labs_center_modal_title">CocoBlockly Labs</h4>
  1835. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  1836. <div style="display: flex;justify-content:space-around;">
  1837. <div class="modal_setting_objectRecog_left setting_left_all">
  1838. <div class="card-image waves-effect waves-block waves-light">
  1839. <img class="" src="icons/object_recognition_header.jpg"
  1840. style="border: solid 1.2px lightgray;width: 100%;">
  1841. </div>
  1842. <div>
  1843. <span id="ac-card-title emotion_recognition_enter_button" class="ac-card-title card-title activator grey-text text-darken-4
  1844. translatable_app_center_object_recognition translatable_objectRecognition"
  1845. style="font-size: 30px;">Object
  1846. Recognition</span>
  1847. <p class="translatable_objectRecognition_content">The development trend of object
  1848. recognition is
  1849. artificial intelligence. Object recognition is the frontier technology of intelligent
  1850. recognition and a new subject in the field of recognition.Object recognition technology
  1851. is
  1852. widely used in agriculture, industry, military, aviation and other fields.
  1853. </p>
  1854. </div>
  1855. </div>
  1856. <div class="modal_setting_objectRecog_right setting_right_all" style="width: 48%;">
  1857. <div class="translatable_computer_configuration"
  1858. style="background: rgb(33, 150, 243);padding: 5px 10px;color: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;">
  1859. <span>Computer Configuration Requirements</span>
  1860. </div>
  1861. <div class="setting_border">
  1862. <p><span class="translatable_the_operating_system">Minimum Opearting System
  1863. version</span>:Windows (>Windows7), macOS (>10.11)</p>
  1864. <p><span class="translatable_resolution_of_the">Suggested Resolution
  1865. Supported</span>:1440*768
  1866. </p>
  1867. <p><span class="translatable_memory_capacity">Memory Capacity</span>:8GB-16GB</p>
  1868. <p><span class="translatable_the_hard_disk">The Hard Disk</span>:256GB-512Gb</p>
  1869. <p><span class="translatable_the_graphics_card">The Graphics Card</span>:650M</p>
  1870. <p><span class="translatable_is_need_camera">Do you need a camera</span>:<span
  1871. class="translatable_need">OK</span></p>
  1872. <p><span class="translatable_is_need_microphone">Do you need a microphone</span>:<span
  1873. class="translatable_no_need">NO</span></p>
  1874. </div>
  1875. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1876. href="#Object_recog_modal" style="width: 94%;position: absolute;bottom: 5px;">Enter</a>
  1877. </div>
  1878. </div>
  1879. </div>
  1880. </div>
  1881. <!--Object Recog_modal modal-->
  1882. <div id="Object_recog_modal" class="modal TM_class modal_closes" style="position:relative">
  1883. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1884. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1885. <div id="TM_login_object" style="margin-top:10px;top:10%;position:relative"></div>
  1886. <div id="TM_iframe_object" style="height:100%; width:100%; display:none"></div>
  1887. <div id="object_modal" class="object_modal">
  1888. <img src="./gif/loading.gif"
  1889. style="position: absolute;top: calc(50% - 140px);width: 500px;left: calc(50% - 250px);" />
  1890. </div>
  1891. </div>
  1892. <!-- 显示posenet Recog_modal modal配置弹框 -->
  1893. <div id="setting_posenetRecog" class="modal modal_closes">
  1894. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1895. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1896. <div class="modal-content" style="padding: 20px;">
  1897. <span class="modal_close" style="padding: 15px;">
  1898. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  1899. </span>
  1900. <h4 class="translatable_labs_center_modal_title">CocoBlockly Labs</h4>
  1901. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  1902. <div style="display: flex;justify-content:space-around;">
  1903. <div class="modal_setting_objectRecog_left setting_left_all">
  1904. <div class="card-image waves-effect waves-block waves-light">
  1905. <img class="" src="icons/posenet_recogition.png"
  1906. style="border: solid 1.2px lightgray;width: 100%;">
  1907. </div>
  1908. <div>
  1909. <span id="ac-card-title emotion_recognition_enter_button" class="ac-card-title card-title activator grey-text text-darken-4
  1910. translatable_app_center_object_recognition translatable_posenetRecognition"
  1911. style="font-size: 30px;">Posenet
  1912. Recognition</span>
  1913. <p class="translatable_posenetRecognition_content">The development trend of object
  1914. recognition
  1915. is
  1916. artificial intelligence. Object recognition is the frontier technology of intelligent
  1917. recognition and a new subject in the field of recognition.Object recognition technology
  1918. is
  1919. widely used in agriculture, industry, military, aviation and other fields.
  1920. </p>
  1921. </div>
  1922. </div>
  1923. <div class="modal_setting_objectRecog_right setting_right_all" style="width: 48%;">
  1924. <div class="translatable_computer_configuration"
  1925. style="background: rgb(33, 150, 243);padding: 5px 10px;color: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;">
  1926. <span>Computer Configuration Requirements</span>
  1927. </div>
  1928. <div class="setting_border">
  1929. <p><span class="translatable_the_operating_system">Minimum Opearting System
  1930. version</span>:Windows (>Windows7), macOS (>10.11)</p>
  1931. <p><span class="translatable_resolution_of_the">Suggested Resolution
  1932. Supported</span>:1440*768
  1933. </p>
  1934. <p><span class="translatable_memory_capacity">Memory Capacity</span>:8GB-16GB</p>
  1935. <p><span class="translatable_the_hard_disk">The Hard Disk</span>:256GB-512Gb</p>
  1936. <p><span class="translatable_the_graphics_card">The Graphics Card</span>:650M</p>
  1937. <p><span class="translatable_is_need_camera">Do you need a camera</span>:<span
  1938. class="translatable_need">OK</span></p>
  1939. <p><span class="translatable_is_need_microphone">Do you need a microphone</span>:<span
  1940. class="translatable_no_need">NO</span></p>
  1941. </div>
  1942. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  1943. href="#Posent_recog_modal" style="width: 94%;position: absolute;bottom: 5px;">Enter</a>
  1944. </div>
  1945. </div>
  1946. </div>
  1947. </div>
  1948. <!--Object Recog_modal modal-->
  1949. <div id="Posent_recog_modal" class="modal TM_class modal_closes" style="position:relative">
  1950. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1951. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1952. <div id="TM_login_posenet" style="margin-top:10px;top:10%;position:relative"></div>
  1953. <div id="TM_iframe_posenet" style="height:100%; width:100%; display:none"></div>
  1954. <div id="posenet_modal" class="object_modal">
  1955. <img src="./gif/loading.gif"
  1956. style="position: absolute;top: calc(50% - 140px);width: 500px;left: calc(50% - 250px);" />
  1957. </div>
  1958. </div>
  1959. <!-- 显示webcam input modal配置弹框 -->
  1960. <div id="setting_webcam_capture_modal" class="modal modal_closes">
  1961. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  1962. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  1963. <div class="modal-content" style="padding: 20px;">
  1964. <span class="modal_close" style="padding: 15px;">
  1965. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  1966. </span>
  1967. <h4 class="translatable_labs_center_modal_title">CocoBlockly Labs</h4>
  1968. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  1969. <div style="display:flex;justify-content:space-around;">
  1970. <div class="modal_setting_teacher_left setting_left_all">
  1971. <div class="card-image waves-effect waves-block waves-light">
  1972. <img class="" src="icons/AppCenter_ai_emotion.jpg"
  1973. style="border: solid 1.2px lightgray;width: 100%;">
  1974. </div>
  1975. <div>
  1976. <span id="ac-card-title emotion_recognition_enter_button"
  1977. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_emotion_recognition"
  1978. style="font-size: 30px;">Emotion
  1979. Recognition</span>
  1980. <p class="translatable_webcam_capture_content">The trend of robot development is artificial
  1981. intelligence. Deep learning is the frontier technology of intelligent robot and a new
  1982. topic
  1983. in the field of machine learning.Deep learning technology is widely used in agriculture,
  1984. industry, military, aviation and other fields, and the organic combination with machines
  1985. can
  1986. design intelligent robots with high working efficiency, high real-time and high
  1987. accuracy.
  1988. </p>
  1989. </div>
  1990. </div>
  1991. <div class="modal_setting_teacher_right setting_right_all">
  1992. <div class="translatable_computer_configuration"
  1993. style="background: rgb(33, 150, 243);padding: 5px 10px;color: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;">
  1994. <span>Computer Configuration Requirements</span>
  1995. </div>
  1996. <div class="setting_border">
  1997. <p><span class="translatable_the_operating_system">Minimum Opearting System
  1998. version</span>:Windows (>Windows7), macOS (>10.11)</p>
  1999. <p><span class="translatable_resolution_of_the">Suggested Resolution
  2000. Supported</span>:1440*768
  2001. </p>
  2002. <p><span class="translatable_memory_capacity">Memory Capacity</span>:8GB-16GB</p>
  2003. <p><span class="translatable_the_hard_disk">The Hard Disk</span>:256GB-512Gb</p>
  2004. <p><span class="translatable_the_graphics_card">The Graphics Card</span>:650M</p>
  2005. <p><span class="translatable_is_need_camera">Do you need a camera</span>:<span
  2006. class="translatable_need">Ok</span></p>
  2007. <p><span class="translatable_is_need_microphone">Do you need a microphone</span>:<span
  2008. class="translatable_no_need">NO</span></p>
  2009. </div>
  2010. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  2011. href="#webcam_capture_modal" style="width: 94%;position: absolute;bottom: 5px;">Enter</a>
  2012. </div>
  2013. </div>
  2014. </div>
  2015. </div>
  2016. <!-- webcam input modal -->
  2017. <div id="webcam_capture_modal" class="modal">
  2018. <div id="emotionRecognitionTitle" class="modal-content">
  2019. <div style="margin-bottom:-10px;margin-top:10px;" class="row">
  2020. <div class="col s8">
  2021. <h4 class="translatable_webcamDemoTitle">Emotion Recognition</h4>
  2022. </div>
  2023. <div style="text-align:right;" class="col s4">
  2024. <a style="cursor: pointer;text-decoration:none; color:rgba(0,0,0.9);"
  2025. id="emotion_recognition_close" class="modal-action modal-close">
  2026. <h4><i class="small material-icons">close</i></h4>
  2027. </a>
  2028. </div>
  2029. </div>
  2030. <!--<div> <span class="translatable_cloudFileTooltip" sytle="margin-left:10px">Type project's name and click save</span></div>-->
  2031. <div class="row">
  2032. <div class="col s12">
  2033. <div class="switch" style="margin-bottom:20px;">
  2034. <label>
  2035. <span class="translatable_emotion_camera_off">Camera Off</span>
  2036. <input id="camera_switch" type="checkbox" onclick="cameraSwitch()">
  2037. <span class="lever "></span><span class="translatable_emotion_camera_on">On</span>
  2038. </label>
  2039. </div>
  2040. </div>
  2041. </div>
  2042. <div class="row" style="text-align:left;">
  2043. <div style="float:center;" class="col s6">
  2044. <p class="translatable_face_webcam" style="margin-top:-20px;">Webcam:</p>
  2045. <div id="webCamera"></div>
  2046. <div class="translatable_emotion_camera_turnon_text" id="webCamPlaceholder">Turn on the Camera
  2047. first
  2048. </div>
  2049. </div>
  2050. <div style="float:center;" class="col s6">
  2051. <p class="translatable_face_latest_snapshot" style="margin-top:-20px;">Last snapshot:</p>
  2052. <div id="emotionResults"></div>
  2053. <div class="translatable_emotion_snapshot_text" id="SnapshotPlaceholder">Your snapshot will be
  2054. here
  2055. </div>
  2056. </div>
  2057. </div>
  2058. <div class="row">
  2059. <div class="col s12">
  2060. <a id="emotionRequestStatus"
  2061. class="disabled waves-effect waves-light btn blue translatable_face_analyze"
  2062. onclick="processImage()">Analyze</a>
  2063. <span id="azureRequestStatusText" style="padding-left:20px;"> </span>
  2064. </div>
  2065. </div>
  2066. <div class="row" style="text-align:left;">
  2067. <div id="emotionResultsAll" class="col s12">
  2068. <span class="translatable_emotion_result_title" id="facialanalysistitle"
  2069. style="font-weight:200;">Facial Analysis:</span>
  2070. <div style="display: flex;flex-wrap: wrap;margin-top: 10px;">
  2071. <p id="emotionResultsAll_property" style="width: 50%;">
  2072. <b class="translatable_emotion_result_age_title">Age:</b>
  2073. <span id="emotionResults_age"
  2074. class="emotionResultsAll_single translatable_emotion_result_default">Nothing
  2075. detected.</span>
  2076. </p>
  2077. <p id="emotionResultsAll_property" style="width: 50%;">
  2078. <b class="translatable_emotion_result_emotion_title">Emotion:</b>
  2079. <span id="emotionResults_emotion"
  2080. class="emotionResultsAll_single translatable_emotion_result_default">Nothing
  2081. detected.</span>
  2082. </p>
  2083. <p id="emotionResultsAll_property" style="width: 50%;">
  2084. <b class="translatable_emotion_result_gender_title">Gender:</b>
  2085. <span id="emotionResults_gender"
  2086. class="emotionResultsAll_single translatable_emotion_result_default">Nothing
  2087. detected.</span>
  2088. </p>
  2089. <p id="emotionResultsAll_property" style="width: 50%;">
  2090. <b class="translatable_emotion_result_glasses_title">Glasses:</b>
  2091. <span id="emotionResults_glasses"
  2092. class="emotionResultsAll_single translatable_emotion_result_default">Nothing
  2093. detected.</span>
  2094. </p>
  2095. <!-- <p id="emotionResultsAll_property" style="width: 50%;">
  2096. <b class="translatable_emotion_result_appearance_title">Appearance:</b>
  2097. <span id="emotionResults_appearance"
  2098. class="emotionResultsAll_single translatable_emotion_result_default">Nothing
  2099. detected.</span>
  2100. </p> -->
  2101. <p id="emotionResultsAll_property" style="width: 50%;">
  2102. <b class="translatable_emotion_result_expression_title">Expression:</b>
  2103. <span id="emotionResults_expression" class="emotionResultsAll_single">Nothing
  2104. detected.</span>
  2105. </p>
  2106. <p id="emotionResultsAll_property"
  2107. style="width: 100%;border-top: 1px solid #ccc;margin-top: 10px;padding-top: 10px;">
  2108. <b class="translatable_emotion_result_expression_title">Emotion:</b>
  2109. <span class="emotionResultsAll_single">smile、laugh、none</span>
  2110. </p>
  2111. <p id="emotionResultsAll_property" style="width: 100%;">
  2112. <b class="translatable_emotion_result_emotion_title">Expression:</b>
  2113. <span
  2114. class="emotionResultsAll_single">angry、disgust、fear、happy、sad、surprise、neutral、pouty、grimace</span>
  2115. </p>
  2116. </div>
  2117. </div>
  2118. <div class="col s12 select_send_way" style="position: relative; margin:12px 0;padding: 0;">
  2119. <span class="select_send_way_color translatable_send_cloud">Send Cloud</span>
  2120. <!-- <span class="translatable_send_module">Send Module</span> -->
  2121. </div>
  2122. </div>
  2123. <div class="row">
  2124. <div class="col s12 send_cloud" style="position: relative">
  2125. <div id="cloudRequestStatus" class="col s12">
  2126. </div>
  2127. <div class="translatable_selectEvent">Choose a CocoCloud event here, the analyzed result will
  2128. directly send to there</div>
  2129. <div style="width:100%;margin-top: 15px;">
  2130. <select class="browser-default" id="AI_webcam_events">
  2131. <option class="translatable_noEvent" value=null disabled>No event here. Login first
  2132. </option>
  2133. </select>
  2134. </div>
  2135. <span style="float:right;top: -45px;position: relative;margin-top: -38px;">
  2136. <i id="update_Coevent_web" class="material-icons">autorenew</i>
  2137. </span>
  2138. </div>
  2139. <div class="col s12 send_module" style="position: relative;display: none;height: 100px;">
  2140. <div class="translatable_send_module">Send Module</div>
  2141. <div class="col s6" style="margin-top:2px;padding: 0;">
  2142. <span class="translatable_send_result">Send Result:</span>
  2143. <select class="browser-default" id="select_send_capture"
  2144. style="width: 120px;display: inline-block;height: 35px;">
  2145. <option value="emotionResults_age" class="translatable_emotion_result_age_title">Age
  2146. </option>
  2147. <option value="emotionResults_emotion"
  2148. class="translatable_emotion_result_emotion_title">
  2149. Emotion</option>
  2150. <option value="emotionResults_gender" class="translatable_emotion_result_gender_title">
  2151. Sex
  2152. </option>
  2153. <option value="emotionResults_glasses"
  2154. class="translatable_emotion_result_glasses_title">
  2155. Glasses</option>
  2156. <option value="emotionResults_expression"
  2157. class="translatable_emotion_result_expression_title">Expression</option>
  2158. </select>
  2159. <span class="translatable_port">Port:</span>
  2160. <span class="port" style="padding-left:10px;"></span>
  2161. </div>
  2162. <div class="col s6" style="margin-top:2px;">
  2163. <a class="waves-effect waves-light blue lighten-2 btn translatable_connectBtn translatable_connectBtns disabled"
  2164. style="float:right;margin-right:5px">connect</a>
  2165. <a class="waves-effect waves-light blue lighten-2 btn translatable_disconnectBtn translatable_disconnectBtns "
  2166. style="float:right;margin-right:5px;display:none">disconnect</a>
  2167. </div>
  2168. </div>
  2169. </div>
  2170. </div>
  2171. </div>
  2172. <!-- 显示gesture recognition modal配置弹框 -->
  2173. <div id="setting_gesture_recog_modal" class="modal modal_closes">
  2174. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  2175. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  2176. <div class="modal-content" style="padding: 20px;">
  2177. <span class="modal_close" style="padding: 15px;">
  2178. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  2179. </span>
  2180. <h4 class="translatable_labs_center_modal_title">CocoBlockly Labs</h4>
  2181. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  2182. <div style="display:flex;justify-content:space-around;">
  2183. <div class="modal_setting_teacher_left setting_left_all">
  2184. <div class="card-image waves-effect waves-block waves-light">
  2185. <img class="" src="icons/AppCenter_ai_gesture_recognition.jpg"
  2186. style="border: solid 1.2px lightgray;width: 100%;">
  2187. </div>
  2188. <div>
  2189. <span id="ac-card-title emotion_recognition_enter_button"
  2190. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_gesture_recognition translatable_gesturesTitle"
  2191. style="font-size: 30px;">Gesture
  2192. Recognition</span>
  2193. <p class="translatable_gesture_recog_content">The trend of robot development is artificial
  2194. intelligence. Deep learning is the frontier technology of intelligent robot and a new
  2195. topic
  2196. in the field of machine learning.Deep learning technology is widely used in agriculture,
  2197. industry, military, aviation and other fields, and the organic combination with machines
  2198. can
  2199. design intelligent robots with high working efficiency, high real-time and high
  2200. accuracy.
  2201. </p>
  2202. </div>
  2203. </div>
  2204. <div class="modal_setting_teacher_right setting_right_all">
  2205. <div class="translatable_computer_configuration"
  2206. style="background: rgb(33, 150, 243);padding: 5px 10px;color: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;">
  2207. <span>Computer Configuration Requirements</span>
  2208. </div>
  2209. <div class="setting_border">
  2210. <p><span class="translatable_the_operating_system">Minimum Opearting System
  2211. version</span>:Windows (>Windows7), macOS (>10.11)</p>
  2212. <p><span class="translatable_resolution_of_the">Suggested Resolution
  2213. Supported</span>:1440*768
  2214. </p>
  2215. <p><span class="translatable_memory_capacity">Memory Capacity</span>:8GB-16GB</p>
  2216. <p><span class="translatable_the_hard_disk">The Hard Disk</span>:256GB-512Gb</p>
  2217. <p><span class="translatable_the_graphics_card">The Graphics Card</span>:650M</p>
  2218. <p><span class="translatable_is_need_camera">Do you need a camera</span>:<span
  2219. class="translatable_need">Ok</span></p>
  2220. <p><span class="translatable_is_need_microphone">Do you need a microphone</span>:<span
  2221. class="translatable_no_need">NO</span></p>
  2222. </div>
  2223. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  2224. href="#gesture_recog_modal" style="width: 94%;position: absolute;bottom: 5px;">Enter</a>
  2225. </div>
  2226. </div>
  2227. </div>
  2228. </div>
  2229. <!-- gesture recognition modal -->
  2230. <div id="gesture_recog_modal" class="modal">
  2231. <div id="gestureRecognitionTitle" class="modal-content">
  2232. <div style="margin-bottom:-10px;margin-top:10px;" class="row">
  2233. <div class="col s10">
  2234. <h4 class="translatable_gesturesTitle">Gesture Recognition</h4>
  2235. </div>
  2236. <div style="text-align:right;" class="col s2">
  2237. <a style="cursor: pointer;text-decoration:none; color:rgba(0,0,0.9);"
  2238. id="gesture_recognition_close" class="modal-action modal-close">
  2239. <h4><i class="small material-icons">close</i></h4>
  2240. </a>
  2241. </div>
  2242. </div>
  2243. <div class="row">
  2244. <div class="col s12">
  2245. <div class="switch" style="margin-bottom:20px;">
  2246. <label>
  2247. <span class="translatable_emotion_camera_off">Camera Off</span>
  2248. <input id="camera_switch_gesture" type="checkbox" onclick="cameraSwitchGesture();">
  2249. <span class="lever "></span><span class="translatable_emotion_camera_on">On</span>
  2250. </label>
  2251. </div>
  2252. </div>
  2253. </div>
  2254. <div style="margin-bottom:10px;" class="row">
  2255. <div style="float:center;" class="col s5">
  2256. <p class="translatable_gesture_webcam" style="margin-top:-20px;">Webcam:</p>
  2257. <div id="webCameraGestureFrame">
  2258. <div id="webCameraGesture"></div>
  2259. </div>
  2260. <div class="translatable_emotion_camera_turnon_text" id="gesture_webCamPlaceholder">Turn on the
  2261. Camera first
  2262. </div>
  2263. </div>
  2264. <div style="float:center;" class="col s7">
  2265. <a id="gestureAnalyzeButton"
  2266. class="disabled waves-effect waves-light btn blue translatable_gesture_recognition"
  2267. onclick="gestureRecognize();">Recognize</a>
  2268. <div id="gestureResultAreaFrame">
  2269. <h4 class="gestureResultAreaTitle translatable_gesture_recognition_result">Recognition
  2270. Result:
  2271. </h4>
  2272. <div id="gestureResultAreaContent" class="translatable_gesture_result">
  2273. No result yet.
  2274. </div>
  2275. </div>
  2276. <div class="col s12 select_send_way" style="position: relative; margin:12px 0;padding: 0;">
  2277. <span class="select_send_way_color translatable_send_cloud">Send Cloud</span>
  2278. <!-- <span class="translatable_send_module">Send Module</span> -->
  2279. </div>
  2280. <div class="s12" style="position: relative;margin-top: 45px;">
  2281. <div class="send_cloud">
  2282. <div id="cloudRequestStatuss" class="s12">
  2283. </div>
  2284. <div class="translatable_selectEvent" style="padding-right: 0.75rem;">Choose a CocoCloud
  2285. event
  2286. here, the analyzed result will
  2287. directly send to there</div>
  2288. <div style="width:100%;margin-top: 15px;">
  2289. <select class="browser-default" id="AI_gesture_events">
  2290. <option class="translatable_noEvent" value=null disabled>No event here. Login
  2291. first
  2292. </option>
  2293. </select>
  2294. </div>
  2295. <span style="float:right;top: -45px;position: relative;margin-top: -38px;">
  2296. <i id="update_Coevent_web" class="material-icons">autorenew</i>
  2297. </span>
  2298. </div>
  2299. <div class="col s12 send_module"
  2300. style="position: relative;display: none;height: 100px;padding: 0;">
  2301. <div class="translatable_send_module">Send Module</div>
  2302. <div class="input-field col s6" style="margin-top:2px;padding: 0;">
  2303. <span class="translatable_port">Port:</span>
  2304. <span class="port" style="padding-left:10px;"></span>
  2305. </div>
  2306. <div class="col s6" style="margin-top:2px;">
  2307. <a class="waves-effect waves-light blue lighten-2 btn translatable_connectBtns translatable_connectBtn disabled"
  2308. style="float:right;margin-right:5px">connect</a>
  2309. <a class="waves-effect waves-light blue lighten-2 btn translatable_disconnectBtns translatable_disconnectBtn"
  2310. style="float:right;margin-right:5px;display:none">disconnect</a>
  2311. </div>
  2312. </div>
  2313. </div>
  2314. </div>
  2315. </div>
  2316. <!-- <div class="row">
  2317. <div class="col s12">
  2318. <hr style="margin-top: 20px; border-top: 0.5px solid rgba(0,0,0,.1);" />
  2319. </div>
  2320. </div> -->
  2321. </div>
  2322. </div>
  2323. <!-- 显示voice speech modal配置弹框 -->
  2324. <div id="setting_voice_input_modal" class="modal modal_closes">
  2325. <span class="modal_close" style="padding: 15px;position: absolute;right: 0;cursor: pointer;"><i
  2326. class="small material-icons" style="font-size: 1.5rem;">close</i></span>
  2327. <div class="modal-content" style="padding: 20px;">
  2328. <h4 class="translatable_labs_center_modal_title">CocoBlockly Labs</h4>
  2329. <hr style="border-top: 1px solid #ddd;margin:20px 0 10px 0;" />
  2330. <div style="display:flex;justify-content:space-around;">
  2331. <div class="modal_setting_teacher_left setting_left_all">
  2332. <div class="card-image waves-effect waves-block waves-light">
  2333. <img class="" src="icons/AppCenter_ai_speech.jpg"
  2334. style="border: solid 1.2px lightgray;width: 100%;">
  2335. </div>
  2336. <div>
  2337. <span id="ac-card-title"
  2338. class="ac-card-title card-title activator grey-text text-darken-4 translatable_app_center_speech_recognition"
  2339. style="font-size: 30px;">Speech
  2340. Recognition</span>
  2341. <p class="translatable_voice_input_content">The trend of robot development is artificial
  2342. intelligence. Deep learning is the frontier technology of intelligent robot and a new
  2343. topic
  2344. in the field of machine learning.Deep learning technology is widely used in agriculture,
  2345. industry, military, aviation and other fields, and the organic combination with machines
  2346. can
  2347. design intelligent robots with high working efficiency, high real-time and high
  2348. accuracy.
  2349. </p>
  2350. </div>
  2351. </div>
  2352. <div class="modal_setting_teacher_right setting_right_all">
  2353. <div class="translatable_computer_configuration"
  2354. style="background: rgb(33, 150, 243);padding: 5px 10px;color: #fff;border-top-left-radius: 5px;border-top-right-radius: 5px;">
  2355. <span>Computer Configuration Requirements</span>
  2356. </div>
  2357. <div class="setting_border">
  2358. <p><span class="translatable_the_operating_system">Minimum Opearting System
  2359. version</span>:Windows (>Windows7), macOS (>10.11)</p>
  2360. <p><span class="translatable_resolution_of_the">Suggested Resolution
  2361. Supported</span>:1440*768
  2362. </p>
  2363. <p><span class="translatable_memory_capacity">Memory Capacity</span>:8GB-16GB</p>
  2364. <p><span class="translatable_the_hard_disk">The Hard Disk</span>:256GB-512Gb</p>
  2365. <p><span class="translatable_the_graphics_card">The Graphics Card</span>:650M</p>
  2366. <p><span class="translatable_is_need_camera">Do you need a camera</span>:<span
  2367. class="translatable_no_need">NO</span></p>
  2368. <p><span class="translatable_is_need_microphone">Do you need a microphone</span>:<span
  2369. class="translatable_need">OK</span></p>
  2370. </div>
  2371. <a class="waves-effect waves-light btn blue accent-3 translatable_app_center_enter_button modal-trigger"
  2372. href="#voice_input_modal" style="width: 94%;position: absolute;bottom: 5px;">Enter</a>
  2373. </div>
  2374. </div>
  2375. </div>
  2376. </div>
  2377. <!-- voice speech modal -->
  2378. <div id="voice_input_modal" class="modal voice-modal-trigger">
  2379. <div class="modal-content">
  2380. <div style="margin-top:10px;" class="row">
  2381. <div class="col s8">
  2382. <h4 class="translatable_speechDemoTitle">Speech Recognition</h4>
  2383. </div>
  2384. <div style="text-align:right;" class="col s4">
  2385. <a style="cursor: pointer;text-decoration:none; color:rgba(0,0,0.9);" id="voice_input_close"
  2386. class="modal-action modal-close">
  2387. <h4><i class="small material-icons">close</i></h4>
  2388. </a>
  2389. </div>
  2390. </div>
  2391. <div style="margin-bottom:10px;margin-top:-20px;" class="row">
  2392. <div class="col s12">
  2393. <p class="translatable_speechTip" style="font-size:15px;font-weight:200;">Voice recognition for
  2394. English, Cantonese & Mandarin.</p>
  2395. <hr
  2396. style="position:relative;top:-2px;margin-bottom:15px;border-color:rgba(0,0,0,.1); border-width: 1px;">
  2397. </div>
  2398. </div>
  2399. <div class="row" style="margin-top:-15px;margin-bottom:10px">
  2400. <div class="col s4">
  2401. <p class="translatable_speech_language_select">Select a language to recognize:</p>
  2402. </div>
  2403. <div style="margin-left:-20px;" class="col s2 speech_language" style="position:relative;top:3px">
  2404. <select id="speech_language_selection" class="browser-default" style="max-width:200px">
  2405. <option value="english" class="translatable_speech_language_English">English</option>
  2406. <option value="cantonese" class="translatable_speech_language_Cantonese">Cantonese</option>
  2407. <option value="mandarin" class="translatable_speech_language_Mandarin">Mandarin</option>
  2408. </select>
  2409. </div>
  2410. <div class="col" style="position:relative;top:5px">
  2411. <a id="speech_button" class="waves-effect waves-light btn blue translatable_speech_recognition"
  2412. style="padding:0 8px" onclick="processSpeech()/*startSpeech()*/">Start Recording</a>
  2413. </div>
  2414. <div class="col s3" style="position:relative;top:15px;">
  2415. <span style="font-weight:200;margin-left:-5px;" id="speech_process_title"
  2416. style="position:relative;top:-6px;"></span>
  2417. </div>
  2418. </div>
  2419. <div class="row">
  2420. <textarea id="speech_textarea" row="3" class="disabled translatable_speech_textarea_title"
  2421. style="width:772px;height:130px;resize:none;border-radius:5px;padding:10px;color:rgba(0,0,0,.4);"
  2422. readonly> Click on the mic button to start dictating...</textarea>
  2423. </div>
  2424. <div style="margin-top:5px;" class="row">
  2425. <div class="col s12 select_send_way" style="position: relative; margin-bottom:12px;">
  2426. <span class="select_send_way_color translatable_send_cloud">Send Cloud</span>
  2427. <!-- <span class="translatable_send_module">Send Module</span> -->
  2428. </div>
  2429. <div class="col s12 send_cloud" style="position: relative">
  2430. <div class="col s12">
  2431. <span id="speechDemoCloudRequest" style="font-weight:200;"></span>
  2432. </div>
  2433. <div class="translatable_selectEvent">Choose a CocoCloud event here, the analyzed result will
  2434. directly send to there</div>
  2435. <div style="width:95%">
  2436. <select style="margin-top:10px;" class="browser-default" id="AI_voice_events">
  2437. <option class="translatable_noEvent" value=null disabled>No event here. Login first
  2438. </option>
  2439. </select>
  2440. </div>
  2441. <span style="float:right;top: -45px;position: relative;">
  2442. <i id="update_Coevent_voice" class="material-icons">autorenew</i>
  2443. </span>
  2444. </div>
  2445. <div class="col s12 send_module" style="position: relative;display: none;height: 100px;">
  2446. <div class="translatable_send_module">Send Module</div>
  2447. <div class="input-field col s6" style="margin-top:2px;">
  2448. <span class="translatable_port">Port:</span>
  2449. <span class="port" style="padding-left:10px;"></span>
  2450. </div>
  2451. <div class="col s6" style="margin-top:2px;">
  2452. <a class="waves-effect waves-light blue lighten-2 btn translatable_connectBtns translatable_connectBtn disabled"
  2453. style="float:right;margin-right:5px">connect</a>
  2454. <a class="waves-effect waves-light blue lighten-2 btn translatable_disconnectBtn translatable_disconnectBtns "
  2455. style="float:right;margin-right:5px;display:none">disconnect</a>
  2456. </div>
  2457. </div>
  2458. </div>
  2459. </div>
  2460. </div>
  2461. </div>
  2462. </div>
  2463. </div>
  2464. <!-- iframe -->
  2465. <div id="iframe" class="modal modal_closes" style="width: 70%;">
  2466. <span class="modal_close" style="padding: 15px;right: 12px;">
  2467. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  2468. </span>
  2469. <!-- <iframe frameborder="0" style="width: 100%;height: 50vh;"></iframe> -->
  2470. </div>
  2471. <div id="updatePy" class="modal">
  2472. <!-- <i id="updatePy_icon" class="material-icons right" style="cursor:pointer;">close</i> -->
  2473. <div style="padding: 20px;">
  2474. <h2 style="font-size: 30px;margin-bottom: 0;" class="translatable_update_file">更新文件</h2>
  2475. <p>选择文件夹</p>
  2476. <div id="select_folder" class="select_folder" style="height: 300px;">
  2477. </div>
  2478. <!-- <div class="folder_name">
  2479. <span>文件名:</span>
  2480. <input class="folder_name_inpit" type="text">
  2481. </div> -->
  2482. <div class="update_bottom">
  2483. <button class="cancle">取消</button>
  2484. <button class="confim">确定</button>
  2485. </div>
  2486. </div>
  2487. </div>
  2488. <!-- Custom Alert: Content is loaded using JavaScript to display alerts -->
  2489. <div id="cus_alert" class="modale modal_small modal_custom">
  2490. <div class="modal-content">
  2491. <h5 id="cus_alert_title">Empty Alert</h5>
  2492. <p><span id="cus_alert_body">Empty alert text</span></p>
  2493. </div>
  2494. <div class="modal-footer">
  2495. <a id="cus_alert_button" class="waves-effect btn-flat modal-close blue"><span id="cus_alert_button_content"
  2496. style="color:#fff"></span></a>
  2497. <a id="cus_alert_ok_link" class="waves-effect btn-flat modal-close blue"><span class="translatable_okay"
  2498. style="color:#fff">Okay</span></a>
  2499. </div>
  2500. </div>
  2501. <!-- Env Detect Modal -->
  2502. <div id="env_detect" class="modal modal_closes">
  2503. <div class="modal-content">
  2504. <span class="modal_close" style="padding: 15px;">
  2505. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  2506. </span>
  2507. <h4 class="translatable_env_detect" style="margin-bottom:2.5rem;">Environment Detect</h4>
  2508. <div id="detect_before" style="position:relative;">
  2509. <div>
  2510. <img src="./icons/device-detect.svg" />
  2511. </div>
  2512. <div id="detect_preload" style="display:none;">
  2513. <div
  2514. style="position:relative;top:50%;transform:translateY(-50%);height:128px;width:128px;margin:0 auto;">
  2515. <div class="preloader-wrapper big active">
  2516. <div class="spinner-layer spinner-blue-only">
  2517. <div class="circle-clipper left">
  2518. <div class="circle"></div>
  2519. </div>
  2520. <div class="gap-patch">
  2521. <div class="circle"></div>
  2522. </div>
  2523. <div class="circle-clipper right">
  2524. <div class="circle"></div>
  2525. </div>
  2526. </div>
  2527. </div>
  2528. </div>
  2529. </div>
  2530. </div>
  2531. <div id="detect_result" style="display:none;">
  2532. <div style="border-bottom:2.5px #0057ff6e solid;padding:0.25rem 0;">
  2533. <h5 class="translatable_title_device">Device</h5>
  2534. <h5 class="translatable_title_result">Result</h5>
  2535. <h5 class="translatable_title_support">Support</h5>
  2536. <h5 class="translatable_title_suggest">Suggest</h5>
  2537. </div>
  2538. <div id="env_detect_os" style="margin-top:0.5rem;">
  2539. <div class="translatable_os">System</div>
  2540. <div></div>
  2541. <div class="detect-icons"></div>
  2542. <div></div>
  2543. </div>
  2544. <div id="env_detect_browser">
  2545. <div class="translatable_browser">Browser</div>
  2546. <div></div>
  2547. <div class="detect-icons"></div>
  2548. <div></div>
  2549. </div>
  2550. <div id="env_detect_plugin" style="margin-bottom:0.5rem;">
  2551. <div>Uploader</div>
  2552. <div></div>
  2553. <div class="detect-icons"></div>
  2554. <div></div>
  2555. </div>
  2556. </div>
  2557. </div>
  2558. <div class="modal-footer">
  2559. <a id="detect-btn" class="waves-effect waves-light btn-large blue">
  2560. <span class="translatable_detect">Detect</span>
  2561. </a>
  2562. </div>
  2563. </div>
  2564. <!-- Serial Monitor -->
  2565. <div id="Serial-monitor" class="card card-serialMonitor" style="display:none;height:0;opacity:0;">
  2566. <div class="code-header">
  2567. <span class="code-header-logo"><i class="material-icons" style="padding-top:10px">search</i></span>
  2568. <span class="card-title translatable_serialMonitor">Serial Monitor</span>
  2569. </div>
  2570. <div class="card-content" style="padding:8px 10px;">
  2571. <div class="row">
  2572. <div class="input-field col s6" style="margin-top:2px;">
  2573. <p id="ports-monitor" style="font-size:16px"><span class="translatable_port">Port:</span><span
  2574. style="padding-left:10px;"></span>
  2575. </p>
  2576. </div>
  2577. <div class="col s6" style="margin-top:2px;">
  2578. <a id="comms-cnt"
  2579. class="waves-effect waves-light blue lighten-2 btn translatable_connectBtn disabled"
  2580. style="float:right;margin-right:5px">connect</a>
  2581. <a id="comms-discnt" class="waves-effect waves-light blue lighten-2 btn translatable_disconnectBtn "
  2582. style="float:right;margin-right:5px;display:none">disconnect</a>
  2583. </div>
  2584. </div>
  2585. <div class="row">
  2586. <div class="input-field col s5">
  2587. <select id="serial_output_style" style="font-size:16px">
  2588. <option value="" selected class="translatable_no_line_ending">No line ending
  2589. </option>
  2590. <option value="nl" class="translatable_newline">Newline</option>
  2591. <option value="cr" class="translatable_CR">Carriage return</option>
  2592. <option value="blc" class="translatable_NL_CR">Both NL &amp; CR</option>
  2593. </select>
  2594. </div>
  2595. <div class="input-field col s5">
  2596. <select id="serial_baud" style="font-size:16px">
  2597. <option value="300">300 <span class="translatable_baud">baud</span></option>
  2598. <option value="1200">1200 <span class="translatable_baud">baud</span></option>
  2599. <option value="2400">2400 <span class="translatable_baud">baud</span></option>
  2600. <option value="4800">4800 <span class="translatable_baud">baud</span></option>
  2601. <option value="9600" selected>9600 <span class="translatable_baud">baud</span>
  2602. </option>
  2603. <option value="19200">19200 <span class="translatable_baud">baud</span></option>
  2604. <option value="38400">38400 <span class="translatable_baud">baud</span></option>
  2605. <option value="57600">57600 <span class="translatable_baud">baud</span></option>
  2606. <option value="115200">115200 <span class="translatable_baud">baud</span></option>
  2607. </select>
  2608. </div>
  2609. </div>
  2610. <div class="row">
  2611. <div class="input-field col s10">
  2612. <input id="comms-msg" type="text" style="margin:0">
  2613. <label for="Sending_Messages" class="translatable_sendMsg" style="font-size:16px">Sending
  2614. Messages</label>
  2615. </div>
  2616. <div class="input-field col s2">
  2617. <a id="comms-send" class="waves-effect waves-light blue lighten-2 btn translatable_sendBtn disabled"
  2618. style="float:right;padding-right:5px">SEND</a>
  2619. </div>
  2620. </div>
  2621. <div class="row">
  2622. <div class="col s12">
  2623. <textarea id="commsBox" label="readonly" readonly></textarea>
  2624. </div>
  2625. </div>
  2626. <div class="row" style="margin-bottom:8px">
  2627. <div class="col s4" style="margin-top:8px">
  2628. <input id="autoscroll" type="checkbox" class="filled-in" checked="checked">
  2629. <label for="autoscroll">
  2630. <span class="translatable_autoScroll">Autoscroll</span>
  2631. </label>
  2632. </div>
  2633. <div class="input-field col s8" style="margin:4px,0,8px,0">
  2634. <a id="comms-clear" class="waves-effect waves-light blue lighten-2 btn translatable_comms_clear"
  2635. style="float:right;margin-right:5px">CLEAR</a>
  2636. <a id="comms-export"
  2637. class="waves-effect waves-light blue lighten-2 btn translatable_comms_export modal-trigger"
  2638. href="#export-file" style="float:right;margin-right:5px">EXPORT</a>
  2639. </div>
  2640. </div>
  2641. </div>
  2642. </div>
  2643. <!-- login modal -->
  2644. <div id="login_modal" class="modal modal_closes" style="top:62px">
  2645. <div id="login_modal_preload" class="progress" style="display:none">
  2646. <div class="indeterminate"></div>
  2647. </div>
  2648. <div class="modal-content" style="padding:0;">
  2649. <span class="modal_close" style="padding: 15px;">
  2650. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  2651. </span>
  2652. <!-- add for login iframe -->
  2653. <div id="before_login"></div>
  2654. <div id="after_login">
  2655. <div id="userProfile_alias"></div>
  2656. <div style="width: 250px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;"><span
  2657. class="translatable_user_email">Email:</span><span id="userProfile_username"> </span></div>
  2658. <div><span class="translatable_user_school">School:</span><span id="userProfile_school"></span></div>
  2659. <div id="userProfile_apikey">
  2660. <div>
  2661. <span class="translatable_Event">Event: </span>
  2662. <span style="margin-top: -13px;float:right;transform:translateY(35%);">
  2663. <i id="update_Coevent" class="material-icons" onclick="updateProject()">autorenew</i>
  2664. </span>
  2665. <p class="get_event" style="margin: 5px 0;color: #2196F3;"></p>
  2666. <select
  2667. style="outline:0; width: 100%; margin: 6px auto 8px auto; border: 1px solid rgba(0,0,0,.2);"
  2668. class="browser-default" id="cloud_events" onchange="changeProject()">
  2669. <option value=null disabled>No Event</option>
  2670. </select>
  2671. </div>
  2672. <div style="margin-top:5px">
  2673. <span>API Key: </span>
  2674. <a id="apikey-copy" data-clipboard-action="copy" data-clipboard-target="#api-key">
  2675. <i class="material-icons tiny">content_copy</i>
  2676. </a>
  2677. <textarea style="padding: 6px 6px; margin-top: 4px;" id="api-key" readonly></textarea>
  2678. </div>
  2679. </div>
  2680. </div>
  2681. </div>
  2682. <div class="modal-footer" style="display:none;">
  2683. <a id="modal_logout_btn" class="waves-effect btn-flat blue">
  2684. <span class="translatable_signout">Sign Out</span>
  2685. <img class="xuanhuan svgImg" src="/images/loading.svg" alt="">
  2686. </a>
  2687. <a id="modal_cococloud_btn" href="//cocorobo.cn/cloud" target="_black"
  2688. class="waves-effect btn-flat blue"><span class="translatable_cococloud">Go to CocoCloud</span></a>
  2689. </div>
  2690. </div>
  2691. <!-- local storage - import modal -->
  2692. <div id="Storage_import_modal" class="modal mm modal_closes" style="width:500px">
  2693. <div class="modal-content">
  2694. <span class="modal_close" style="padding: 15px;"><i class="small material-icons"
  2695. style="font-size: 1.5rem;">close</i></span>
  2696. <h4 class="translatable_localStorageImport">Import Project</h4>
  2697. <div> <span class="translatable_ImportPyTooltip" sytle="margin-left:10px">Select your project file(*.xml)
  2698. and
  2699. import it to the current workspace.Warning:will replace current blocks</span></div>
  2700. <div id="import_area" class="row" style="margin: 10px;height: 170px;position: relative;">
  2701. <a id="modal_import_btn" class="waves-effect btn-flat blue"
  2702. style="top:180px;left:320px;position:fixed;"><span class="translatable_import"
  2703. style="font-size:15px;color:#fff">Import</span></a>
  2704. <span class="translatable_ImportContent"
  2705. style="top: 230px;width:300px;left:27%;position:fixed;text-align:center;">Click to choose a file
  2706. from
  2707. your computer</span>
  2708. </div>
  2709. </div>
  2710. </div>
  2711. <!-- General Alert: Content is loaded using JavaScript to display alerts -->
  2712. <div id="gen_alert" class="modale modal_closes modal_small" style="width:730px">
  2713. <div class="modal-content">
  2714. <span class="modal_close" style="padding: 15px;">
  2715. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  2716. </span>
  2717. <h5 id="gen_alert_title">Empty Alert</h5>
  2718. <p><span id="gen_alert_body">Empty alert text</span></p>
  2719. </div>
  2720. <div class="modal-footer">
  2721. <a id="gen_alert_ok_link" class="waves-effect btn-flat modal-close blue"><span class="translatable_okay"
  2722. style="color:#fff">Okay</span></a>
  2723. <a id="gen_alert_cancel_link" class="waves-effect btn-flat modal-close blue"><span
  2724. class="translatable_cancel" style="color:#fff">Cancel</span></a>
  2725. </div>
  2726. </div>
  2727. <!-- Example Alert: Content is loaded using JavaScript to display alerts -->
  2728. <div id="example_alert" class="modale modal_small" style="height:30%;width: 30%;">
  2729. <div class="modal-content">
  2730. <div id="loading" style="text-align:center;display: none;">
  2731. <img src="./gif/loading.gif" style="width: 300px;" />
  2732. </div>
  2733. <p
  2734. style="text-align:center;font-weight:bold;font-size:20px;z-index: 1087;position: absolute;left: 0;right: 0;top: 50%;">
  2735. <span id="example_alert_body">Empty alert text</span>
  2736. </p>
  2737. </div>
  2738. </div>
  2739. <!-- local storage - export modal -->
  2740. <div id="Storage_export_modal" class="modal mm modal_closes" style="width:730px">
  2741. <div class="modal-content">
  2742. <span class="modal_close" style="padding: 15px;"><i class="small material-icons"
  2743. style="font-size: 1.5rem;">close</i></span>
  2744. <h4 class="translatable_localStorageExport">Export Project</h4>
  2745. <div> <span class="translatable_ExportPyTooltip" sytle="margin-left:10px">Export current project blocks and
  2746. save it your computer,so you can open it next time when you need it</span></div>
  2747. <div class="row" style="margin: 10px;height: 200px;width: 640px;position: relative;">
  2748. <div style="display:block">
  2749. <div class="col l6">
  2750. <img src="./icons/blockly-file-export_py.png"
  2751. style="width:20%;position:relative;left:50%;right:50%;transform:translateX(-50%);">
  2752. </div>
  2753. <div class="col l6">
  2754. <img src="./icons/blockly-file-export_png.png"
  2755. style="width:20%;position:relative;left:50%;right:50%;transform:translateX(-50%);">
  2756. </div>
  2757. </div>
  2758. <div>
  2759. <div class="col l6">
  2760. <a id="modal_exportFileBtn" class="waves-effect btn-flat blue"
  2761. style="left: 50%;right: 50%;transform: translateX(-50%)"><span
  2762. class="translatable_exportFile" style="font-size:15px;color:#fff">Project
  2763. File</span></a>
  2764. </div>
  2765. <div class="col l6">
  2766. <a id="modal_exportSnapBtn" class="waves-effect btn-flat blue"
  2767. style="left: 50%;right: 50%;transform: translateX(-50%)"><span
  2768. class="translatable_exportSnap" style="font-size:15px;color:#fff">Snapshot</span></a>
  2769. </div>
  2770. </div>
  2771. <div>
  2772. <div class="col l6">
  2773. <p class="translatable_ExportPyFileContent"
  2774. style="display:block;text-align:center;width:80%;position: relative;left: 50%;right: 50%;transform: translateX(-50%);font-size:0.875rem">
  2775. Will export as an *xml file.<br>for you to continuing code nextime</p>
  2776. </div>
  2777. <div class="col l6">
  2778. <p class="translatable_ExportSnapContent"
  2779. style="display:block;text-align:center;width:80%;position: relative;left: 50%;right: 50%;transform: translateX(-50%);font-size:0.875rem">
  2780. Will export to a *png picture.<br>for your reference</p>
  2781. </div>
  2782. </div>
  2783. </div>
  2784. </div>
  2785. </div>
  2786. <div style="display: none;" id="content_blocks"></div>
  2787. <!-- cloud storage modal -->
  2788. <div id="cloud_storage_modal" class="modal modal_closes">
  2789. <div class="modal-content">
  2790. <span class="modal_close" style="padding: 15px;">
  2791. <i class="small material-icons" style="font-size: 1.5rem;">close</i>
  2792. </span>
  2793. <h4 class="translatable_cloudStorageTitle">Cloud Storage</h4>
  2794. <div id="cloud_askLogin"></div>
  2795. <div id="cloud_fileListArea" class="cloud-file" style="display:none">
  2796. </div>
  2797. </div>
  2798. <div id="cloud_modal_preload" style="display:none">
  2799. <div style="position:relative;top:50%;transform:translateY(-50%);height:128px;width:128px;margin:0 auto;">
  2800. <div class="preloader-wrapper big active" style="top:0;left:0">
  2801. <div class="spinner-layer spinner-blue-only">
  2802. <div class="circle-clipper left">
  2803. <div class="circle"></div>
  2804. </div>
  2805. <div class="gap-patch">
  2806. <div class="circle"></div>
  2807. </div>
  2808. <div class="circle-clipper right">
  2809. <div class="circle"></div>
  2810. </div>
  2811. </div>
  2812. </div>
  2813. </div>
  2814. </div>
  2815. </div>
  2816. <!-- share modal -->
  2817. <div id="share" class="modal">
  2818. <div class="modal-content">
  2819. <h4 class="">程序分享</h4>
  2820. <div style="text-align: center;">
  2821. <div id="QrImg" style="display: inline-block;"></div>
  2822. </div>
  2823. <p class="qrImgUrl"></p>
  2824. </div>
  2825. </div>
  2826. <div class="downbox MouduleBox" style="display:none;position: fixed;width:175px;height:162px;right:50px;top:225px;">
  2827. <div>
  2828. <div class="translatable_iot_module">IoT Module</div>
  2829. </div>
  2830. <div>
  2831. <div class="translatable_ai_module">A.I. Module</div>
  2832. </div>
  2833. <div><a href="//beta.python-blockly.cocorobo.cn" style="color: #424242 !important;"
  2834. class="translatable_cloud_mode">Cloud
  2835. Mode</a></div>
  2836. <div><a href="//beta.ai-blockly.cocorobo.cn" style="color: #424242 !important;"
  2837. class="translatable_javascript_mode">JavaScript Mode</a></div>
  2838. </div>
  2839. <div id="ai_tt" class="downbox MouduleBox" style="display:none;position: fixed;width:230px;right:50px;top:225px;">
  2840. <div>1.Hello World</div>
  2841. <div>2.螢幕顯示 Hello World</div>
  2842. <div>3.畫布應用</div>
  2843. <div>4.迷你相機</div>
  2844. <div>5.簡易物體識別</div>
  2845. </div>
  2846. <!-- <iframe id="web" name="web" src="//beta.x.cocorobo.cn/web.html" style="display: none"></iframe> -->
  2847. </body>
  2848. <script>
  2849. $("#modal_logout_btn").on("click", function () {
  2850. $("#modal_logout_btn").removeClass('blue');
  2851. $("#modal_logout_btn").css('background', 'gray')
  2852. $(".svgImg").css('display', 'block')
  2853. $(".translate-signout").css('opacity', '0.5')
  2854. $.ajax(`${CCB.base_url}api/logout`, {
  2855. type: "GET",
  2856. xhrFields: {
  2857. withCredentials: true
  2858. },
  2859. success: () => {
  2860. // $('#login_iframe').attr('src', '//staging.cocorobo.cn/login/');
  2861. appendIframe("TM_login");
  2862. $('#TM_login').children().css("height", "820px");
  2863. appendIframe("before_login");
  2864. appendIframe("cloud_askLogin");
  2865. Materialize.toast(CCB.str_group.success_userLogout, 4000);
  2866. CCB.userState = false;
  2867. $("#cloud_fileListArea").html("");
  2868. loginModalStatus();
  2869. $("#modal_logout_btn").addClass('blue')
  2870. $(".svgImg").css('display', 'none');
  2871. $(".translate-signout").css('opacity', '1')
  2872. }
  2873. });
  2874. });
  2875. </script>
  2876. <script type="text/javascript" src="./src/blockly/demo.js"></script>
  2877. <script type='text/javascript' src="./src/blockly/recorder.js"></script>
  2878. <script type='text/javascript' src="./src/blockly/jquery.s2t.js"></script>
  2879. </html>