~openteachermaintainers/openteacher/3.x

« back to all changes in this revision

Viewing changes to modules/org/openteacher/logic/wordsString/javaScript/parser/parser.py

  • Committer: Marten de Vries
  • Date: 2017-06-28 18:05:48 UTC
  • Revision ID: git-v1:b4c406307aa345c58b9904b76580f15c5bff2a4e
Move JS into npm modules

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#! /usr/bin/env python3
2
2
# -*- coding: utf-8 -*-
3
3
 
4
 
#       Copyright 2012-2013, Marten de Vries
 
4
#       Copyright 2012-2013, 2017, Marten de Vries
5
5
#
6
6
#       This file is part of OpenTeacher.
7
7
#
24
24
                self._mm = moduleManager
25
25
 
26
26
                self.type = "wordsStringParser"
27
 
                self.javaScriptImplementation = True
28
27
                self.requires = (
29
28
                        self._mm.mods(type="javaScriptEvaluator"),
30
29
                )
45
44
                   See the tests for this module for more examples.
46
45
 
47
46
                """
48
 
                return self._js.global_["parse"](*args, **kwargs)
 
47
                return self._js.global_["ot-words-string-parser"](*args, **kwargs)
49
48
 
50
49
        def enable(self):
51
 
                with open(self._mm.resourcePath("parser.js"), encoding='UTF-8') as f:
52
 
                        self.code = f.read()
53
 
 
54
50
                modules = next(iter(self._mm.mods(type="modules")))
55
 
                self._js = modules.default("active", type="javaScriptEvaluator").createEvaluator()
56
 
                self._js.eval(self.code)
 
51
                self._js = modules.default("active", type="javaScriptEvaluator").loadModule('ot-words-string-parser')
57
52
 
58
53
                self.active = True
59
54
 
60
55
        def disable(self):
61
56
                self.active = False
62
57
 
63
 
                del self.code
64
58
                del self._js
65
59
 
66
60
def init(moduleManager):