Ejemplo n.º 1
0
 def render(self, djp):
     kwargs = djp.kwargs
     height = max(int(kwargs.get('height',400)),30)
     start = kwargs.get('start',None)
     code = self.get_code_object(djp)
     id = gen_unique_id()
     widget = HtmlWidget('div', id = id, cn = 'econometric-plot')
     widget.addData('height',height)\
           .addData('item',code)\
           .addData('start',start)\
           .addData('url',self.path)
     return widget.render()
Ejemplo n.º 2
0
 def get_widget(self, request, height = 400, service_url = None,
                method = 'get', start = None, **kwargs):
     service_url = service_url or self.path
     code = self.get_code_object(request)
     id = gen_unique_id()
     widget = html.Widget('div', id = id, cn = 'econometric-plot')\
             .addData('height',height)\
             .addData('start',start)\
             .addData('jsondata',{'url':service_url,
                                  'requestMethod':method})
     if code:
         widget.addData('command',{'show':False,'symbol':code})
     return widget
Ejemplo n.º 3
0
 def get_widget(self, djp):
     kwargs = djp.kwargs
     height = max(int(kwargs.get('height',400)),30)
     service_url = kwargs.get('service_url',self.path)
     start = kwargs.get('start',None)
     code = self.get_code_object(djp)
     id = gen_unique_id()
     widget = html.Widget('div', id = id, cn = 'econometric-plot')\
             .addData('height',height)\
             .addData('start',start)\
             .addData('url',service_url)
     if code:
         widget.addData('commandline',{'show':False,'symbol':code})
     return widget
Ejemplo n.º 4
0
 def get_widget(self,
                request,
                height=400,
                service_url=None,
                method='get',
                start=None,
                **kwargs):
     service_url = service_url or self.path
     code = self.get_code_object(request)
     id = gen_unique_id()
     widget = html.Widget('div', id = id, cn = 'econometric-plot')\
             .addData('height',height)\
             .addData('start',start)\
             .addData('jsondata',{'url':service_url,
                                  'requestMethod':method})
     if code:
         widget.addData('command', {'show': False, 'symbol': code})
     return widget
Ejemplo n.º 5
0
 def __call__(self, text):
     sx = Sphinx(self.srcdir,
                 self.cfgdir,
                 self.outdir,
                 self.srcdir,SingleStringHTMLBuilder.name)
     sx.media_url = self.media_url
     master_doc = gen_unique_id()
     mc = (master_doc,'env')
     sx.config.values['master_doc'] = mc
     sx.config.config_values['master_doc'] = mc
     fname = os.path.join(self.srcdir,'{0}.rst'.format(master_doc))
     fdoc = os.path.join(self.srcdir,'{0}.doctree'.format(master_doc))
     f = open(fname,'w')
     f.write(text)
     f.close()
     sx.build(force_all=True)
     res = sx.builder.docwriter.parts['fragment']
     os.remove(fname)
     os.remove(fdoc)
     return res
Ejemplo n.º 6
0
 def __call__(self, request, text):
     if not self._setup:
         self.setup(request)
         self._setup = True
     sx = DjpSphinx(self.srcdir,
                    self.outdir,
                    self.srcdir,
                    SingleStringHTMLBuilder.name,
                    confoverrides=self.confoverrides)
     sx.media_url = self.media_url
     master_doc = gen_unique_id()
     mc = (master_doc, 'env')
     sx.config.values['master_doc'] = mc
     sx.config.config_values['master_doc'] = mc
     fname = os.path.join(self.srcdir, '{0}.rst'.format(master_doc))
     fdoc = os.path.join(self.srcdir, '{0}.doctree'.format(master_doc))
     f = open(fname, 'w')
     f.write(text)
     f.close()
     sx.build(force_all=True)
     res = sx.builder.docwriter.parts['fragment']
     os.remove(fname)
     os.remove(fdoc)
     return res
Ejemplo n.º 7
0
def get_form(djp,
             form_class,
             method = 'POST',
             initial = None,
             prefix = None,
             addinputs = None,
             withdata = True,
             instance  = None,
             model = None,
             form_withrequest = None,
             template = None,
             form_ajax = False,
             withinputs = False):
    '''Comprehensive method for building a
:class:`djpcms.utils.uniforms.UniForm` instance:
    
:parameter djp: instance of :class:`djpcms.views.DjpResponse`.
:parameter form_class: required form class.
:parameter method: optional string indicating submit method. Default ``POST``.
:parameter initial: If not none, a dictionary of initial values.
:parameter prefix: Optional prefix string to use in the form.
:parameter addinputs: An optional function for creating inputs.
                      If available, it is called if the
                      available form class as no inputs associated with it.
                      Default ``None``.
'''
    from djpcms.utils.uniforms import UniForm
    request  = djp.request
    own_view = djp.own_view()
    
    data = request.POST if request.method == 'POST' else request.GET
    prefix = data.get('_prefixed',None)
    
    save_as_new = data.has_key('_save_as_new')
    initial  = update_initial(request, form_class, initial,
                              own_view = own_view)
    
    inputs = getattr(form_class,'submits',None)
    if inputs:
        inputs = [input(value = val, name = nam) for val,nam in inputs]
    elif addinputs:
        inputs = addinputs(instance, own_view)
        
    if not prefix:
        prefix = gen_unique_id()
        inputs.append(input(value = prefix, name = '_prefixed', type = 'hidden'))
                
    f     = form_class(**form_kwargs(request     = request,
                                     initial     = initial,
                                     instance    = instance,
                                     prefix      = prefix,
                                     withdata    = withdata,
                                     withrequest = form_withrequest,
                                     method      = method,
                                     own_view    = own_view,
                                     save_as_new = save_as_new,
                                     inputs      = inputs if withinputs else None))
        
    wrap = UniForm(f,
                   request  = request,
                   instance = instance,
                   action   = djp.url,
                   inputs   = inputs,
                   template = template,
                   save_as_new = save_as_new)
    if form_ajax:
        wrap.addClass(djp.css.ajax)
    wrap.is_ajax = request.is_ajax()
    if model:
        wrap.addClass(str(model._meta).replace('.','-'))
    return wrap