Exemplo n.º 1
0
class PageDetailViewTest(TestCase):
    _multiprocess_can_split_ = True

    def setUp(self):
        faker = Faker()
        author = create_user()
        self.page = Page(
            author=author, body=faker.paragraphs(),
            title=faker.words().capitalize())
        self.page.save()

    def test_page_detail_render(self):
        response = self.client.get(
            reverse(PAGE_DETAIL_URL, args=(self.page.slug, )))
        self.assertEqual(response.status_code, 200)
        self.assertContains(response, self.page.title)
        for paragraph in self.page.body.split('\n\n'):
            self.assertContains(response, paragraph)

    def test_pages_are_displayed_in_navigation(self):
        response = self.client.get(
            reverse(PAGE_DETAIL_URL, args=(self.page.slug, )))
        self.assertEqual(response.status_code, 200)
        self.assertQuerysetEqual(
            response.context['pages'],
            [repr(page) for page in Page.objects.all()])

    def test_draft_page_returns_404(self):
        self.page.is_draft = True
        self.page.save()
        response = self.client.get(
            reverse(PAGE_DETAIL_URL, args=(self.page.slug, )))
        self.assertEqual(response.status_code, 404)
Exemplo n.º 2
0
 def handle(self, *args, **options):
     print 'Hello!!'
     for i in range(100):
         page = Page()
         page.title = 'dddsadfasfas'
         page.content = 'sdfsdf sdfsd'
         page.meta_content = 'ffff'
         page.meta_title = 'title'
         page.meta_keywords = 'ddddd'
         page.slug = 'slug'
         page.save()
         print 'It has done %s - %s!!!' % (i, i)
Exemplo n.º 3
0
    def post(self):
        if 'content' in request.endpoint:
            session['content'] = request.form['content'][:]
            return self.redirect('admin.add_page')
        else:
            from auth.models import User
            from admin.forms import BaseTemplateForm
            from page.models import Template
            from page.models import Page
            from wtforms import FormField
            from ext import db
            self._context['choices'] = [(x, x.name)
                                        for x in Template.query.all()]
            form = model_form(Page,
                              db.session,
                              base_class=Form,
                              exclude=['date_added', 'added_by'])

            class PageForm(form):
                template = FormField(BaseTemplateForm)

                def _get_template_id(self, template_name):
                    from page.models import Template
                    t = Template.query.filter(
                        Template.name == template_name).first()
                    if t:
                        return t.id
                    return None

                def __init__(self, *args, **kwargs):
                    if 'prefix' in kwargs:
                        kwargs.pop('prefix')
                    super(PageForm, self).__init__(*args, **kwargs)

                def populate_obj(self, obj):
                    for name, field in self._fields.items():
                        if name == 'template':
                            obj.template_id = self._get_template_id(
                                field.template.data)
                            self._fields.pop(name)
                    super(PageForm, self).populate_obj(obj)

            self._form = PageForm(request.form)
            page = Page()
            self._form.populate_obj(page)
            if 'content' in session:
                page.content = session.pop('content', None)
            page.save()
            flash('Successfully created cms page: {}'.format(page.name))
            return self.redirect('admin.pages')
        return self.render()
Exemplo n.º 4
0
def delete(request, site, page_id):
    delete_children = request.GET.get('delete_children', False)
    active_site = Site.objects.get(id=site)

    if not delete_children:
        page = Page.on(active_site).get(id=page_id)
        new_parent = page.parent
        page.reparent_children(new_parent)

    # Yes, have to get the page again, or things will get messy
    page = Page.on(active_site).get(id=page_id)
    page.delete()

    return redirect('admin.sites.pages.page.list', active_site.id)
Exemplo n.º 5
0
 def test_save_existing_model_by_different_user(self):
     author = create_user()
     faker = Faker()
     page = Page(
         author=author,
         title=faker.words().capitalize(),
         body=faker.paragraphs())
     page.save()
     form = self.pageadmin.get_form(page)
     user = create_user()
     request = HttpRequest()
     request.user = user
     self.pageadmin.save_model(request, page, form, False)
     self.assertNotEqual(page.author, user)
     self.assertGreater(page.modified_at, page.created_at)
