def create_article(cls, parent, slug, is_dir, site=None, title="Root", article_kwargs={}, request=None, article_w_permissions=None, **revision_kwargs): """ Utility function: Creates a new urlpath with an article and a new revision for the article :returns: A new URLPath instance """ if not site: site = Site.objects.get_current() article = Article(**article_kwargs) article.add_revision(ArticleRevision(title=title, **revision_kwargs), save=True) article.is_dir = is_dir article.save() newpath = cls.objects.create(site=site, parent=parent, slug=slug, article=article) article.add_object_relation(newpath) return newpath