def welcome(request):
    # This form will be only accessible when the database has no users
    if 0 < User.objects.count():
      return HttpResponseRedirect(reverse('main.views.home'))
    # Form
    if request.method == 'POST':
        form = SuperUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            user = authenticate(username=user.username, password=form.cleaned_data['password1'])
            if user is not None:
              login(request, user)
              return HttpResponseRedirect(reverse('main.views.home'))
    else:
        form = SuperUserCreationForm()

    return render(request, 'installer/welcome.html', {
        'form': form,
      })
Esempio n. 2
0
def welcome(request):
    # This form will be only accessible when the database has no users
    if 0 < User.objects.count():
      return HttpResponseRedirect(reverse('main.views.home'))
    # Form
    if request.method == 'POST':
        
        # assign UUID to dashboard
        dashboard_uuid = uuid.uuid4().__str__()
        helpers.set_setting('dashboard_uuid', dashboard_uuid)
        
        # save organization PREMIS agent if supplied
        org_name       = request.POST.get('org_name', '')
        org_identifier = request.POST.get('org_identifier', '')

        if org_name != '' or org_identifier != '':
            agent = Agent.objects.get(pk=2)
            agent.name            = org_name
            agent.identifiertype  = 'repository code'
            agent.identifiervalue = org_identifier
            agent.save()

        # Save user and set cookie to indicate this is the first login
        form = SuperUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            api_key = ApiKey.objects.create(user=user)
            api_key.key = api_key.generate_key()
            api_key.save()
            user = authenticate(username=user.username, password=form.cleaned_data['password1'])
            if user is not None:
              login(request, user)
              request.session['first_login'] = True
              return HttpResponseRedirect(reverse('installer.views.fprconnect'))
    else:
        form = SuperUserCreationForm()

    return render(request, 'installer/welcome.html', {
        'form': form,
      })
Esempio n. 3
0
def welcome(request):
    # This form will be only accessible when the database has no users
    if 0 < User.objects.count():
        return redirect('main.views.home')
    # Form
    if request.method == 'POST':

        # assign UUID to dashboard
        dashboard_uuid = str(uuid.uuid4())
        helpers.set_setting('dashboard_uuid', dashboard_uuid)

        # Update Archivematica version in DB
        archivematica_agent = Agent.objects.get(pk=1)
        archivematica_agent.identifiervalue = "Archivematica-" + version.get_version(
        )
        archivematica_agent.save()

        # create blank ATK DIP upload config
        config = ArchivistsToolkitConfig()
        config.save()

        # save organization PREMIS agent if supplied
        org_name = request.POST.get('org_name', '')
        org_identifier = request.POST.get('org_identifier', '')

        if org_name != '' or org_identifier != '':
            agent = Agent.objects.get(pk=2)
            agent.name = org_name
            agent.identifiertype = 'repository code'
            agent.identifiervalue = org_identifier
            agent.save()

        # Save user and set cookie to indicate this is the first login
        form = SuperUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            api_key = ApiKey.objects.create(user=user)
            api_key.key = api_key.generate_key()
            api_key.save()
            user = authenticate(username=user.username,
                                password=form.cleaned_data['password1'])
            if user is not None:
                login(request, user)
                request.session['first_login'] = True
                return redirect('installer.views.fprconnect')
    else:
        form = SuperUserCreationForm()

    return render(request, 'installer/welcome.html', {
        'form': form,
    })
Esempio n. 4
0
def welcome(request):
    # This form will be only accessible when there is no uuid
    dashboard_uuid = helpers.get_setting('dashboard_uuid')
    if dashboard_uuid:
        return redirect('main.views.home')

    # Do we need to set up a user?
    set_up_user = not User.objects.exists()

    if request.method == 'POST':
        # save organization PREMIS agent if supplied
        setup_pipeline(
            org_name=request.POST.get('org_name', ''),
            org_identifier=request.POST.get('org_identifier', ''),
            site_url=request.POST.get('site_url'),
        )

        if set_up_user:
            form = SuperUserCreationForm(request.POST)
            if form.is_valid():
                user = form.save()
                api_key = ApiKey.objects.create(user=user)
                api_key.key = api_key.generate_key()
                api_key.save()
                user = authenticate(username=user.username,
                                    password=form.cleaned_data['password1'])
                if user is not None:
                    login(request, user)
                    request.session['first_login'] = True
                    return redirect('installer.views.storagesetup')
        else:
            request.session['first_login'] = True
            return redirect('installer.views.storagesetup')
    else:
        form = SuperUserCreationForm() if set_up_user else OrganizationForm()

    return render(request, 'installer/welcome.html', {
        'form': form,
    })
Esempio n. 5
0
def welcome(request):
    # This form will be only accessible when there is no uuid
    dashboard_uuid = helpers.get_setting("dashboard_uuid")
    if dashboard_uuid:
        return redirect("main:main_index")

    # Do we need to set up a user?
    set_up_user = not User.objects.exists()

    if request.method == "POST":
        # save organization PREMIS agent if supplied
        setup_pipeline(
            org_name=request.POST.get("org_name", ""),
            org_identifier=request.POST.get("org_identifier", ""),
            site_url=request.POST.get("site_url"),
        )

        if set_up_user:
            form = SuperUserCreationForm(request.POST)
            if form.is_valid():
                user = form.save()
                api_key = ApiKey.objects.create(user=user)
                api_key.key = api_key.generate_key()
                api_key.save()
                user = authenticate(
                    username=user.username, password=form.cleaned_data["password1"]
                )
                if user is not None:
                    login(request, user)
                    request.session["first_login"] = True
                    return redirect("installer:storagesetup")
        else:
            request.session["first_login"] = True
            return redirect("installer:storagesetup")
    else:
        form = SuperUserCreationForm() if set_up_user else OrganizationForm()

    return render(request, "installer/welcome.html", {"form": form})