Example #1
0
def index(request, path=None):
    f = open("/tmp/log.txt", "a")
    f.write("path: %s\n" % str(path))
    f.write("request: %s\n" % str(request))
    path = request.GET.get('page', None)
    if path == '':
        path = 'index'
    f.write("pth: %s \n" % (path))
    if path is None:
        # workaround in history tokens: must have a query
        return HttpResponseRedirect("./?page=#index")
    p = Page.objects.get(name=path)
    f.write("page: %s \n" % (str(p)))
    f.close()
    args = {'title': p.name,
            'noscript': p.text
            }
    context_instance=RequestContext(request)
    context_instance.autoescape=False
    try:
        template = Page.objects.get(name='index.html')
    except Page.DoesNotExist:
        template = None
    if not template:
        return render_to_response('index.html', args, context_instance)
    tpl = loader.get_template_from_string(template)
    context_instance.update(args)
    tpl = tpl.render(context_instance)
    return HttpResponse(tpl)
Example #2
0
def experimental_group(request):
    test = request.session['test']
    groups = ExperimentalGroup.objects.filter(test=test).order_by('id')

    if not 'participant' in request.session:

        def get_next_group():
            try:
                latest_group_id = Participant.objects.filter(
                    test=test).latest('id').experimental_group.id
                for i in range(len(groups)):
                    if groups[i].id == latest_group_id:
                        return groups[0] if (i == (len(groups) -
                                                   1)) else groups[i + 1]
            except ObjectDoesNotExist:
                return groups[0]

        group = get_next_group()

        participant = Participant.objects.create_participant(group, test)
        request.session['participant'] = participant
    else:
        group = request.session['participant'].experimental_group

    if not group.page:
        return redirect(reverse('test'))

    object_context = {'flatpage': group.page, 'next_page_url': '/test/'}
    context_instance = RequestContext(request)
    context_instance.autoescape = False
    return render(request,
                  'flatpages/default.html',
                  object_context,
                  context_instance=context_instance)
Example #3
0
def page(request, name):
    context_instance=RequestContext(request)
    context_instance.autoescape=False
    if name == 'index': 
        name = 'home'
    name = os.path.basename(name)
    page =  get_object_or_404(Page, name = name)
    navigation = page.get_absolute_url()
    level = page
    while level.parent:
        if Navigation.objects.filter(url = navigation):
            break
        level = level.parent
        navigation = level.get_absolute_url()
    c = dict(
            page = page, 
            navigation = get_navigation(request, navigation),
            twitter = False
            )
    if name in (u'home',):
        c['twitter'] = 'seabirders'
        if len(UserProfile.objects.all()) > 8:
            c['seabirders'] = random.sample(
                [profile for profile in UserProfile.objects.all() if hasattr(profile.photograph, 'file')],
                9)
        else:
            c['seabirders'] = []
    return render_to_response('index.html', c, context_instance)
Example #4
0
def page(request, name):
    context_instance=RequestContext(request)
    context_instance.autoescape=False
    if name == 'index': 
        name = 'home'
        fullpath = ""
    else:
        fullpath = name
    name = os.path.basename(name)
    page =  get_object_or_404(Page, name = name)
    navigation = page.get_absolute_url()
    level = page
    while level.parent:
        if Navigation.objects.filter(url = navigation):
            break
        level = level.parent
        navigation = level.get_absolute_url()
    c = dict(
            page = page, 
            navigation = get_navigation(navigation),
            twitter = False
            )
    if name in (u'home',):
        c['twitter'] = 'seabirders'
    return render_to_response('index.html', c, context_instance)
