def js(self):
        if not ILayer.providedBy(self.request):
            return ""
        old_values = [s.decode('utf-8') if isinstance(s, str) else s
                      for s in self.context.Subject()]
        options = dict(self.options)
        options['prePopulate'] = [{'id': v, 'name': v} for v in old_values]

        newtags = self.context.absolute_url() + "/json-subjects"
        result = self.js_template % dict(
            id=self.id,
            klass=self.klass,
            newtags=newtags,
            options=json.dumps(options),
            replacements=json.dumps(self.replacements)
        )
        return result
 def js(self):
     if not ILayer.providedBy(self.request):
         return ""
     old_values = self.context.Subject()
     old_tags = u""
     index = 0
     newtags = self.context.absolute_url() + "/json-subjects"
     # prepopulate
     for index, value in enumerate(old_values):
         if isinstance(value, str):
             value = value.decode("utf-8")
         old_tags += u"{id: '%s', name: '%s'}" % (value.replace(
             u"'", u"\\'"), value.replace(u"'", u"\\'"))
         if index < len(old_values) - 1:
             old_tags += ", "
     result = self.js_template % dict(
         id=self.id, klass=self.klass, newtags=newtags, oldtags=old_tags)
     return result
 def js(self):
     if not ILayer.providedBy(self.request):
         return ""
     old_values = self.context.Subject()
     old_tags = u""
     index = 0
     newtags = self.context.absolute_url() + "/json-subjects"
     #prepopulate
     for index, value in enumerate(old_values):
         if isinstance(value, str):
             value = value.decode("utf-8")
         old_tags += u"{id: '%s', name: '%s'}" % (value.replace(
             u"'", u"\\'"), value.replace(u"'", u"\\'"))
         if index < len(old_values) - 1:
             old_tags += ", "
     result = self.js_template % dict(
         id=self.id,
         klass=self.klass,
         newtags=newtags,
         oldtags=old_tags
     )
     return result