Exemplo n.º 6
0
    def get(self,item_id=None):
        from auth.models import User
        if 'page' in request.endpoint:
            from page.models import Page
            page = Page.get_by_id(item_id)
            if not 'content' in request.endpoint:
                self._form = model_form(Page,Page.session,base_class=Form,exclude=['added_by','date_added'])
                self._context['obj'] = page
            else:
                from page.forms import EditContentForm
                self._form = EditContentForm
            self._form_obj = page
        elif 'block' in request.endpoint:
            from page.models import Block
            block = Block.get_by_id(item_id)
            if not 'content' in request.endpoint:
                self._form = model_form(Block,Block.session,base_class=Form,exclude=['templates','pages'])
                self._context['obj'] = block
            else:
                from page.forms import EditContentForm
                self._form = EditContentForm
            self._form_obj = block
        else:
            from admin.forms import TemplateBodyFieldForm
            from wtforms import FormField
            from page.models import Template
            template = Template.get_by_id(item_id)
            form = model_form(Template,Template.session,base_class=Form,exclude=['pages','blocks','filename','body'])

            class TemplateForm(form):
                body = FormField(TemplateBodyFieldForm,separator='_')
            self._form = TemplateForm
            self._context['obj'] = template
            self._form_obj = template
        return self.render()
Exemplo n.º 7
0
def get_submenu():
	"""
	Show Siblings of the current page and all children
	"""	
	siblings = Page.get_all_siblings()
	#children = Page.objects.filter(parent=self.id)
	return {'siblings': siblings}
Exemplo n.º 8
0
 def setUp(self):
     faker = Faker()
     author = create_user()
     self.page = Page(
         author=author, body=faker.paragraphs(),
         title=faker.words().capitalize())
     self.page.save()
Exemplo n.º 9
0
def page(request, slug):
    try:
        page = Page.on(request.site).get(slug=slug, published=True)
    except Page.DoesNotExist:
        # This is (as of this writing) the only point of entry to the 404 template.
        raise Http404
    matched_variant = match_user(request, page)
    requested_variant = request.GET.get(variant_key)
    if requested_variant is None:
        if matched_variant is None:
            # No variant requested, and no variant matched. The default, simple view for a page.
            default_variant = Variant.objects.get(page=page, segment__isnull=True)
            version = Version.objects.get(variant=default_variant, active=True)
            return parse_content(request, version)
        else:
            # No variant requested, but the page has variants and a special one matched.
            return redirect("%s?%s=%s" %
                (reverse('page.views.page', args=[slug]), variant_key, matched_variant.id))
    else:
        # A specific variant was requested. Show it regardless of which variant matches the user,
        # but do log what actually matched.
        requested_variant = Variant.objects.get(id=requested_variant)
        version = Version.objects.get(variant=requested_variant, active=True)
        # In case the user happens to requests a variant without actually matching any
        if matched_variant is None:
            matched_segment = None
        else:
            matched_segment = matched_variant.segment
        return parse_content(request, version)
Exemplo n.º 10
0
    def post(self):
        if 'content' in request.endpoint:
            session['content'] = request.form['content'][:]
            return self.redirect('admin.add_page')
        else:
            from auth.models import User
            from admin.forms import BaseTemplateForm
            from page.models import Template
            from page.models import Page
            from wtforms import FormField
            from ext import db
            self._context['choices'] = [(x,x.name) for x in Template.query.all()]
            form = model_form(Page,db.session,base_class=Form,exclude=['date_added','added_by'])
            class PageForm(form):
                template = FormField(BaseTemplateForm)

                def _get_template_id(self,template_name):
                    from page.models import Template
                    t = Template.query.filter(Template.name==template_name).first()
                    if t:
                        return t.id
                    return None

                def __init__(self,*args,**kwargs):
                    if 'prefix' in kwargs:
                        kwargs.pop('prefix')
                    super(PageForm,self).__init__(*args,**kwargs)
                def populate_obj(self,obj):
                    for name,field in self._fields.items():
                        if name == 'template':
                            obj.template_id = self._get_template_id(field.template.data)
                            self._fields.pop(name)
                    super(PageForm,self).populate_obj(obj)

            self._form = PageForm(request.form)
            page = Page()
            self._form.populate_obj(page)
            if 'content' in session:
                page.content = session.pop('content',None)
            page.save()
            flash('Successfully created cms page: {}'.format(page.name))
            return self.redirect('admin.pages')
        return self.render()
Exemplo n.º 11
0
 def post(self, slug):
     from auth.models import User
     from page.models import Page
     self._page = Page.get_by_slug(slug)
     self.frontend_nav()
     self._context['content'] = self._page.content
     if self._page.use_base_template:
         if self._page.template is not None:
             self._base_template = self._page.body
         self._process_base_template()
