예제 #1
0
    def post(self, slug=None):
        form = DashboardForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))

        get_bucket = [
            b for b in MyAdminBucket.get('dashboard').data or []
            if b['slug'] != data['slug']
        ]
        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('dashboard', data=get_bucket)
        """
        for k in data:
            b1.add_index("{}_bin".format(k), data[k])
        """
        b1.store()

        self.redirect('/admin/dashboard')
예제 #2
0
    def post(self, slug=None):
        form = CubeForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))
        data['sql'] = data.get('sql').replace("\n", "").replace("\r", "")
        data['sql'] = data.get('sql').replace("\t", " ")

        get_bucket = [b for b in MyAdminBucket.get('cube').data or []
                      if b['slug'] != data['slug']]
        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('cube', data=get_bucket)
        b1.add_index("slug_bin", data['slug'])
        b1.add_index("connection_bin", data['connection'])
        b1.store()

        Queue(connection=Redis()).enqueue_call(
            func='bin.mining.run',
            args=(slug,)
        )

        self.redirect('/admin/cube')
예제 #3
0
    def post(self, slug=None):
        form = CubeForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))
        data['sql'] = data.get('sql').replace("\n", "").replace("\r", "")
        data['sql'] = data.get('sql').replace("\t", " ")

        get_bucket = [
            b for b in MyAdminBucket.get('cube').data or []
            if b['slug'] != data['slug']
        ]
        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('cube', data=get_bucket)
        b1.add_index("slug_bin", data['slug'])
        b1.add_index("connection_bin", data['connection'])
        b1.store()

        Queue(connection=Redis()).enqueue_call(func='bin.mining.run',
                                               args=(slug, ))

        self.redirect('/admin/cube')
예제 #4
0
    def post(self, slug=None):
        form = ElementForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))
        data['categories'] = self.request.arguments.get('categories')[0]

        get_bucket = [
            b for b in MyAdminBucket.get('element').data or []
            if b['slug'] != data['slug']
        ]
        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('element', data=get_bucket)
        b1.add_index("slug_bin", data['slug'])
        b1.add_index("type_bin", data['type'])
        b1.add_index("cube_bin", data['cube'])
        b1.store()

        self.redirect('/admin/element')
예제 #5
0
    def get(self, bucket, slug):
        get_bucket = MyAdminBucket.get(bucket).data or []

        value = None
        for i in get_bucket:
            if i.get(bucket) == slug:
                value = i.get(bucket)
        get_bucket = [b for b in get_bucket if b['slug'] != slug]

        MyAdminBucket.new(bucket, data=get_bucket).store()

        Queue(connection=Redis()).enqueue_call(
            func='admin.tasks.related_delete', args=(bucket, slug, value))

        self.redirect('/admin/{}'.format(bucket))
예제 #6
0
    def get(self):
        get_bucket = MyAdminBucket.get('dashboard').data
        if get_bucket is None:
            get_bucket = []

        self.write(json.dumps(get_bucket))
        self.finish()
예제 #7
0
    def post(self):
        post = json.loads(self.request.body)

        MyClient = riak.RiakClient(protocol=RIAK_PROTOCOL,
                                   http_port=RIAK_HTTP_PORT,
                                   host=RIAK_HOST)

        MyAdminBucket = MyClient.bucket(ADMIN_BUCKET_NAME)

        connection = None
        for c in MyAdminBucket.get('connection').data:
            if c['slug'] == post.get('connection', None):
                connection = c['connection']

        sql = """SELECT * FROM ({}) AS CUBE LIMIT 10;""".format(
            post.get('sql', None))

        e = create_engine(connection)
        connection = e.connect()
        try:
            resoverall = connection.execute(text(sql))
        except:
            self.write({'sql': '', 'msg': 'Error!'})
            self.finish()

        df = DataFrame(resoverall.fetchall())
        if df.empty:
            self.finish()
        df.columns = resoverall.keys()
        df.head()

        self.write({'sql': df.to_json(orient='records'), 'msg': 'Success!'})
        self.finish()
예제 #8
0
    def post(self):
        post = json.loads(self.request.body)

        MyClient = riak.RiakClient(protocol=RIAK_PROTOCOL,
                                   http_port=RIAK_HTTP_PORT,
                                   host=RIAK_HOST)

        MyAdminBucket = MyClient.bucket(ADMIN_BUCKET_NAME)

        connection = None
        for c in MyAdminBucket.get('connection').data:
            if c['slug'] == post.get('connection', None):
                connection = c['connection']

        sql = """SELECT * FROM ({}) AS CUBE LIMIT 10;""".format(
            post.get('sql', None))

        e = create_engine(connection)
        connection = e.connect()
        try:
            resoverall = connection.execute(text(sql))
        except:
            self.write({'sql': '', 'msg': 'Error!'})
            self.finish()

        df = DataFrame(resoverall.fetchall())
        if df.empty:
            self.finish()
        df.columns = resoverall.keys()
        df.head()

        self.write({'sql': df.to_json(orient='records'), 'msg': 'Success!'})
        self.finish()
예제 #9
0
    def get(self):
        get_bucket = MyAdminBucket.get('dashboard').data
        if get_bucket is None:
            get_bucket = []

        self.write(json.dumps(get_bucket))
        self.finish()
예제 #10
0
    def get(self, bucket, slug):
        get_bucket = MyAdminBucket.get(bucket).data or []

        value = None
        for i in get_bucket:
            if i.get(bucket) == slug:
                value = i.get(bucket)
        get_bucket = [b for b in get_bucket if b['slug'] != slug]

        MyAdminBucket.new(bucket, data=get_bucket).store()

        Queue(connection=Redis()).enqueue_call(
            func='admin.tasks.related_delete',
            args=(bucket, slug, value)
        )

        self.redirect('/admin/{}'.format(bucket))
