示例#1
0
文件: views.py 项目: MrHanachoo/OSB
def publish_container(container_name, status):
    if 'url' in session and 'token' in session:
        form = ContConfigForm()
        print status
        cg = Containers.config(url=session['url'], token=session['token'], container_name=container_name, status=status)
        result = {'status': cg}
        return jsonify(**result)
示例#2
0
文件: views.py 项目: MrHanachoo/OSB
def search():
    if 'url' in session and 'token' in session:
        val = request.args.get('val')
        print "#########################################", val
        try:
            output = swiftclient.get_account(url=session['url'], token=session['token'])
        except swiftclient.ClientException:
            return redirect(url_for('logout'))
        print 'DEBUG: views.account().swiftclient.get_account: '+str(output)
        account_info = output[0]
        account_info['x-account-bytes-used'] = float(account_info['x-account-bytes-used']) /(1024**3)
        cont_list = output[1]
        cont_list_1 = []
        for i in cont_list:
            if val in i['name']:
                cont_list_1.append(i)

        acl_dic = {}
        for i in cont_list_1:
            acl_dic[i['name']] = Containers.check_read_acl(url=session['url'], token=session['token'], container_name=i['name'])

        return render_template('account.html',
                               title='Account',
                               account_info=account_info,
                               cont_list=cont_list_1,
                               acl_dic=acl_dic)
    else:
        return redirect(url_for('login'))
示例#3
0
文件: views.py 项目: MrHanachoo/OSB
def container(container_name):
    if 'url' in session and 'token' in session:
        session['container'] = container_name
        try:
            output = swiftclient.get_container(url=session['url'], token=session['token'], container=container_name)
        except swiftclient.ClientException:
            return redirect(url_for('logout'))

        print 'DEBUG: views.container().swiftclient.get_container: '+str(output)
        container_info = output[0]
        container_info['x-container-bytes-used'] = float(container_info['x-container-bytes-used']) /(1024**3)

        for i in output[1]:
            i['last_modified'] = i['last_modified'][:10]+" "+i['last_modified'][11:16]
            i['content_type'] = i['content_type'].split('/')[1]

            temp_meta = Objects.read_temp_url(url=session['url'], token=session['token'], container=container_name, object=i['name'])
            i['temp_url'] = temp_meta[0]
            timestamp = temp_meta[1]
            if timestamp == False:
                i['temp_url_exp'] = '- '
            else:
                i['temp_url_exp'] = datetime.datetime.fromtimestamp(float(timestamp))

            print '###############################################################'
        obj_list = output[1]
        print type(output)
        print output[0]
        print output[1]
        cont_acl = Containers.check_read_acl(url=session['url'], token=session['token'], container_name=container_name)
        return render_template('container.html',
                               title='Container',
                               container_info=container_info,
                               obj_list=obj_list,
                               cont_acl=cont_acl)
        '''
        result = {'status': output}
        return jsonify(**result)
        cont_list = Containers().list(session['url'], session['token'])

        objs_list = Objects().list(session['url'], session['token'], container_name)
        if not objs_list:
            return render_template('account.html',
                               title='Account',
                               cont_list=cont_list)
        return render_template('account.html',
                               title='container',
                               objs_list=objs_list,
                               cont_list=cont_list)
        '''

    else:
        return redirect(url_for('login'))