user change del add
This commit is contained in:
parent
315367f203
commit
ca2b6780de
|
|
@ -9,17 +9,17 @@
|
||||||
</div>
|
</div>
|
||||||
<small>Legen Sie hier die Stammdaten des neuen Mitarbeiters fest.</small>
|
<small>Legen Sie hier die Stammdaten des neuen Mitarbeiters fest.</small>
|
||||||
|
|
||||||
<form method="POST">
|
<form method="POST" id="new_user_form">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
{{ newuserform|crispy }}
|
{{ newuserform|crispy }}
|
||||||
|
|
||||||
<div class="form-check">
|
<!--<div class="form-check">
|
||||||
<input class="form-check-input" type="checkbox" value="true" id="sendmailnewuser" name="sendmailnewuser">
|
<input class="form-check-input" type="checkbox" value="true" id="sendmailnewuser" name="sendmailnewuser">
|
||||||
<label class="form-check-label" for="sendmailnewuser" name="sendmailnewuser">
|
<label class="form-check-label" for="sendmailnewuser" name="sendmailnewuser">
|
||||||
E-Mailbenachrichtigung schicken
|
E-Mailbenachrichtigung schicken
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>-->
|
||||||
<small>*: Der Benutzer erhält direkt eine E-Mail mit einem Link zur Passworterstellung, wenn der Haken bei <i>E-Mailbenachrichtung schicken</i> gesetzt ist. Dies kann später auch wiederholt werden.</small>
|
<small>*: Der Benutzer erhält direkt eine Willkommens-E-Mail mit einem Link zur Passworterstellung.</small>
|
||||||
|
|
||||||
{% if request.user.profile.agency.paymentplan != "0" %}
|
{% if request.user.profile.agency.paymentplan != "0" %}
|
||||||
<hr>
|
<hr>
|
||||||
|
|
@ -28,8 +28,14 @@
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
<a class="btn" href="{% url 'dasettings' %} ">Abbrechen</a>
|
<a class="btn" href="{% url 'dasettings' %} ">Abbrechen</a>
|
||||||
<button type="submit" class="btn btn-primary" style="float: right">Weiter zu Schritt 2</button>
|
<button id="createbtn" type="submit" class="btn btn-primary" style="float: right">Weiter zu Schritt 2</button>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<script>
|
||||||
|
/* Disable the button for submitting after click */
|
||||||
|
$("#new_user_form").submit(function(event){
|
||||||
|
$("#createbtn").prop("disabled", true);
|
||||||
|
})
|
||||||
|
</script>
|
||||||
{% endblock content %}
|
{% endblock content %}
|
||||||
|
|
@ -61,8 +61,8 @@
|
||||||
<span id="user_email">{{ mail }}</span> <button onclick="javascript:ChangeMail()" style="float: right" type="button" class="btn btn-secondary btn-sm" id="changemailbutton"><i class="fas fa-pen"></i></button>
|
<span id="user_email">{{ mail }}</span> <button onclick="javascript:ChangeMail()" style="float: right" type="button" class="btn btn-secondary btn-sm" id="changemailbutton"><i class="fas fa-pen"></i></button>
|
||||||
</p>
|
</p>
|
||||||
<div style="float: left">
|
<div style="float: left">
|
||||||
<button type="button" id="" onclick="javascript:sendPassMail({{vieweduser}})" class="btn btn-primary btn-sm active" >Passwort wiederherstellen</button>
|
<!--<button type="button" id="" onclick="javascript:sendPassMail({{vieweduser}})" class="btn btn-primary btn-sm active" >Passwort wiederherstellen</button>
|
||||||
<br /><br /><span class="alert alert-success" id="mailsend" role="alert" style="display: none;"> E-Mail gesendet!</span>
|
<br /><br /><span class="alert alert-success" id="mailsend" role="alert" style="display: none;"> E-Mail gesendet!</span>-->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -914,8 +914,20 @@ def SettingsAjaxRouter(request):
|
||||||
success = False
|
success = False
|
||||||
else:
|
else:
|
||||||
tempuser.email = newmail
|
tempuser.email = newmail
|
||||||
tempuser.username = newmail
|
#tempuser.username = newmail
|
||||||
tempuser.save()
|
tempuser.save()
|
||||||
|
headers = {
|
||||||
|
'Accept' : 'application/json',
|
||||||
|
'Access-Control-Allow-Headers' : 'OCS-APIRequest',
|
||||||
|
'OCS-APIRequest' : 'true'
|
||||||
|
}
|
||||||
|
data_nc = {
|
||||||
|
"key" : "email",
|
||||||
|
"value" : newmail
|
||||||
|
}
|
||||||
|
print(data_nc)
|
||||||
|
r = requests.put(settings.NEXTCLOUD_URL + "/ocs/v1.php/cloud/users/" + tempuser.username,headers=headers, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API), data=data_nc)
|
||||||
|
print(r.text)
|
||||||
success = True
|
success = True
|
||||||
else:
|
else:
|
||||||
data = {"mail" : tempmail}
|
data = {"mail" : tempmail}
|
||||||
|
|
@ -933,6 +945,18 @@ def SettingsAjaxRouter(request):
|
||||||
tempuser.save()
|
tempuser.save()
|
||||||
data = {"userfullname" : tempuser.first_name + " " + tempuser.last_name}
|
data = {"userfullname" : tempuser.first_name + " " + tempuser.last_name}
|
||||||
success = True
|
success = True
|
||||||
|
|
||||||
|
# first_name and last_name CHANGE - Update in NC as DisplayName
|
||||||
|
headers = {
|
||||||
|
'Accept' : 'application/json',
|
||||||
|
'Access-Control-Allow-Headers' : 'OCS-APIRequest',
|
||||||
|
'OCS-APIRequest' : 'true'
|
||||||
|
}
|
||||||
|
data_nc = {
|
||||||
|
"key" : "displayname",
|
||||||
|
"value" : tempuser.first_name + " " + tempuser.last_name
|
||||||
|
}
|
||||||
|
r = requests.put(settings.NEXTCLOUD_URL + "/ocs/v1.php/cloud/users/" + tempuser.username,headers=headers, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API), data=data_nc)
|
||||||
else:
|
else:
|
||||||
data = {"userfullname" : tempuser.first_name + " " + tempuser.last_name}
|
data = {"userfullname" : tempuser.first_name + " " + tempuser.last_name}
|
||||||
success = False
|
success = False
|
||||||
|
|
@ -1605,7 +1629,7 @@ def UserChangeMain(request, pk):
|
||||||
}
|
}
|
||||||
return render(request, 'dasettings/user_changemaindata.html', context)
|
return render(request, 'dasettings/user_changemaindata.html', context)
|
||||||
|
|
||||||
# Method for first User-Creation-Step
|
# Method for first User-Creation-Step - NEW USER
|
||||||
@login_required
|
@login_required
|
||||||
def NewUserFirstStep(request):
|
def NewUserFirstStep(request):
|
||||||
context = {
|
context = {
|
||||||
|
|
@ -1614,22 +1638,44 @@ def NewUserFirstStep(request):
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
newuserform = UserNewUserForm(request.POST)
|
newuserform = UserNewUserForm(request.POST)
|
||||||
if newuserform.is_valid():
|
if newuserform.is_valid():
|
||||||
if(request.POST.get("sendmailnewuser")):
|
#if(request.POST.get("sendmailnewuser")):
|
||||||
msg_html = render_to_string('users/newusers_email.html', {'username': newuserform.cleaned_data.get('first_name') + " " + newuserform.cleaned_data.get('last_name')})
|
# msg_html = render_to_string('users/newusers_email.html', {'username': newuserform.cleaned_data.get('first_name') + " " + newuserform.cleaned_data.get('last_name')})
|
||||||
send_mail(request.user.profile.agency.name + ' Account', 'Hallo ' + newuserform.cleaned_data.get('first_name') + ' ' + newuserform.cleaned_data.get('last_name') + '! Bitte setzen sie sich auf https://app.digitale-agentur.com/password-reset/ ein Passwort.','noreply@digitale-agentur.com',[newuserform.cleaned_data.get('email')],html_message=msg_html,fail_silently=True)
|
# send_mail(request.user.profile.agency.name + ' Account', 'Hallo ' + newuserform.cleaned_data.get('first_name') + ' ' + newuserform.cleaned_data.get('last_name') + '! Bitte setzen sie sich auf https://app.digitale-agentur.com/password-reset/ ein Passwort.','noreply@digitale-agentur.com',[newuserform.cleaned_data.get('email')],html_message=msg_html,fail_silently=True)
|
||||||
newuser = newuserform.save(commit=False)
|
newuser = newuserform.save(commit=False)
|
||||||
newuser.username = newuser.email
|
newuser.username = newuser.email
|
||||||
newprofile = Profile(agency=request.user.profile.agency, parent=None)
|
newprofile = Profile(agency=request.user.profile.agency, parent=None)
|
||||||
newprofile.save()
|
newprofile.save()
|
||||||
newuser.profile = newprofile
|
newuser.profile = newprofile
|
||||||
newuser.save()
|
newuser.save()
|
||||||
|
|
||||||
|
# NEW USER IN DJANGO - ADD USER TO NC
|
||||||
|
# Data for the new User
|
||||||
|
try:
|
||||||
|
data_nc = {
|
||||||
|
"userid": newuser.username,
|
||||||
|
"password": "",
|
||||||
|
"displayName": newuser.first_name + " " + newuser.last_name,
|
||||||
|
"email": newuser.email,
|
||||||
|
"groups[]": "agencymaingroupid_" + str(request.user.profile.agency.pk)
|
||||||
|
}
|
||||||
|
|
||||||
|
headers = {
|
||||||
|
'Accept' : 'application/json',
|
||||||
|
'Access-Control-Allow-Headers' : 'OCS-APIRequest',
|
||||||
|
'OCS-APIRequest' : 'true'
|
||||||
|
}
|
||||||
|
|
||||||
|
# Request for adding the new User
|
||||||
|
r = requests.post(settings.NEXTCLOUD_URL + "ocs/v1.php/cloud/users", data=data_nc, headers=headers, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
# USERTIME
|
# USERTIME
|
||||||
user_time = UserTime(user=newuser)
|
user_time = UserTime(user=newuser)
|
||||||
user_time.save()
|
user_time.save()
|
||||||
# USER NOTIFICATIONS
|
# USER NOTIFICATIONS
|
||||||
user_notifications = UserNotifications(user=newuser)
|
#user_notifications = UserNotifications.objects.create(user=newuser)
|
||||||
user_notifications.save()
|
#user_notifications.save()
|
||||||
|
|
||||||
newuser.usernotifications = user_notifications
|
newuser.usernotifications = user_notifications
|
||||||
newuser.usertime = user_time
|
newuser.usertime = user_time
|
||||||
|
|
|
||||||
|
|
@ -1104,10 +1104,19 @@ class ProfileDeleteView(LoginRequiredMixin, DeleteView):
|
||||||
a.published_by = logged_user
|
a.published_by = logged_user
|
||||||
a.save()
|
a.save()
|
||||||
'''
|
'''
|
||||||
|
# NC DELETE USER IN NC TOO!
|
||||||
|
headers = {
|
||||||
|
'Accept' : 'application/json',
|
||||||
|
'Access-Control-Allow-Headers' : 'OCS-APIRequest',
|
||||||
|
'OCS-APIRequest' : 'true'
|
||||||
|
}
|
||||||
|
|
||||||
|
r = requests.request("DELETE", settings.NEXTCLOUD_URL + "/ocs/v1.php/cloud/users/" + user.username,headers=headers, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
||||||
|
|
||||||
response = super(ProfileDeleteView, self).delete(request, *args, **kwargs)
|
response = super(ProfileDeleteView, self).delete(request, *args, **kwargs)
|
||||||
name = user.first_name + " " + user.last_name
|
name = user.first_name + " " + user.last_name
|
||||||
messages.success(request, f'Benutzer ' +name+ ' wurde gelöscht!')
|
messages.success(request, f'Benutzer ' +name+ ' wurde gelöscht!')
|
||||||
|
|
||||||
return response
|
return response
|
||||||
|
|
||||||
# Saves a new User in parent of others Users.
|
# Saves a new User in parent of others Users.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue