Severity: 8192
Message: Function create_function() is deprecated
Filename: geshi/geshi.php
Line Number: 4698
Backtrace:
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/libraries/geshi/geshi.php
Line: 4698
Function: _error_handler
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/libraries/geshi/geshi.php
Line: 4621
Function: _optimize_regexp_list_tokens_to_string
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/libraries/geshi/geshi.php
Line: 1655
Function: optimize_regexp_list
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/libraries/geshi/geshi.php
Line: 2029
Function: optimize_keyword_group
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/libraries/geshi/geshi.php
Line: 2168
Function: build_parse_cache
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/libraries/Process.php
Line: 45
Function: parse_code
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/models/Pastes.php
Line: 517
Function: syntax
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/controllers/Main.php
Line: 693
Function: getPaste
File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/index.php
Line: 315
Function: require_once
@login_required() def list(request): services = Service.objects.annotate(incident_num=Count('incident')) return TemplateResponse(request, 'services/list.html', {'services': services}) @login_required() def delete(request, id): try: service = Service.objects.get(id = id) check_user_ownership(request, service) service.delete() return HttpResponseRedirect('/services/') except Service.DoesNotExist: raise Http404 @login_required() def edit(request, id): try: service = Service.objects.get(id = id) try: api_keys = ServiceTokens.objects.filter(service_id = service) except ServiceTokens.DoesNotExist: api_keys = [] try: ss_obj = ServiceSilenced.objects.get(service=service) service_silenced = str(ss_obj.silenced_until - timezone.now()).split(".")[0] except ServiceSilenced.DoesNotExist: service_silenced = False # get the list of users users = User.objects.all() policy = service.policy if service.policy else None all_polcies = SchedulePolicy.objects.all() return TemplateResponse(request, 'services/edit.html', { 'item': service, 'policy': policy, 'policies': all_polcies, 'api_keys': api_keys, 'service_silenced': service_silenced, 'url': request.get_full_path(), 'users': users }) except Service.DoesNotExist: raise Http404 @login_required() def new(request): all_policies = SchedulePolicy.objects.all() # get the list of users users = [request.user] return TemplateResponse(request, 'services/edit.html', {'policies': all_policies, 'users': users}) @login_required() @require_http_methods(["POST"]) def save(request): # Update service fields creation_time = False try: service_id = request.POST.get("id") if service_id != '0': service = Service.objects.get(id=service_id) check_user_ownership(request, service) else: creation_time = True service = Service() except Service.DoesNotExist: creation_time = True service = Service() if 'owner' in request.POST: service.owner = User.objects.get(id=request.POST['owner']) else: service.owner = request.user service.name = request.POST['name'] if len(service.name) < 6: messages.error(request, "The Service Name should be at least 6 characters!") if request.META.get('HTTP_REFERER').endswith("new"): # if the user was making a new service return HttpResponseRedirect(reverse('openduty.services.new')) else: # if the user editing existing page return HttpResponseRedirect(reverse('openduty.services.edit', None, [str(request.POST['id'])])) service.escalate_after = request.POST['escalate_after'] service.retry = request.POST['retry'] service.notifications_disabled = request.POST.get("disable_notification", "off") == "on" if(request.POST['policy']): pol = SchedulePolicy.objects.get(id = request.POST['policy']) else: pol = None service.policy = pol # Save service try: service.save() if creation_time: # Auto creating an email endpoint valid_email_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&'*+-/=?^_`{|}~." email = "".join(c for c in request.POST['name'] if c in valid_email_chars) + "@" + settings.HOSTNAME email_token_create(email, service.id) except IntegrityError: messages.error(request, 'Service validation failed') if len (request.POST['id']) > 0: return HttpResponseRedirect(reverse('openduty.services.edit', None, [str(request.POST['id'])])) else: return HttpResponseRedirect(reverse('openduty.services.new')) return HttpResponseRedirect('/services/') @login_required() def token_delete(request, token_id): try: token = ServiceTokens.objects.get(id = token_id) token.delete() return HttpResponseRedirect(reverse('openduty.services.edit', None, [str(token.service_id.id)])); except Service.DoesNotExist: raise Http404 def email_token_create(email_address, service_id): service = Service.objects.get(id=service_id) token = Token() token.save_email(email_address=email_address) service_token = ServiceTokens.objects.create(service_id=service, token_id=token, name="Email Integration") service_token.save() @login_required() @require_http_methods(["POST"]) def token_create(request, service_id): try: service = Service.objects.get(id = service_id) check_user_ownership(request, service) token = Token() token.save() service_token = ServiceTokens.objects.create(service_id = service, token_id = token, name=request.POST['key_name']) service_token.save() return HttpResponseRedirect(reverse('openduty.services.edit', None, [str(service_id)])); except Service.DoesNotExist: raise Http404 @login_required() @require_http_methods(["POST"]) def silence(request, service_id): try: service = Service.objects.get(id = service_id) silence_for = request.POST.get('silence_for') url = request.POST.get("url") incident_id = request.POST.get('incident_id') if incident_id: incident = Incident.objects.get(id=incident_id) else: incident = None if ServiceSilenced.objects.filter(service=service).count() < 1: silenced_service = ServiceSilenced() silenced_service.service = service silenced_service.silenced_until = timezone.now() + timezone.timedelta(hours=int(silence_for)) silenced_service.silenced = True silenced_service.save() event_log_message = "%s silenced the service %s for %s hours" % (request.user.username, service.name, silence_for) event_log = EventLog() event_log.incident_key = incident event_log.action = 'silence_service' event_log.user = request.user event_log.service_key = service event_log.data = event_log_message event_log.occurred_at = timezone.now() event_log.save() unsilence_service.apply_async((service_id,), eta=silenced_service.silenced_until) return HttpResponseRedirect(url) except Service.DoesNotExist: raise Http404 @login_required() @require_http_methods(["POST"]) def unsilence(request, service_id): try: service = Service.objects.get(id = service_id) url = request.POST.get("url") try: ServiceSilenced.objects.filter(service=service).delete() event_log_message = "%s removed silence from service %s" % (request.user.username, service.name) event_log = EventLog() event_log.action = 'unsilence_service' event_log.user = request.user event_log.incident_key = None event_log.service_key = service event_log.data = event_log_message event_log.occurred_at = timezone.now() event_log.save() except ServiceSilenced.DoesNotExist: # No need to delete pass return HttpResponseRedirect(url) except Service.DoesNotExist: