def get_label(self, lang=None, separator=None): if separator is None: separator = " > " form = get_form_analytics_metadata(self.domain, self.app_id, self.xmlns) if form and form.get('app'): langs = form['app']['langs'] app_name = form['app']['name'] if form.get('is_user_registration'): form_name = "User Registration" title = separator.join([app_name, form_name]) else: def _menu_name(menu, lang): if lang and menu.get(lang): return menu.get(lang) else: for lang in langs + list(menu): menu_name = menu.get(lang) if menu_name is not None: return menu_name return "?" module_name = _menu_name(form["module"]["name"], lang) form_name = _menu_name(form["form"]["name"], lang) title = separator.join([app_name, module_name, form_name]) if form.get('app_deleted'): title += ' [Deleted]' if form.get('duplicate'): title += " [Multiple Forms]" name = title else: name = self.xmlns return name
def test_get_form_analytics_metadata__no_app(self): self.assertEqual( get_form_analytics_metadata(self.domain, self.app_id_1, self.xmlns_1), { 'submissions': 2, 'xmlns': 'my://crazy.xmlns/' })
def get_label(self, lang=None): form = get_form_analytics_metadata(self.domain, self.app_id, self.xmlns) if form and form.get('app'): langs = form['app']['langs'] app_name = form['app']['name'] if form.get('is_user_registration'): form_name = "User Registration" title = "%s > %s" % (app_name, form_name) else: def _menu_name(menu, lang): if lang and menu.get(lang): return menu.get(lang) else: for lang in langs + menu.keys(): menu_name = menu.get(lang) if menu_name is not None: return menu_name return "?" module_name = _menu_name(form["module"]["name"], lang) form_name = _menu_name(form["form"]["name"], lang) title = "%s > %s > %s" % (app_name, module_name, form_name) if form.get('app_deleted'): title += ' [Deleted]' if form.get('duplicate'): title += " [Multiple Forms]" name = title else: name = self.xmlns return name
def get_label(self): form = get_form_analytics_metadata(self.domain, self.app_id, self.xmlns) if form and form.get('app'): langs = form['app']['langs'] app_name = form['app']['name'] module_name = form_name = None if form.get('is_user_registration'): form_name = "User Registration" title = "%s > %s" % (app_name, form_name) else: for lang in langs + form['module']['name'].keys(): module_name = form['module']['name'].get(lang) if module_name is not None: break for lang in langs + form['form']['name'].keys(): form_name = form['form']['name'].get(lang) if form_name is not None: break if module_name is None: module_name = "?" if form_name is None: form_name = "?" title = "%s > %s > %s" % (app_name, module_name, form_name) if form.get('app_deleted'): title += ' [Deleted]' if form.get('duplicate'): title += " [Multiple Forms]" name = title else: name = self.xmlns return name
def test_get_form_analytics_metadata__app(self): self.assertEqual(get_form_analytics_metadata(self.domain, self.app_id_2, self.xmlns_2), { 'app': {'id': self.app_id_2, 'langs': [], 'name': None}, 'app_deleted': False, 'form': {'id': 0, 'name': {}}, 'module': {'id': 0, 'name': {}}, 'submissions': 1, 'xmlns': 'my://crazy.xmlns/app' })
def __init__(self, domain, xmlns, app_id=None): self.domain = domain self.xmlns = xmlns if app_id: self.app_id = app_id else: form = get_form_analytics_metadata(domain, app_id, xmlns) try: self.app_id = form['app']['id'] if form else None except KeyError: self.app_id = None
def test_get_form_analytics_metadata__app(self): self.assertEqual( get_form_analytics_metadata(self.domain, self.app_id_2, self.xmlns_2), { "app": {"id": self.app_id_2, "langs": [], "name": None}, "app_deleted": False, "form": {"id": 0, "name": {}}, "module": {"id": 0, "name": {}}, "submissions": 1, "xmlns": "my://crazy.xmlns/app", }, )
def get_label(self, lang=None, separator=None): if separator is None: separator = " > " form = get_form_analytics_metadata(self.domain, self.app_id, self.xmlns) if form and form.get('app'): langs = form['app']['langs'] app_name = form['app']['name'] if form.get('is_user_registration'): form_name = "User Registration" title = separator.join([app_name, form_name]) else: def _menu_name(menu, lang): if lang and menu.get(lang): return menu.get(lang) else: for lang in langs + list(menu): menu_name = menu.get(lang) if menu_name is not None: return menu_name return "?" module_name = _menu_name(form["module"]["name"], lang) form_name = _menu_name(form["form"]["name"], lang) title = separator.join([app_name, module_name, form_name]) if form.get('app_deleted'): title += ' [Deleted]' if form.get('duplicate'): title += " [Multiple Forms]" name = title elif self.xmlns in SYSTEM_FORM_XMLNS_MAP: name = SYSTEM_FORM_XMLNS_MAP[self.xmlns] else: name = self.xmlns return name
def test_get_form_analytics_metadata__no_match(self): self.assertIsNone( get_form_analytics_metadata(self.domain, self.app_id_1, self.xmlns_2))
def test_get_form_analytics_metadata__no_app(self): self.assertEqual( get_form_analytics_metadata(self.domain, self.app_id_1, self.xmlns_1), {"submissions": 2, "xmlns": "my://crazy.xmlns/"}, )
def test_get_form_analytics_metadata__no_match(self): self.assertIsNone(get_form_analytics_metadata(self.domain, self.app_id_1, self.xmlns_2))
def test_get_form_analytics_metadata__no_app(self): self.assertEqual( get_form_analytics_metadata(self.domain, self.app_id_1, self.xmlns_1), {'submissions': 2, 'xmlns': 'my://crazy.xmlns/'} )
def test_get_form_analytics_metadata(self): info = get_form_analytics_metadata(self.domain, self.app_id, self.xmlns) self.assertEqual(self.xmlns, info['xmlns']) self.assertEqual(2, info['submissions'])