Exemplo n.º 12
0
 def post(self,slug):
     from auth.models import User
     from page.models import Page
     self._page = Page.get_by_slug(slug)
     self.frontend_nav()
     self._context['content'] = self._page.content
     if self._page.use_base_template:
         if self._page.template is not None:
             self._base_template = self._page.body
         self._process_base_template()
Exemplo n.º 13
0
def list(request, site):
    active_site = Site.objects.get(id=site)
    pages = Page.objects.filter(site=active_site)
    root_page = Page.on(active_site).get(level=0)
    context = {
        'active_site': active_site,
        'nodes': pages,
        'root_node': root_page,
    }
    return render(request, 'common/admin/sites/pages/list.html', context)
Exemplo n.º 14
0
def new(request, site):
    active_site = Site.objects.get(id=site)

    if request.method != 'POST':
        return redirect('admin.sites.pages.page.list', active_site.id)

    if not slug_is_unique(request.POST['slug']):
        messages.error(request, 'slug_not_unique')
        return redirect('admin.sites.pages.page.new', active_site.id)

    page = Page(
        title=request.POST['title'],
        slug=request.POST['slug'],
        published=False,
        created_by=request.user,
        parent=Page.objects.get(id=request.POST['parent_id']),
        site=active_site,
    )
    page.save()

    variant = Variant(
        page=page,
        article=None,
        name='Standard',
        segment=None,
        priority=1,
        owner=request.user,
    )
    variant.save()

    version = Version(
        variant=variant,
        version=1,
        owner=request.user,
        active=True,
        ads=True,
    )
    version.save()

    create_template(request.POST['template'], version)
    return redirect('admin.sites.pages.page.edit', active_site.id, version.id)
Exemplo n.º 15
0
class PageAdminViewTest(TestCase):
    _multiprocess_can_split_ = True

    def setUp(self):
        faker = Faker()
        author = create_user()
        self.page = Page(
            author=author, body=faker.paragraphs(),
            title=faker.words().capitalize())
        self.page.save()

    @create_admin_user_and_login
    def test_page_edit_render(self):
        response = self.client.get(
            reverse(PAGE_EDIT_URL, args=(self.page.pk, )))
        self.assertEqual(response.status_code, 200)

    @create_admin_user_and_login
    def test_page_add_render(self):
        response = self.client.get(reverse(PAGE_ADD_URL))
        self.assertEqual(response.status_code, 200)
Exemplo n.º 16
0
def url_picker_context(active_site):
    article_versions = Version.objects.select_related('variant', 'variant__article').filter(
        variant__article__isnull=False,
        variant__segment__isnull=True,
        variant__article__published=True,
        active=True,
        variant__article__pub_date__lt=datetime.now(),
        variant__article__site=active_site,
    ).order_by('-variant__article__pub_date')

    return {'url_picker': {
        'pages': Page.on(active_site).order_by('title'),
        'article_versions': article_versions,
        'foreninger': Forening.get_all_sorted(),
    }}
Exemplo n.º 17
0
    def get(self, item_id=None):
        from auth.models import User
        from ext import db
        if 'page' in request.endpoint:
            from page.models import Page
            page = Page.get_by_id(item_id)
            if not 'content' in request.endpoint:
                self._form = model_form(Page,
                                        db.session,
                                        base_class=Form,
                                        exclude=['added_by', 'date_added'])
                self._context['obj'] = page
            else:
                from page.forms import EditContentForm
                self._form = EditContentForm
            self._form_obj = page
        elif 'block' in request.endpoint:
            from page.models import Block
            block = Block.get_by_id(item_id)
            if not 'content' in request.endpoint:
                self._form = model_form(Block,
                                        db.session,
                                        base_class=Form,
                                        exclude=['templates', 'pages'])
                self._context['obj'] = block
            else:
                from page.forms import EditContentForm
                self._form = EditContentForm
            self._form_obj = block
        else:
            from admin.forms import TemplateBodyFieldForm
            from wtforms import FormField
            from page.models import Template
            template = Template.get_by_id(item_id)
            form = model_form(Template,
                              db.session,
                              base_class=Form,
                              exclude=['pages', 'blocks', 'filename', 'body'])

            class TemplateForm(form):
                body = FormField(TemplateBodyFieldForm, separator='_')

            self._form = TemplateForm
            self._context['obj'] = template
            self._form_obj = template
        return self.render()