예제 #11
0
    def post(self, slug=None):
        form = ConnectionForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))

        get_bucket = MyAdminBucket.get('connection').data or []
        get_bucket = [b for b in get_bucket if b['slug'] != data['slug']]

        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('connection', data=get_bucket)
        b1.store()

        self.redirect('/admin/connection')
예제 #12
0
    def post(self, slug=None):
        form = ConnectionForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))

        get_bucket = MyAdminBucket.get('connection').data or []
        get_bucket = [b for b in get_bucket if b['slug'] != data['slug']]

        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('connection', data=get_bucket)
        b1.store()

        self.redirect('/admin/connection')
예제 #13
0
    def get(self, slug=None):
        form = CubeForm()
        form.connection.choices = ObjGenerate('connection', 'slug', 'name')

        get_bucket = MyAdminBucket.get('cube').data or []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/cube.html', form=form, cube=get_bucket, slug=slug)
예제 #14
0
    def get(self, slug=None):
        form = ConnectionForm()

        get_bucket = MyAdminBucket.get('connection').data or []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/connection.html', form=form, slug=slug,
                    connection=get_bucket)
예제 #15
0
    def get(self, slug=None):
        form = CubeForm()
        form.connection.choices = ObjGenerate('connection', 'slug', 'name')

        get_bucket = MyAdminBucket.get('cube').data or []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/cube.html', form=form, cube=get_bucket, slug=slug)
예제 #16
0
파일: views.py 프로젝트: yupbank/mining
    def get(self, slug=None):
        form = CubeForm()

        get_bucket = MyAdminBucket.get('cube').data
        if get_bucket is None:
            get_bucket = []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/cube.html', form=form, cube=get_bucket, slug=slug)
예제 #17
0
    def get(self, slug=None):
        form = ConnectionForm()

        get_bucket = MyAdminBucket.get('connection').data or []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/connection.html',
                    form=form,
                    slug=slug,
                    connection=get_bucket)
예제 #18
0
    def post(self, slug=None):
        form = ElementForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))
        data['categories'] = self.request.arguments.get('categories')[0]

        get_bucket = [b for b in MyAdminBucket.get('element').data or []
                      if b['slug'] != data['slug']]
        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('element', data=get_bucket)
        b1.add_index("slug_bin", data['slug'])
        b1.add_index("type_bin", data['type'])
        b1.add_index("cube_bin", data['cube'])
        b1.store()

        self.redirect('/admin/element')
예제 #19
0
    def post(self, slug=None):
        form = DashboardForm(self.request.arguments)
        if not form.validate():
            self.set_status(400)
            self.write(form.errors)

        data = form.data
        data['slug'] = slugfy(data.get('name'))

        get_bucket = [b for b in MyAdminBucket.get('dashboard').data or []
                      if b['slug'] != data['slug']]
        if get_bucket is None:
            get_bucket = []
        get_bucket.append(data)

        b1 = MyAdminBucket.new('dashboard', data=get_bucket)
        """
        for k in data:
            b1.add_index("{}_bin".format(k), data[k])
        """
        b1.store()

        self.redirect('/admin/dashboard')
예제 #20
0
파일: views.py 프로젝트: yupbank/mining
    def get(self, slug=None):
        form = ElementForm()

        get_bucket = MyAdminBucket.get('element').data
        if get_bucket is None:
            get_bucket = []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/element.html',
                    form=form,
                    element=get_bucket,
                    slug=slug)
예제 #21
0
    def get(self, slug=None):
        form = DashboardForm()
        form.element.choices = ObjGenerate('element', 'slug', 'name')

        get_bucket = MyAdminBucket.get('dashboard').data
        if get_bucket is None:
            get_bucket = []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/dashboard.html',
                    form=form,
                    dashboard=get_bucket,
                    slug=slug)
예제 #22
0
    def get(self, slug=None):
        form = DashboardForm()
        form.element.choices = ObjGenerate('element', 'slug', 'name')

        get_bucket = MyAdminBucket.get('dashboard').data
        if get_bucket is None:
            get_bucket = []

        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]

        self.render('admin/dashboard.html',
                    form=form,
                    dashboard=get_bucket,
                    slug=slug)
예제 #23
0
    def get(self, slug=None):
        form = ElementForm()
        form.cube.choices = ObjGenerate('cube', 'slug', 'name')

        get_bucket = MyAdminBucket.get('element').data
        if get_bucket is None:
            get_bucket = []

        categorie = None
        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]
                categorie = bload.get('categories')

        self.render('admin/element.html',
                    form=form,
                    element=get_bucket,
                    categorie=categorie,
                    slug=slug)
예제 #24
0
    def get(self, slug=None):
        form = ElementForm()
        form.cube.choices = ObjGenerate('cube', 'slug', 'name')

        get_bucket = MyAdminBucket.get('element').data
        if get_bucket is None:
            get_bucket = []

        categorie = None
        for bload in get_bucket:
            if bload['slug'] == slug:
                for k in form._fields:
                    getattr(form, k).data = bload[k]
                categorie = bload.get('categories')

        self.render('admin/element.html',
                    form=form,
                    element=get_bucket,
                    categorie=categorie,
                    slug=slug)
예제 #25
0
파일: views.py 프로젝트: fth-ship/mining
    def get(self, slug):
        data = MyAdminBucket.get(u'{}-columns'.format(slug)).data or '{}'
        columns = json.loads(data)

        self.write({'columns': columns})
        self.finish()