Exemplo n.º 1
0
def create_tool(slug, title, abbrev, description):
  try:
    tool = Tool.objects.get(tool_slug=slug)
    print "  Updating Tool: " + slug 
    tool.title        = title
    tool.abbrev       = abbrev
    tool.description  = description
    updated_editor     = editor
  except ObjectDoesNotExist:
    print "  Creating Tool: " + slug 
    tool = Tool(tool_slug=slug, title=title, abbrev=abbrev, description=description, updated_editor=editor)
  tool.save()
  return tool
Exemplo n.º 2
0
    def form_valid(self, form):
        f = form.save(commit=False)
        f.owner = self.request.user
        f.slug = slugify_unique(f.name)
        while Integration.objects.filter(slug=f.slug).exists():
            f.slug = slugify_unique(f.name)        

        if form.cleaned_data['bundle_code']:
            bundle_code = form.cleaned_data['bundle_code']
            url = 'https://tpi.bb.pearsoncmg.com/highlander/api/v1/bundles/{}?direct=true'.format(bundle_code)
            req = requests.get(url)
            data = json.loads(req.text)
            bundle_links = data['basicLtiLinkBundle']['links']
            bundle = []

            for link in bundle_links:
                title = link['title']
                custom_params = []
                for param in link['customParameters']:
                    param_name = param['name']
                    param_value = param['value']
                    custom_params.append(
                        '{}={}'.format(param_name, param_value))
                bundle.append({
                    'title': title,
                    'custom_params': custom_params})

            bundle_tool = Tool()
            bundle_tool.owner = self.request.user
            bundle_tool.vendor = Vendor.objects.get(name='Pearson')
            bundle_tool.is_bundle = True
            bundle_tool.bundle_data = json.dumps(bundle, indent=4)
            bundle_tool.launch_url = bundle_links[0]['launchUrl']
            bundle_tool.name = '[bundle] ' + form.cleaned_data['bundle_name']
            bundle_tool.key = form.cleaned_data['bundle_key']
            bundle_tool.secret = form.cleaned_data['bundle_secret']
            bundle_tool.protocol = 'LTI 1'
            bundle_tool.tool_type = 'Provider'
            bundle_tool.save()
            f.tool_provider = bundle_tool

        f.save()
        return super(IntegrationCreate,self).form_valid(form)
Exemplo n.º 3
0
 def save(self, force_insert=False, force_update=False, commit=True):
     zeros = len(self.cleaned_data['start_index']) - 1
     if not self.cleaned_data['price']:
         price = self.cleaned_data['model'].price
         service_interval = self.cleaned_data['model'].service_interval
     else:
         price = self.cleaned_data['price']
         service_interval = self.cleaned_data['service_interval']
     for n in range(int(self.cleaned_data['start_index']),
                    self.cleaned_data['end_index']+1):
         name = (self.cleaned_data['prefix'] + 
                 self.get_zeros(n, zeros) + str(n))
         tool = Tool(name = name, 
                     price = price, 
                     service_interval = service_interval,
                     model = self.cleaned_data['model'],
                     invoice_number = self.cleaned_data['invoice_number'],
                     secondary_name = self.cleaned_data['secondary_name'],
                     buy_date = self.cleaned_data['buy_date'],
                     container = self.cleaned_data['container'])
         tool.save()
         event = Event(event_type = "Oprettelse", tool = tool)
         event.save()