Esempio n. 1
0
    try:
      self.category_id = Category.objects.get(slug="export-to-boehringer").pk
    except:
      self.category_id = None

  def get_filter_searchqueryset_q_obj(self, model_class):
    if not self.category_id:
      raise NoContentFlow

    if model_class == Project:
      return SQ(categories=self.category_id)
    elif model_class == Organization:
      return SQ(projects_categories=self.category_id)

    raise NoContentFlow

  def get_filter_queryset_q_obj(self, model_class):
    if not self.category_id:
      raise NoContentFlow

    if model_class == Project:
      return Q(categories=self.category_id)
    elif model_class == Organization:
      return Q(project__categories=self.category_id)
    elif model_class == Apply:
      return Q(project__categories=self.category_id)

    raise NoContentFlow

CFM.add_flow(BoehringerContentFlow())
Esempio n. 2
0
from ovp.apps.channels.content_flow import NoContentFlow
from ovp.apps.channels.content_flow import CFM

class RocheContentFlow(BaseContentFlow):
  source = "default"
  destination = "roche"

  def get_filter_searchqueryset_q_obj(self, model_class):
    if model_class == Project:
      return SQ()
    elif model_class == Organization:
      return SQ()
    elif model_class in [Cause, Skill]:
      return SQ()

    raise NoContentFlow

  def get_filter_queryset_q_obj(self, model_class):
    if model_class == Project:
      return Q()
    elif model_class == Organization:
      return Q()
    elif model_class == Apply:
      return Q()
    elif model_class in [Cause, Skill]:
      return Q()

    raise NoContentFlow

CFM.add_flow(RocheContentFlow())
Esempio n. 3
0
from ovp.apps.core.models import Skill
from ovp.apps.projects.models import Category
from ovp.apps.projects.models import Project
from ovp.apps.projects.models import Apply
from ovp.apps.organizations.models import Organization

from ovp.apps.channels.content_flow import BaseContentFlow
from ovp.apps.channels.content_flow import NoContentFlow
from ovp.apps.channels.content_flow import CFM


class BaseChannelContentFlow(BaseContentFlow):
    source = "default"
    destination = "base"

    def get_filter_searchqueryset_q_obj(self, model_class):
        if model_class in [Project, Organization]:
            return SQ()

        raise NoContentFlow

    def get_filter_queryset_q_obj(self, model_class):
        if model_class in [Cause, Skill, Project, Organization, Apply]:
            return Q()

        raise NoContentFlow


if getenv('ENABLE_BASE_CONTENT_FLOW'):
    CFM.add_flow(BaseChannelContentFlow())
Esempio n. 4
0
  destination = "icn"

  def __init__(self):
    try:
      self.category_id = Category.objects.get(slug="instituto-center-norte").pk
    except:
      self.category_id = None

  def get_filter_searchqueryset_q_obj(self, model_class):
    if model_class == Project:
      return SQ(organization_categories=self.category_id)

    elif model_class == Organization:
      return SQ(categories=self.category_id)

    raise NoContentFlow

  def get_filter_queryset_q_obj(self, model_class):
    if model_class in [Cause, Skill]:
      return Q()
    elif model_class == Project:
      return Q(organization__categories=self.category_id)
    elif model_class == Organization:
      return Q(categories=self.category_id)
    elif model_class == Apply:
      return Q(project__organization__categories=self.category_id)

    raise NoContentFlow

CFM.add_flow(ICNContentFlow())
Esempio n. 5
0
            return SQ(categories=self.category_id)

        elif model_class == Organization:
            return SQ(project__categories=self.category_id)

        raise NoContentFlow

    def get_filter_queryset_q_obj(self, model_class):
        if model_class == Project:
            return Q(categories=self.category_id)
        elif model_class == Organization:
            return Q(project__categories=self.category_id)
        elif model_class == Apply:
            return Q(project__categories=self.category_id)

        raise NoContentFlow


class DefaultToGDD(BaseGDDContentFlow):
    source = "default"
    destination = "gdd"


class GDDToDefault(BaseGDDContentFlow):
    source = "gdd"
    destination = "default"


CFM.add_flow(DefaultToGDD())
CFM.add_flow(GDDToDefault())
Esempio n. 6
0
    def __init__(self):
        try:
            self.category_id = Category.objects.get(slug="atados-to-shell").pk
        except:
            self.category_id = None

    def get_filter_searchqueryset_q_obj(self, model_class):
        if model_class == Project:
            return SQ(categories=self.category_id)

        elif model_class == Organization:
            return SQ(projects_categories=self.category_id)

        raise NoContentFlow

    def get_filter_queryset_q_obj(self, model_class):
        if model_class in [Cause, Skill]:
            return Q()
        elif model_class == Project:
            return Q(categories=self.category_id)
        elif model_class == Organization:
            return Q(project__categories=self.category_id)
        elif model_class == Apply:
            return Q(project__categories=self.category_id)

        raise NoContentFlow


CFM.add_flow(ShellContentFlow())
def by_channel_content_flow(queryset, channel_string=None):
    queryset = CFM.filter_searchqueryset(channel_string, queryset)

    return queryset
    def get_project_object(self, *args, **kwargs):
        slug = kwargs.get('project_slug')
        qs = CFM.filter_queryset(self.request.channel,
                                 models.Project.objects.all())

        return get_object_or_404(qs, slug=slug)
Esempio n. 9
0
 def patched_queryset(self):
     return CFM.filter_queryset(self.request.channel, queryset)
Esempio n. 10
0
 def patched_get_queryset(self, *args, **kwargs):
     return CFM.filter_queryset(self.request.channel,
                                get_queryset(self, *args, **kwargs))
Esempio n. 11
0
            return SQ(org_id__in=self.organizations_id)

        raise NoContentFlow

    def get_filter_queryset_q_obj(self, model_class):
        if model_class == Project:
            return Q(organization__in=self.organizations_id)
        elif model_class == Organization:
            return Q(pk__in=self.organizations_id)
        elif model_class == Apply:
            return Q(project__organization_id__in=self.organizations_id)

        raise NoContentFlow


CFM.add_flow(RRPContentFlow())


class DefaultToRRPContentFlow(BaseContentFlow):
    source = "default"
    destination = "rrp"

    def __init__(self):
        self.organizations_id = [45]

    def get_filter_searchqueryset_q_obj(self, model_class):
        if model_class == Project:
            return SQ(organization__in=self.organizations_id)
        elif model_class == Organization:
            return SQ(org_id__in=self.organizations_id)