Example #5
0
def index(request, path=None):
    path = request.GET.get('page', None)
    if path == '':
        path = 'index'
    if path is None:
        # workaround in history tokens: must have a query
        return HttpResponseRedirect("./?page=#index")
    try:
        p = Page.objects.get(name=path)
    except Page.DoesNotExist:
        p = None
    if not p and path == 'index':
        return render_to_response('index.html', {'title':'', 'noscript':''})
    args = {'title': p.name,
            'noscript': p.text
            }
    context_instance=RequestContext(request)
    context_instance.autoescape=False
    try:
        template = Item.objects.get(name='index.html')
    except Item.DoesNotExist:
        template = None
    if not template:
        return render_to_response('index.html', args, context_instance)
    tpl = loader.get_template_from_string(template)
    context_instance.update(args)
    tpl = tpl.render(context_instance)
    return HttpResponse(tpl)
Example #6
0
def confirmation(request):
    object_context = {
        'flatpage': request.session['test'].confirmation_page
    }     
    context_instance = RequestContext(request)
    context_instance.autoescape=False    
    return render(request, 'flatpages/default.html', object_context, context_instance=context_instance)
Example #7
0
def experimental_group(request):
    test = request.session['test']
    groups = ExperimentalGroup.objects.filter(test=test).order_by('id')
    
    if not 'participant' in request.session:
        def get_next_group():
            try:
                latest_group_id = Participant.objects.filter(test=test).latest('id').experimental_group.id
                for i in range(len(groups)):
                    if groups[i].id == latest_group_id:
                       return groups[0] if (i == (len(groups) - 1)) else groups[i + 1]
            except ObjectDoesNotExist:
                return groups[0]

        group = get_next_group()
    
        participant = Participant.objects.create_participant(group, test)
        request.session['participant'] = participant
    else:
        group = request.session['participant'].experimental_group
                               
    if not group.page:
        return redirect(reverse('test'))
    
    object_context = {
        'flatpage': group.page,
        'next_page_url': '/test/'
    }
    context_instance = RequestContext(request)
    context_instance.autoescape=False    
    return render(request, 'flatpages/default.html', object_context, context_instance=context_instance)
Example #8
0
def index(request):
    context_instance = RequestContext(request)
    context_instance.autoescape = False  
    object_context = {
        "add_engine_form": AddEngineForm(),
        "engine_types": serializers.serialize("json", EngineType.objects.all())        
    }
    return render(request, "simulator/index.html", object_context, context_instance=context_instance)
Example #9
0
def confirmation(request):
    object_context = {'flatpage': request.session['test'].confirmation_page}
    context_instance = RequestContext(request)
    context_instance.autoescape = False
    return render(request,
                  'flatpages/default.html',
                  object_context,
                  context_instance=context_instance)
Example #10
0
def informed_consent(request):
    object_context = {
        'flatpage': request.session['test'].informed_consent_page,
        'next_page_url': '/introduction/'
    }     
    context_instance = RequestContext(request)
    context_instance.autoescape=False    
    return render(request, 'flatpages/default.html', object_context, context_instance=context_instance)
Example #11
0
def informed_consent(request):
    object_context = {
        'flatpage': request.session['test'].informed_consent_page,
        'next_page_url': '/introduction/'
    }
    context_instance = RequestContext(request)
    context_instance.autoescape = False
    return render(request,
                  'flatpages/default.html',
                  object_context,
                  context_instance=context_instance)
Example #12
0
def introduction(request):
    page = request.session['test'].introduction_page
    if page:
        object_context = {
            'flatpage': page,
            'next_page_url': '/experimental-group/'
        } 
        context_instance = RequestContext(request)
        context_instance.autoescape=False
        return render(request, 'flatpages/default.html', object_context, context_instance=context_instance)
    else:
        return redirect(reverse('experimental-group'))
Example #13
0
def note_id(request, note_id):
    note = Note.objects.filter(id=note_id)
    c = {}
    if len(note) == 0:
        tpl = "note_404.html"
        c["note"] = {"id": note_id}
    else:
        tpl = "note_detail_text.html"
        c["note"] = note[0]

    t = loader.get_template(tpl)
    req_c = RequestContext(request, c)
    req_c.autoescape = False
    return HttpResponse(t.render(req_c))
