def get_absolute_url(self, link='delete'): if link == 'delete': return ('customslide_delete', [str(self.id)]) def __unicode__(self): return self.title class Meta: permissions = ( ('can_manage_projector', ugettext_noop("Can manage the projector")), ('can_see_projector', ugettext_noop("Can see the projector")), ('can_see_dashboard', ugettext_noop("Can see the dashboard")), ) register_slidemodel(ProjectorSlide, control_template='projector/control_customslide.html') class ProjectorOverlay(models.Model): """ Save information for a overlay. """ active = models.BooleanField(verbose_name=_('Active')) def_name = models.CharField(max_length=64) sid = models.CharField(max_length=64, null=True, blank=True) def __unicode__(self): if self.sid: return "%s on %s" % (self.def_name, self.sid) return self.def_name
return reverse("assignment_delete", args=[str(self.id)]) def __unicode__(self): return self.name class Meta: permissions = ( ("can_see_assignment", ugettext_noop("Can see assignment")), ("can_nominate_other", ugettext_noop("Can nominate another person")), ("can_nominate_self", ugettext_noop("Can nominate themselves")), ("can_manage_assignment", ugettext_noop("Can manage assignment")), ) ordering = ("name",) register_slidemodel(Assignment) class AssignmentVote(BaseVote): option = models.ForeignKey("AssignmentOption") class AssignmentOption(BaseOption): poll = models.ForeignKey("AssignmentPoll") candidate = PersonField() vote_class = AssignmentVote def __unicode__(self): return unicode(self.candidate)
if link == 'delete': return ('customslide_delete', [str(self.id)]) def __unicode__(self): return self.title class Meta: permissions = ( ('can_manage_projector', ugettext_noop("Can manage the projector")), ('can_see_projector', ugettext_noop("Can see the projector")), ('can_see_dashboard', ugettext_noop("Can see the dashboard")), ) register_slidemodel(ProjectorSlide, control_template='projector/control_customslide.html') class ProjectorOverlay(models.Model): """ Save information for a overlay. """ active = models.BooleanField(verbose_name=_('Active')) def_name = models.CharField(max_length=64) sid = models.CharField(max_length=64, null=True, blank=True) def __unicode__(self): if self.sid: return "%s on %s" % (self.def_name, self.sid) return self.def_name
def __unicode__(self): return self.name class Meta: permissions = ( ('can_see_assignment', ugettext_noop("Can see assignment")), ('can_nominate_other', ugettext_noop("Can nominate another person")), ('can_nominate_self', ugettext_noop("Can nominate themselves")), ('can_manage_assignment', ugettext_noop("Can manage assignment")), ) ordering = ('name', ) register_slidemodel(Assignment) class AssignmentVote(BaseVote): option = models.ForeignKey('AssignmentOption') class AssignmentOption(BaseOption): poll = models.ForeignKey('AssignmentPoll') candidate = PersonField() vote_class = AssignmentVote def __unicode__(self): return unicode(self.candidate)
('can_see_participant', ugettext_noop("Can see participant")), ('can_manage_participant', ugettext_noop("Can manage participant")), ) ordering = ('last_name',) def slide(self): """ Returns a map with the data for the slides. """ return { 'shown_user': self, 'title': self.clean_name, 'template': 'projector/UserSlide.html'} register_slidemodel(User) class Group(DjangoGroup, PersonMixin, Person, SlideMixin): prefix = 'group' # This is for the slides person_prefix = 'group' django_group = models.OneToOneField(DjangoGroup, editable=False, parent_link=True) group_as_person = models.BooleanField(default=False, verbose_name=_("Use this group as participant"), help_text=_('For example as submitter of a motion.')) description = models.TextField(blank=True, verbose_name=_("Description")) @models.permalink def get_absolute_url(self, link='view'): """ Return the URL to this user. link can be:
motion = models.ForeignKey(Motion) def __unicode__(self): return "%s %s" % (self.id, self.title) @property def aid(self): try: return self._aid except AttributeError: self._aid = AVersion.objects \ .filter(motion=self.motion) \ .filter(id__lte=self.id).count() return self._aid register_slidemodel(Motion) class MotionVote(BaseVote): option = models.ForeignKey('MotionOption') class MotionOption(BaseOption): poll = models.ForeignKey('MotionPoll') vote_class = MotionVote class MotionPoll(BasePoll, CountInvalid, CountVotesCast): option_class = MotionOption vote_values = [ ugettext_noop('Yes'), ugettext_noop('No'), ugettext_noop('Abstain')]
* view * edit * delete """ if link == 'view': if self.related_sid: return self.get_related_slide().get_absolute_url(link) return reverse('item_view', args=[str(self.id)]) if link == 'edit': if self.related_sid: return self.get_related_slide().get_absolute_url(link) return reverse('item_edit', args=[str(self.id)]) if link == 'delete': return reverse('item_delete', args=[str(self.id)]) def __unicode__(self): return self.get_title() class Meta: permissions = ( ('can_see_agenda', ugettext_noop("Can see agenda")), ('can_manage_agenda', ugettext_noop("Can manage agenda")), ) class MPTTMeta: order_insertion_by = ['weight'] register_slidemodel(Item, control_template='agenda/control_item.html') register_slidefunc('agenda', agenda_show, weight=-1, name=_('Agenda'))
('can_see_participant', ugettext_noop("Can see participant")), ('can_manage_participant', ugettext_noop("Can manage participant")), ) ordering = ('last_name',) def slide(self): """ Returns a map with the data for the slides. """ return { 'shown_user': self, 'title': self.clean_name, 'template': 'projector/UserSlide.html'} register_slidemodel(User) class Group(DjangoGroup, PersonMixin, Person, SlideMixin): prefix = 'group' # This is for the slides person_prefix = 'group' django_group = models.OneToOneField(DjangoGroup, editable=False, parent_link=True) group_as_person = models.BooleanField(default=False, verbose_name=_("Use this group as participant"), help_text=_('For example as submitter of a motion.')) description = models.TextField(blank=True, verbose_name=_("Description")) @models.permalink def get_absolute_url(self, link='view'): """ Return the URL to this user.
from django.db import models from openslides.projector.projector import SlideMixin from openslides.projector.api import register_slidemodel class ReleatedItem(SlideMixin, models.Model): prefix = 'releateditem' name = models.CharField(max_length='255') def get_agenda_title(self): return self.name def get_agenda_title_supplement(self): return 'test item' register_slidemodel(ReleatedItem)
def __unicode__(self): return "%s %s" % (self.id, self.title) @property def aid(self): try: return self._aid except AttributeError: self._aid = AVersion.objects \ .filter(motion=self.motion) \ .filter(id__lte=self.id).count() return self._aid register_slidemodel(Motion) class MotionVote(BaseVote): option = models.ForeignKey('MotionOption') class MotionOption(BaseOption): poll = models.ForeignKey('MotionPoll') vote_class = MotionVote class MotionPoll(BasePoll, CountInvalid, CountVotesCast): option_class = MotionOption vote_values = [ ugettext_noop('Yes'),
from django.db import models from openslides.projector.projector import SlideMixin from openslides.projector.api import register_slidemodel class ReleatedItem(SlideMixin, models.Model): prefix = 'releateditem' name = models.CharField(max_length='255') def get_agenda_title(self): return self.name def get_agenda_title_supplement(self): return 'test item' def get_absolute_url(self, *args, **kwargs): return '/absolute-url-here/' register_slidemodel(ReleatedItem)