A PHP Error was encountered

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: 551
Function: getPaste

File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/index.php
Line: 315
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Cannot modify header information - headers already sent by (output started at /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/system/core/Exceptions.php:271)

Filename: view/raw.php

Line Number: 2

Backtrace:

File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/themes/geocities/views/view/raw.php
Line: 2
Function: header

File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/core/MY_Loader.php
Line: 173
Function: include

File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/core/MY_Loader.php
Line: 43
Function: _ci_load

File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/application/controllers/Main.php
Line: 558
Function: view

File: /home/httpd/vhosts/scratchbook.ch/geopaste.scratchbook.ch/index.php
Line: 315
Function: require_once

private Mono provisionClass(List namesRoleMembers, ProvisioningPojo provisioningPojo) { return this.checkIfClassExists(provisioningPojo).flatMap(isClassPresent -> { if (isClassPresent) { // These will go into a private method if (isTeacher(provisioningPojo, provisioningPojo.getToolUserId())) { List existingTeacher = provisioningPojo.getRoster().getExistingTeacherIds() .stream() .filter(staff -> staff.getStaffPiId().equalsIgnoreCase(provisioningPojo.getToolUserId())) .collect(Collectors.toList()); if(existingTeacher.isEmpty()) { // call the roster service to update Roster with teacher } } else if (isStudent(provisioningPojo, provisioningPojo.getToolUserId())) { List existingStudent = provisioningPojo.getRoster().getExistingStudentIds() .stream() .filter(staff -> staff.getStudentPiId().equalsIgnoreCase(provisioningPojo.getToolUserId())) .collect(Collectors.toList()); if (existingStudent.isEmpty()) { // call the roster service to update Roster with Student } } return Mono.just(provisioningPojo); } else { return processMembersFromNamesRolesResponse(namesRoleMembers, provisioningPojo) .flatMap(this::createClassAndMapping); } }); } private Mono checkIfClassExists(ProvisioningPojo provisioningPojo) { return emsClassMappingClient.classExistsForExternalClassId(provisioningPojo.getRoster().getExternalClassId()) .flatMap(externalClassMappingData -> { Optional optionalClassId = Optional.ofNullable(externalClassMappingData) .map(ExternalClassMappingData::getData) .map(map -> map.entrySet().stream()) .map(Stream::findFirst) .map(Optional::get) .map(Entry::getValue) .map(ExternalClassMapping::getClassId); if (optionalClassId.isPresent()) { return rosterServiceClient.getClassBySectionId(optionalClassId.get()) .flatMap(cmsClass -> { Optional cmsClassId = Optional.ofNullable(cmsClass) .map(CMSClass::getData) .map(ClassData::getSection) .map(Section::getId); if (cmsClassId.isPresent()) { provisioningPojo.getRoster().setToolSectionId(cmsClassId.get()); provisioningPojo.getRoster() .setExistingTeacherIds(cmsClass.getData().getSection().getData().getSectionInfo().getStaff()); provisioningPojo.getRoster() .setExistingStudentIds(cmsClass.getData().getSection().getData().getSectionInfo().getStudents()); if (isStudent(provisioningPojo, provisioningPojo.getToolUserId()) && provisioningPojo.getRoster().getExistingTeacherIds().isEmpty()) { // new field and temp solution.. need to discuss this approach provisioningPojo.setUpdateStaffIfStudent(true); } return Mono.just(Boolean.TRUE); } return Mono.just(Boolean.FALSE); }); } return Mono.just(Boolean.FALSE); }); } private Mono processMembersFromNamesRolesResponse(List namesRoleMembers, ProvisioningPojo provisioningPojo) { LOGGER.debug("provisioning additional Teacher users from names and roles API "); Optional instructor = namesRoleMembers.stream() .filter(member -> RumbaRole.T.name() .equalsIgnoreCase(classProvisoningHelper.obtainRumbaRoleFromLTIRoles(member.getRoles()))) .findFirst(); // changes here if(provisioningPojo.getRole().equals(RumbaRole.S.name()) && instructor.isPresent()) { if (provisioningPojo.updateStaffIfStudent) { // call Roster service to update the } MemberData memberData = constructMemberData(instructor.get(), provisioningPojo); return provisioningService.enableUserProvisioning(memberData) .map(rumbaTeacherId -> { RosterMember rosterMember = new RosterMember(); rosterMember.setUserId(instructor.get().getUserId()); rosterMember.setRole(memberData.getRole()); rosterMember.setExternalUserId(memberData.getExternalUserId()); rosterMember.setToolUserId(rumbaTeacherId); provisioningPojo.getMembers().add(rosterMember); LOGGER.debug("provisioningPojo : {}", provisioningPojo); return provisioningPojo; }); } return Mono.just(provisioningPojo); }