Exemplo n.º 18
0
def edit(request, site, version):
    active_site = Site.objects.get(id=site)
    root_page = Page.on(active_site).get(level=0)
    pages = Page.objects.filter(site=active_site)
    version = Version.objects.get(id=version)
    is_editing_root_page = root_page.id == version.variant.page.id
    context = {
        'active_site': active_site,
        'version': version,
        'widget_data': admin_context(active_site),
        'pages': pages,
        'root_page': root_page,
        'is_editing_root_page': is_editing_root_page,
        'image_search_length': settings.IMAGE_SEARCH_LENGTH,
    }
    context.update(url_picker_context(active_site))

    # Fake request.site to the edited site; this will make context processors behave accordingly
    request.site = active_site
    return render(request, 'common/admin/sites/pages/edit.html', context)
Exemplo n.º 19
0
def create(request):
  if not request.user.is_superuser:
    raise PermissionDenied
  if request.method == "POST":
    form = forms.Create(request.POST)
    if form.is_valid():
      page = Page()
      page.title = form.cleaned_data["title"].strip()
      page.content = form.cleaned_data["content"]
      page.in_sidebar = form.cleaned_data["in_sidebar"]
      page.sidebar_ordering = form.cleaned_data["sidebar_ordering"]
      page.save()
      return HttpResponseRedirect(page.url())
  else: # "GET"
    form = forms.Create()
  templatearguments = {
    "generic_form" : {
      "title" : "Create Page",
      "cancel_url" : "/",
      "form" : form,
    }
  }
  return render(request, 'common/submit.html', templatearguments)
Exemplo n.º 20
0
def handle_save(request, page_id=None, parent_override=None, stripsettings=None):
	page = None
	if page_id is not None:
		# Load the page
		page = Page.objects.get(pk=page_id)
	else:
		# Create a new page
		page = Page()
	
	parent = None
	# Put in the values..
	if parent_override is not None or request.POST["parent"] != "NULL":
		if parent_override is None:
			parent = Page.objects.get(pk=request.POST["parent"])
		else:
			parent = parent_override
	
	page.name = request.POST["name"]
	page.content = request.POST["content"]
	
	if stripsettings is not None:
		page.content = bleach.clean(request.POST["content"], stripsettings.ALLOWED_TAGS, stripsettings.ALLOWED_ATTRIBUTES, stripsettings.ALLOWED_STYLES)
	
	page.parent = parent
	
	# Save. Bamilybamaram.
	page.save()
	
	# Handle possible uploads
	if 'fileupload' in request.FILES:
		file = PageFile()
		file.page = page
		file.file = request.FILES['fileupload']
		file.save()
		
	return page
Exemplo n.º 21
0
def check_slug(request, site):
    active_site = Site.objects.get(id=site)
    urls_valid = slug_is_unique(request.POST['slug'])
    page_valid = not Page.on(active_site).filter(slug=request.POST['slug']).exists()
    return HttpResponse(json.dumps({'valid': urls_valid and page_valid}))
Exemplo n.º 22
0
	def process_item(self, item, spider):
		
		'''
		Function that processes each item
		after it has been scraped.
		Its purpose is to create content
		objects for each keyword on the page.		
		'''
		
		stop_words = []
		
		stop_words_obj_list = StopWord.objects.all()
		
		for stop_word_obj in stop_words_obj_list:
			stop_words.append(stop_word_obj.stopword.strip())
		
		stop_words.append("")
		
		temp_word_list = []
		
		
		text = item["text"].encode("ascii","ignore")
		text = text.lower().translate(None,"\r\"!\\/?,:|][*&£^`¬;()").translate(None,digits)
		
		temp_word_list = text.split(" ")
		
		word_list = [word.strip(" \'").rstrip("-.") for word in temp_word_list if word.rstrip("-.") not in stop_words and word.strip("\n \t") != ""]
		
		page_text = ' '.join(word_list)
		
		domains = Domain.objects.all()
		domain_obj = None
		for domain in domains:
			temp_domain = domain.domain.replace("http://","").replace("www.","").rstrip("/")
			if  temp_domain in item["link"]:
				domain_obj = domain
		
		try:
			page = Page.objects.get(domain = domain_obj, pageURL=item["link"])
		except Page.DoesNotExist:
			page = None
		
		if page:
			if page.text == page_text:
				return item
			else:
				page.text = page_text
				page.has_adscore = False
				page.save()
		else:	
			page = Page(domain=domain_obj, pageURL=item["link"], text=page_text)
			page.save()
		
		counter_list = Counter(word_list)
		
		for k,v in counter_list.items():
			if k.strip() == "" or k is None:
				continue
			
			try:
				keyword = Keyword.objects.get(keyword=k)
			except Keyword.DoesNotExist:
				keyword = None
			
			if keyword:
				temp_content = Content(page=page, keyword=keyword, occurrence=v)
				temp_content.save()
			
			else:
				temp_keyword = Keyword(keyword=k)
				temp_keyword.save()
				temp_content = Content(page=page, keyword=temp_keyword, occurrence=v)
				temp_content.save()
		
		return item