Example #14
0
def test(request):    
    def get_blocks(test):
        blocks = Block.objects.filter(test=test)    
        distinct_trials = Trial.objects.filter(participant=request.session['participant']).values('block').distinct()
        for distinct_trial in distinct_trials:
            block = blocks.get(block_name=distinct_trial['block'])
            block_trials = Trial.objects.filter(participant=request.session['participant'], block=distinct_trial['block'])
            if block.number_of_stimuli == block_trials.count():
                blocks = blocks.exclude(id=block.id)
            else:
                block_trials.delete()
        return blocks

    test = request.session['test']
    test.password = None
    blocks = get_blocks(test) 
                
    stimuli_orders = []
    category_ids = []
    for block in blocks:
        stimuli_orders.append(StimuliOrder.objects.filter(block=block)[0])
        category_ids.append(block.primary_left_category_id)
        category_ids.append(block.primary_right_category_id)
        if not block.primary_left_category_id is None:
            category_ids.append(block.secondary_left_category_id)
        if not block.secondary_right_category_id is None:
            category_ids.append(block.secondary_right_category_id)
          
    categories = Category.objects.filter(id__in=category_ids)   
    
    stimuli = set()
    for stimuli_order in stimuli_orders:
        stimuli = stimuli.union(set(stimuli_order.stimuli.get_queryset()))
    
    context_instance = RequestContext(request)
    context_instance.autoescape=False    
    
    object_context = {
        'test': serializers.serialize('json', [test]),
        'blocks': serializers.serialize('json', blocks),
        'categories': serializers.serialize('json', categories),
        'stimuli': serializers.serialize('json', stimuli),
        'stimuli_orders': serializers.serialize('json', stimuli_orders),
        'left_key_bind': test.left_key_bind.upper(),
        'right_key_bind': test.right_key_bind.upper(),
        'next_page_url': '/confirmation/' if not test.survey_url else test.survey_url + "?c=" + str(request.session['participant'].id),
        'media_url': settings.MEDIA_URL,
    }
    return render(request, 'test/test.html', object_context, context_instance=context_instance)
Example #15
0
def view_parsing_status(request, template='status.html', extra_context=None):
    context = RequestContext(request); 
    sbpclist = SBPC.objects.all().order_by( 'rank' );
    status_dsc = [ 'danger', 'success', 'danger', 'warning'];
    success_count = 0
    for pc in sbpclist:
        pc.statusinfo = status_dsc[ pc.status ];
        pc.parseconfig = eval( pc.parseconfig );
        success_count += 1 if pc.statusinfo=='success' else 0
    context['schools'] = sbpclist;
    context['count'] = len(sbpclist);
    context['progress'] = (float)(success_count) / (float)(len(sbpclist)) * 100
    context_instance=RequestContext(request);
    context_instance.autoescape=False;
    return rtr(template, context,context_instance);
Example #16
0
def introduction(request):
    page = request.session['test'].introduction_page
    if page:
        object_context = {
            'flatpage': page,
            'next_page_url': '/experimental-group/'
        }
        context_instance = RequestContext(request)
        context_instance.autoescape = False
        return render(request,
                      'flatpages/default.html',
                      object_context,
                      context_instance=context_instance)
    else:
        return redirect(reverse('experimental-group'))
Example #17
0
File: views.py Project: Sir2B/Uni
def view_page(request, page_name):
    try:
        page = Page.objects.get(pk=page_name)
    except Page.DoesNotExist:
        c = {"page_name": page_name}
        c.update(csrf(request))
        return render_to_response("create.html", c)

    content = page.content
    c = {"page_name": page_name, "content": markdown.markdown(content)}
    c.update(csrf(request))

    context_instance=RequestContext(request)
    context_instance.autoescape=False

    return render_to_response("view.html", c, context_instance)
