# TW2 proper imports import tw2.core as twc from tw2.core.resources import encoder # tw2.jquery core imports from tw2.jquery.base import jQueryJSLink, jQueryPluginLinkMixin from tw2.jquery.version import JSLinkMixin # import from *this* package from tw2.jqplugins.portlets import defaults ### Links, etc... class jQueryPortletsMixin(jQueryPluginLinkMixin): dirname = defaults._portlets_dirname_ basename='portlets' modname = 'tw2.jqplugins.portlets' class jQueryPortletsJSLink(twc.JSLink, jQueryPortletsMixin): subdir = 'js' class jQueryPortletsCSSLink(jQueryPortletsMixin, twc.CSSLink): subdir = 'css' extension = 'css' ### Resources jquery_js = jQueryJSLink() jquery_portlets_css = jQueryPortletsCSSLink() jquery_portlets_js = jQueryPortletsJSLink()
twc.core.request_local()['jquery_ui_theme_name'] = ui_theme_name def get_ui_theme_name(): """ Get the request/thread local jquery ui theme name """ if 'jquery_ui_theme_name' not in twc.core.request_local(): base = defaults._ui_theme_name_ twc.core.request_local()['jquery_ui_theme_name'] = base return twc.core.request_local()['jquery_ui_theme_name'] ### Resources jquery_ui_css = jQueryUIThemeCSSLink(version=defaults._ui_version_) jquery_ui_catcomplete_js = jQueryUIJSLink(version='custom', basename='catcomplete') jquery_ui_js = jQueryUIJSLink(version=defaults._ui_version_, resources=[jquery_js]) jquery_ui = jQueryJSLink(resources = [jquery_ui_css, jquery_ui_js]) ### Widgets class JQueryUIWidget(twc.Widget): """ Base JQueryUIWidget """ _hide_docs = False resources = [ jquery_ui_js, jquery_ui_css ] jqmethod = twc.Variable("(str) Name of this widget's jQuery init method") selector = twc.Variable("(str) Escaped id. jQuery selector.") options = twc.Param( '(dict) A dict of options to pass to the widget', default={}) # TODO -- add all the events http://api.jquery.com/category/events/
from tw2.jqplugins.ui import base as jquibase from tw2.jqplugins.elfinder import base as elfinderbase from tw2.jqplugins.elfinder import defaults modname = 'tw2.jqplugins.elfinder' #elRTE elfinder_images = jqbase.DirLink(modname=modname, filename=defaults._plugin_css_dirname_ % dict(name=defaults._elfinder_name_, version=defaults._elfinder_version_, subdir="images")) elfinder_css = jqbase.jQueryPluginCSSLink(resources=[elfinder_images], name=defaults._elfinder_name_, basename='%s' % (defaults._elfinder_basename_), version=defaults._elfinder_version_, modname = modname ) elfinder_js = jqbase.jQueryPluginJSLink(name=defaults._elfinder_name_, basename='%s.%s' % (defaults._elfinder_basename_, defaults._elfinder_debug_), modname = modname, version=defaults._elfinder_version_) elfinder = jqbase.jQueryJSLink(resources=[jquibase.jquery_ui_js, elfinder_css, elfinder_js]) class elFinderWidget(jquibase.JQueryUIWidget): resources = [jquibase.jquery_ui_js, elfinder_css, elfinder_js] url = twc.params.Param('Connector URL', default=twc.params.Required) template = 'tw2.jqplugins.elfinder.templates.widget' def prepare(self): if 'url' not in self.options: assert hasattr(self, 'url'), 'No url provided. Please supply the url parameter' self.options['url'] = self.url super(elFinderWidget, self).prepare()