Exemplo n.º 23
0
def menu_limit_choices_to_page():
    return {
        'is_show': True,
        'sort__gt': 0,
        'pk__in': Page.queryset_not_cloned(flat_pk=True)}
Exemplo n.º 24
0
def search(request):
    # Very simple search for now
    if 'q' not in request.GET:
        return render(request, 'common/page/search.html')

    search_query = request.GET['q'].strip()

    if len(search_query) < SEARCH_CHAR_LIMIT:
        context = {
            'search_query': search_query,
            'query_too_short': True,
            'search_char_limit': SEARCH_CHAR_LIMIT,
        }
        return render(request, 'common/page/search.html', context)

    # Record the search
    search = Search(query=search_query, site=request.site)
    search.save()

    pages = Page.on(request.site).filter(
        # Match page title or content
        Q(variant__version__rows__columns__contents__content__icontains=search_query) |
        Q(title__icontains=search_query),

        # Default segment, active version, published page
        variant__segment=None,
        variant__version__active=True,
        published=True,
    ).distinct()

    article_versions = Version.objects.filter(
        # Match content
        variant__version__rows__columns__contents__content__icontains=search_query,

        # Active version, default segment, published article
        active=True,
        variant__segment=None,
        variant__article__published=True,
        variant__article__pub_date__lt=datetime.now(),
        variant__article__site=request.site,
    ).distinct().order_by('-variant__article__pub_date')

    aktivitet_filter = {'search': search_query}
    if request.site.forening.id != Forening.DNT_CENTRAL_ID:
        aktivitet_filter['organizers'] = '%s:%s' % ('forening', request.site.forening.id)
    _, aktivitet_dates = filter_aktivitet_dates(aktivitet_filter)
    aktivitet_date_count = aktivitet_dates.count()

    if request.site.id == Site.DNT_CENTRAL_ID:
        old_articles = OldArticle.objects.filter(
            Q(title__icontains=search_query) |
            Q(lede__icontains=search_query) |
            Q(content__icontains=search_query)
        ).distinct().order_by('-date')
    else:
        old_articles = []

    context = {
        'search_query': search_query,
        'article_versions': article_versions,
        'pages': pages,
        'old_articles': old_articles,
        'article_count': len(article_versions) + len(old_articles),
        'aktivitet_date_count': aktivitet_date_count,
    }
    return render(request, 'common/page/search.html', context)
Exemplo n.º 25
0
 def handle(self, *args, **options):
     print 'start'
     p = Page()
     p.title = 'Helol'
     p.save()
     print 'Done'
Exemplo n.º 26
0
 def get(self):
     from .models import Page
     from blog.models import Tag
     data = dict(
         date_added=request.args.get('date_added', None),
         date_end=request.args.get('date_end', None),
         name=request.args.get('name', None),
         description=request.args.get('description', None),
         slug=request.args.get('slug', None),
         short_url=request.args.get('short_url', None),
         title=request.args.get('title', None),
         add_to_nav=request.args.get('add_to_nav', None),
         add_sidebar=request.args.get('add_sidebar', None),
         visible=request.args.get('visible', None),
         meta_title=request.args.get('meta_title', None),
         content=request.args.get('content', None),
         template=request.args.get('template', None),
         category=request.args.get('category', None),
         tags=request.args.get('tags', None),
         use_base_template=request.args.get('use_base_template', None),
     )
     p = Page.query.filter(Page.name == data['name']).first()
     if p is not None:
         res = 0
     else:
         tags = [x.name for x in Tag.query.all()]
         for tag in data['tags']:
             if not tag in tags:
                 t = Tag()
                 t.name = tag
                 t.save()
         p = Page()
         p.name = data.get('name')
         p.date_added = data.get('date_added')
         p.date_end = data.get('date_end', None)
         p.description = data.get('description', None)
         p.slug = data.get('slug', None)
         p.short_url = data.get('short_url', None)
         p.title = data.get('title', None)
         nav = data.get('add_to_nav', 1)
         if str(nav).lower() == 'y':
             nav = 1
         else:
             nav = 0
         p.add_to_nav = nav
         sidebar = data.get('add_sidebar', 0)
         if str(sidebar).lower() == 'y':
             sidebar = 1
         else:
             sidebar = 0
         p.add_sidebar = sidebar
         p.visible = data.get('visible', None)
         p.meta_title = data.get('meta_title', None)
         p.content = data.get('content', None)
         p.template = data.get('template', None)
         p.category = data.get('category', None)
         p.tags = data.get('tags', None)
         p.use_base_template = data.get('use_base_template', None)
         p.save()
         res = 1
     return jsonify(result=res, content=data['content'])