Example #18
0
def experimental_group(request):
    test = request.session['test']

    identifier_from_session = request.session['identifier']  #hinzugefuegt

    #    request.session['code'] = Code.objects.get(participant_code=request.POST['Kennziffer']) #prueft ob code in der Datenbank vorhanden ist.
    #    code = Test.objects.get(id=request.POST['code_id'])                           #Welche der beiden Zeilen macht mehr Sinn?
    #    code = request.session['code']                                              #Das ist irgendwie falsch...

    groups = ExperimentalGroup.objects.filter(test=test).order_by('id')

    if not 'participant' in request.session:

        def get_next_group():
            try:
                latest_group_id = Participant.objects.filter(
                    test=test).latest('id').experimental_group.id
                for i in range(len(groups)):
                    if groups[i].id == latest_group_id:
                        return groups[0] if (i == (len(groups) -
                                                   1)) else groups[i + 1]
            except ObjectDoesNotExist:
                return groups[0]

        group = get_next_group()

        participant = Participant.objects.create_participant(
            group, test)  #"code" hinzugefuegt
        participant.identifier = identifier_from_session
        participant.save()
        request.session['participant'] = participant
        #request.session['participant'].identifier = 'initial'
    else:
        group = request.session['participant'].experimental_group

    if not group.page:
        return redirect(reverse('test'))

    object_context = {'flatpage': group.page, 'next_page_url': '/test/'}
    context_instance = RequestContext(request)
    context_instance.autoescape = False
    return render(request,
                  'flatpages/default.html',
                  object_context,
                  context_instance=context_instance)
Example #19
0
def AutoRequestContext(*args, **kwargs):
    request = get_current_request()
    if request is None:
        print "Couldn't use RequestContext!  Falling back to Context..."
        print "This is almost certainly a bug; either Context should be being used explicitly, or RequestContext ought to be available here."
        return Context(*args, **kwargs)
    else:
        if 'autoescape' in kwargs:
            autoescape = kwargs['autoescape']
            del kwargs['autoescape']

            retVal = RequestContext(request, *args, **kwargs)

            retVal.autoescape = autoescape

            return retVal
        else:
            return RequestContext(request, *args, **kwargs)
Example #20
0
def viewbyschool(request, template='content_by_school.html', extra_context=None):
    context = RequestContext(request); 
    sbpclist = SBPC.objects.filter( status = STATUS_NORMAL ).order_by( 'rank' );
    bbstop10infolist = [];
    for sbpc in sbpclist:
        top10list = Link.objects.filter( school = sbpc ).order_by('-updatetime')[0:10];
        
        bbstop10infolist.append( {'sbpc': jsbpc,'itemlist': jtop10list,} );
    
    length = len( bbstop10infolist );
    context['col1'] = bbstop10infolist[0:length/2];
    context['col2'] = bbstop10infolist[length/2:length ];
    recommendlist = Link.objects.filter( tags = 'recommend' ).order_by('-updatetime')[0:10];
    context['recommend'] = recommendlist;
    context['announcement'] = OptionSet.getValue('announcement', 'Currently No Announcement');
    context_instance=RequestContext(request)
    context_instance.autoescape=False;
    return rtr(template, context,context_instance);
Example #21
0
def detail(request,id):    
    docs = COUCHDB['testmill']
    try:
        doc = docs[id]
    except ResourceNotFound:
        raise Http404        
    if request.method == "POST":
        # doc['name'] = request.POST['name']
        #  doc['text'] = request.POST['text']
        for e in request.POST:
            doc[e] = request.POST[e]
        docs[id] = doc
    
    # Disable the auto escapeing and do it manually
    # so that input html is rendered
    context_instance=RequestContext(request)
    context_instance.autoescape=False

    return render_to_response('projects/detail.html',{'row':doc, 'id':id, 'ticket':TICKET}, context_instance)
def AutoRequestContext(*args, **kwargs):
    request = get_current_request()
    if request is None:
        logger.error("Couldn't use RequestContext! Falling back to Context. "
                     "This is almost certainly a bug; either Context should "
                     "be being used explicitly, or RequestContext ought to "
                     "be available here.")
        return Context(*args, **kwargs)
    else:
        if 'autoescape' in kwargs:
            autoescape = kwargs['autoescape']
            del kwargs['autoescape']

            retVal = RequestContext(request, *args, **kwargs)

            retVal.autoescape = autoescape

            return retVal
        else:
            return RequestContext(request, *args, **kwargs)
Example #23
0
def page(request, name):
    context_instance = RequestContext(request)
    context_instance.autoescape = False
    if name == 'index':
        name = 'home'
        fullpath = ""
    else:
        fullpath = name
    name = os.path.basename(name)
    page = get_object_or_404(Page, name=name)
    navigation = page.get_absolute_url()
    level = page
    while level.parent:
        if Navigation.objects.filter(url=navigation):
            break
        level = level.parent
        navigation = level.get_absolute_url()
    c = dict(page=page, navigation=get_navigation(navigation), twitter=False)
    if name in (u'home', ):
        c['twitter'] = 'seabirders'
    return render_to_response('index.html', c, context_instance)
Example #24
0
def test(request):
    def get_blocks(test):
        blocks = Block.objects.filter(test=test)
        distinct_trials = Trial.objects.filter(
            participant=request.session['participant']).values(
                'block').distinct()
        for distinct_trial in distinct_trials:
            block = blocks.get(block_name=distinct_trial['block'])
            block_trials = Trial.objects.filter(
                participant=request.session['participant'],
                block=distinct_trial['block'])
            if block.number_of_stimuli == block_trials.count():
                blocks = blocks.exclude(id=block.id)
            else:
                block_trials.delete()
        return blocks

    test = request.session['test']
    test.password = None
    blocks = get_blocks(test)

    stimuli_orders = []
    category_ids = []
    for block in blocks:
        stimuli_orders.append(StimuliOrder.objects.filter(block=block)[0])
        category_ids.append(block.primary_left_category_id)
        category_ids.append(block.primary_right_category_id)
        if not block.primary_left_category_id is None:
            category_ids.append(block.secondary_left_category_id)
        if not block.secondary_right_category_id is None:
            category_ids.append(block.secondary_right_category_id)

    categories = Category.objects.filter(id__in=category_ids)

    stimuli = set()
    for stimuli_order in stimuli_orders:
        stimuli = stimuli.union(set(stimuli_order.stimuli.get_queryset()))

    context_instance = RequestContext(request)
    context_instance.autoescape = False

    object_context = {
        'test':
        serializers.serialize('json', [test]),
        'blocks':
        serializers.serialize('json', blocks),
        'categories':
        serializers.serialize('json', categories),
        'stimuli':
        serializers.serialize('json', stimuli),
        'stimuli_orders':
        serializers.serialize('json', stimuli_orders),
        'left_key_bind':
        test.left_key_bind.upper(),
        'right_key_bind':
        test.right_key_bind.upper(),
        'next_page_url':
        '/confirmation/' if not test.survey_url else test.survey_url + "?c=" +
        str(request.session['participant'].id),
        'media_url':
        settings.MEDIA_URL,
    }
    return render(request,
                  'test/test.html',
                  object_context,
                  context_instance=context_instance)
Example #25
0
    linkid = request.GET.get('l', '0');
    absurl = request.get_full_path()

    try:
        linkitem = Link.objects.get( id = int(linkid) );
        linkitem.visitcount = linkitem.visitcount + 1;
        linkitem.save();
    except Link.DoesNotExist:
        info = "Exception when get link using id:%s, %s"%(linkid,e);
        raise Http404;
    except Exception,e:
        pass;
    context['link'] = linkitem;
    context_instance=RequestContext(request);
    context['fullurl'] = absurl;
    context_instance.autoescape=False;
    return rtr(template, context,context_instance);

    
    

def gae_cron_job_sendblog( request , template='cron_mblog_result.html',extra_context=None):
    context=RequestContext(request);
    #now         = datetime.now()
    delta       = timedelta( hours = -4 );
    criteria    = datetime.datetime.now() + delta;

    hourlylinks = get_object_list( Link, 'createtime > ', criteria ).order('-createtime').order('-visitcount');
    recommend_count = 0;
    sina_list = [];n163_list = [];twitter_list=[];