Exemplo n.º 27
0
 def get_page(self):
     return Page(title=self.title, keywords=self.keywords, meta_description=self.meta_description)
Exemplo n.º 28
0
 def get(self):
     from .models import Page
     from blog.models import Tag
     data = dict(
         date_added=request.args.get('date_added',None),
         date_end=request.args.get('date_end',None),
         name=request.args.get('name',None),
         description=request.args.get('description',None),
         slug=request.args.get('slug',None),
         short_url=request.args.get('short_url',None),
         title=request.args.get('title',None),
         add_to_nav=request.args.get('add_to_nav',None),
         add_sidebar=request.args.get('add_sidebar',None),
         visible=request.args.get('visible',None),
         meta_title=request.args.get('meta_title',None),
         content=request.args.get('content',None),
         template=request.args.get('template',None),
         category=request.args.get('category',None),
         tags=request.args.get('tags',None),
         use_base_template=request.args.get('use_base_template',None),
     )
     p = Page.query.filter(Page.name==data['name']).first()
     if p is not None:
         res = 0
     else:
         tags = [x.name for x in Tag.query.all()]
         for tag in data['tags']:
             if not tag in tags:
                 t = Tag()
                 t.name = tag
                 t.save()
         p = Page()
         p.name = data.get('name')
         p.date_added = data.get('date_added')
         p.date_end = data.get('date_end',None)
         p.description = data.get('description',None)
         p.slug = data.get('slug',None)
         p.short_url = data.get('short_url',None)
         p.title = data.get('title',None)
         nav = data.get('add_to_nav',1)
         if str(nav).lower() == 'y':
             nav = 1
         else:
             nav = 0
         p.add_to_nav = nav
         sidebar = data.get('add_sidebar',0)
         if str(sidebar).lower() == 'y':
             sidebar = 1
         else:
             sidebar = 0
         p.add_sidebar = sidebar
         p.visible = data.get('visible',None)
         p.meta_title = data.get('meta_title',None)
         p.content = data.get('content',None)
         p.template = data.get('template',None)
         p.category = data.get('category',None)
         p.tags = data.get('tags',None)
         p.use_base_template = data.get('use_base_template',None)
         p.save()
         res = 1
     return jsonify(result=res,content=data['content'])
Exemplo n.º 29
0
      def handle(self, *args, **options):
            print('Hello command!!!')
            Page.objects.all().delete()
            page1 = Page()
            page1.title = 'Index page'
            page1.content = 'content content'
            page1.save()

            page2 = Page()
            page2.title = 'Index page 2'
            page2.content = 'content content 2'
            page2.save()
Exemplo n.º 30
0
 def has_front_page(self):
     return Page.on(self).filter(slug='').exists()
Exemplo n.º 31
0
 def handle(self, *args, **options):
     print 'start'
     p = Page()
     p.title = 'Helol'
     p.save()
     print 'Done' 
Exemplo n.º 32
0
 def test_create(case):
     page = Page.create(DiaryId('1'), Lang.Ja, '本日は晴天なり')
     case.assert_(isinstance(page, Page))
Exemplo n.º 33
0
 def get_page_count(self):
     return Page.on(self).filter(
         published=True,
     ).count()
Exemplo n.º 34
0
 def test_model_properties(self):
     page = Page(author=self.author, body=self.body, title=self.title)
     page.save()
     self.assertEqual(page.body, self.body)
     self.assertEqual(page.title, self.title)
     self.assertEqual(page.author, self.author)
Exemplo n.º 35
0
 def has_published_front_page(self):
     return Page.on(self).filter(
         slug='',
         published=True,
     ).exists()
Exemplo n.º 36
0
 def test_slug_generation(self):
     page = Page(author=self.author, body=self.body, title=self.title)
     page.save()
     slug = page.title.replace(' ', '-').lower()
     self.assertEqual(page.slug, slug)