/mod/assignment/type/turnitin/tiiapipost.class.php
https://github.com/jarednipper/HSU-common-code · PHP · 240 lines · 220 code · 15 blank · 5 comment · 8 complexity · bdc6ea17989227dc085a0ff19be27c9a MD5 · raw file
- <?php
- /**
- * API Assignment
- * v 1.0 2006/06/13 10:00:00 Northumbria Learning
- * v 2.0.4 2008/10/31 Minor change from isadmin() and isteacher() to has_capability()
- */
-
-
- class tii_api {
- var $config;
- var $uid, $uem, $ufn, $uln, $md5, $upw, $ctl, $cpw, $tem, $pfn, $src;
- var $assign, $newassign, $newupw, $aid, $diagnostic, $encrypt, $fcmd, $fid, $utp, $said;
- var $cid, $assignid, $username, $mdlusername, $format, $grade, $availableenable, $availableday, $availablemonth, $availableyear;
- var $availablehour, $availableminute, $havailableday, $havailablemonth, $havailableyear;
- var $havailablehour, $havailableminute, $dueenable, $dueday, $duemonth, $dueyear, $duehour, $dueminute;
- var $hdueday, $hduemonth, $hdueyear, $hduehour, $hdueminute, $preventlate, $hpreventlate, $assignmenttype;
- var $groupmode, $visible, $course, $coursemodule, $section, $module, $modulename, $instance, $mode, $maxbytes;
- var $version;
-
- function tii_api($mdl_id,$mdl_username,$mdl_uem,$mdl_ufn,$mdl_uln,$cid,$fcmd,$fid) {
- global $CFG,$USER;
- $this->uid = $mdl_id;
- $this->mdlusername = $mdl_username;
- $this->uem = $mdl_uem;
- $this->ufn = $mdl_ufn;
- $this->uln = $mdl_uln;
- $this->cid = $cid;
- $this->src = 6;
- $this->fcmd = $fcmd;
- $this->fid = $fid;
- $this->version = TII_VERSION;
- if (has_capability('mod/assignment:grade', get_context_instance(CONTEXT_COURSE, $cid))) {
- $this->utp = 2;
- } else {
- $this->utp = 1;
- }
- }
-
- function get_url() {
- global $CFG;
- $url = TII_BASEURL."?";
- $url .= "gmtime=".tii_api::get_gmtime();
- $url .= "&fid=".$this->fid;
- $url .= "&fcmd=".$this->fcmd;
- $url .= "&encrypt=".TII_ENCRYPT;
- $url .= "&md5=".$this->get_md5string();
- $url .= "&aid=".$CFG->tii_aid;
- $url .= "&said=".$this->said;
- $url .= "&diagnostic=".TII_DIAGNOSTIC;
- $url .= "&wsurl=".urlencode($CFG->tii_webserviceurl);
- $url .= "&uem=".urlencode($this->uem);
- $url .= "&upw=".urlencode($this->upw);
- $url .= "&ufn=".urlencode($this->ufn);
- $url .= "&uln=".urlencode($this->uln);
- $url .= "&utp=".$this->utp;
- $url .= "&mdl_ufn=".urlencode($this->ufn);
- $url .= "&mdl_uln=".urlencode($this->uln);
- $url .= "&mdl_uem=".urlencode($this->uem);
- if ($this->fid == 4 & $this->fcmd == 4) {
- $url .= "&action=ASSIGNMENT_DELETE";
- } elseif ($this->fid == 1) {
- $url .= "&action=ASSIGNMENT_UPLOAD";
- } elseif ($this->fid == 4) {
- $url .= "&action=ASSIGNMENT_CREATE";
- }
-
-
- $url .= "&src=".$this->src;
- $url .= "&mdl_username=".urlencode($this->mdlusername);
- $url .= "&mdl_ctl=".urlencode($this->ctl);
- $url .= "&mdl_cpw=".urlencode($this->cpw);
- $url .= "&mdl_tem=".$this->tem;
- $url .= "&mdl_newupw=".urlencode($this->newupw);
- $url .= "&mdl_description=".urlencode($this->description);
- $url .= "&mdl_title=".urlencode($this->assign);
- $url .= "&mdl_dis=".$this->dis;
- $url .= "&mdl_uid=".urlencode($this->uid);
- $url .= "&mdl_cid=".urlencode($this->cid);
- $url .= "&mdl_assignid=".urlencode($this->assignid);
- $url .= "&mdl_format=".urlencode($this->format);
- $url .= "&mdl_grade=".urlencode($this->grade);
- $url .= "&mdl_availableenable=".$this->availableenable;
- $url .= "&mdl_availableday=".substr( $this->availableday + 100, 1 );
- $url .= "&mdl_availablemonth=".substr( $this->availablemonth + 100, 1 );
- $url .= "&mdl_availableyear=".$this->availableyear;
- $url .= "&mdl_availablehour=".substr( $this->availablehour + 100, 1 );
- $url .= "&mdl_availableminute=".substr( $this->availableminute + 100, 1 );
- $url .= "&mdl_havailableday=".substr( $this->havailabledueday + 100, 1 );
- $url .= "&mdl_havailablemonth=".substr( $this->havailablemonth + 100, 1 );
- $url .= "&mdl_havailableyear=".urlencode($this->havailableyear);
- $url .= "&mdl_havailablehour=".substr( $this->havailablehour + 100, 1 );
- $url .= "&mdl_havailableminute=".substr( $this->havailablemonth + 100, 1 );
- $url .= "&mdl_dueenable=".$this->dueenable;
- $url .= "&mdl_dueday=".substr( $this->dueday + 100, 1 );
- $url .= "&mdl_duemonth=".substr( $this->duemonth + 100, 1 );
- $url .= "&mdl_dueyear=".$this->dueyear;
- $url .= "&mdl_duehour=".substr( $this->duehour + 100, 1 );
- $url .= "&mdl_dueminute=".substr( $this->dueminute + 100, 1 );
- $url .= "&mdl_hdueday=".substr( $this->hdueday + 100, 1 );
- $url .= "&mdl_hduemonth=".substr( $this->hduemonthday + 100, 1 );
- $url .= "&mdl_hdueyear=".$this->hdueyear;
- $url .= "&mdl_hduehour=".substr( $this->hduehour + 100, 1 );
- $url .= "&mdl_hdueminute=".substr( $this->hdueminute + 100, 1 );
- $url .= "&mdl_preventlate=".$this->preventlate;
- $url .= "&mdl_hpreventlate=".$this->hpreventlate;
- $url .= "&mdl_assignmenttype=".$this->assignmenttype;
- $url .= "&mdl_groupmode=".$this->groupmode;
- $url .= "&mdl_visible=".$this->visible;
- $url .= "&mdl_course=".$this->course;
- $url .= "&mdl_coursemodule=".$this->coursemodule;
- $url .= "&mdl_section=".$this->section;
- $url .= "&mdl_module=".$this->module;
- $url .= "&mdl_modulename=".$this->modulename;
- $url .= "&mdl_instance=".$this->instance;
- $url .= "&mdl_mode=".$this->mode;
- $url .= "&mdl_maxbytes=".$this->maxbytes;
- $url .= "&cid=".urlencode($this->cid);
- $url .= "&uid=".urlencode($this->uid);
- $url .= "&assign=".urlencode($this->assign);
- $url .= "&assignid=".urlencode($this->assignid);
- $url .= "&username=".urlencode($this->mdlusername);
- $url .= "&dis=".$this->dis;
- $url .= "&cpw=".urlencode($this->cpw);
- $url .= "&ctl=".urlencode($this->ctl);
- $url .= "&tem=".$this->tem;
- $url .= "&version=".TII_VERSION;
- if (TII_LOGGING) {
- require_once("logger.class.php");
- $logger = new Logger;
- $logger->log("API:".$url);
- }
- return $url;
- }
-
-
- function create_call($description,$ctl,$cpw,$tem,$iod,$newupw,$assign,$dis,$cid,$assignid,$username,$format,
- $grade,$availableenable,$availableday,$availablemonth,$availableyear,$availablehour,
- $availableminute,$havailableday,$havailablemonth,$havailableyear,$havailablehour,
- $havailableminute,$dueenable,$dueday,$duemonth,$dueyear,$duehour,$dueminute,$hdueday,
- $hduemonth,$hdueyear,$hduehour,$hdueminute,$preventlate,$hpreventlate,$assignmenttype,
- $groupmode,$visible,$course,$coursemodule,$section,$module,$modulename,$instance,$mode,$maxbytes) {
-
- global $CFG;
- $this->ctl = $ctl;
- $this->cpw = $cpw;
- $this->tem = $course."_".$CFG->tii_aid.TII_EMAILSUFFIX;
- $this->oid = $iod;
- $this->newupw = $newupw;
- $this->description = $description;
- $this->assign = $assign;
- $this->dis = $dis;
- $this->assignid = $assignid;
- $this->username = $username;
- $this->format = $format;
- $this->grade = $grade;
- $this->availableenable = $availableenable;
- $this->availableday = $availableday;
- $this->availablemonth = $availablemonth;
- $this->availableyear = $availableyear;
- $this->availablehour = $availablehour;
- $this->availableminute = $availableminute;
- $this->havailableday = $havailableday;
- $this->havailablemonth = $havailablemonth;
- $this->havailableyear = $havailableyear;
- $this->havailablehour = $havailablehour;
- $this->havailableminute = $havailableminute;
- $this->dueenable = $dueenable;
- $this->dueday = $dueday;
- $this->duemonth = $duemonth;
- $this->dueyear = $dueyear;
- $this->duehour = $duehour;
- $this->dueminute = $dueminute;
- $this->hdueday = $hdueday;
- $this->hduemonth = $hduemonth;
- $this->hdueyear = $hdueyear;
- $this->hduehour = $hduehour;
- $this->hdueminute = $hdueminute;
- $this->preventlate = $preventlate;
- $this->hpreventlate = $hpreventlate;
- $this->assignmenttype = $assignmenttype;
- $this->groupmode = $groupmode;
- $this->visible = $visible;
- $this->course = $course;
- $this->coursemodule = $coursemodule;
- $this->section = $section;
- $this->module = $module;
- $this->modulename = $modulename;
- $this->instance = $instance;
- $this->mode = $mode;
- $this->maxbytes = $maxbytes;
- $this->version = TII_VERSION;
- $url = $this->get_url();
- return $url;
- }
-
- function get_gmtime() {
- return substr(gmdate('YmdHi'), 0, -1);
- }
-
-
- function get_md5string(){
- global $CFG;
- $md5string = $CFG->tii_aid.
- $this->assign.
- $this->assignid.
- $this->cid.
- $this->cpw.
- $this->ctl.
- TII_DIAGNOSTIC.
- $this->dis.
- $this->dtdue.
- $this->dtstart.
- TII_ENCRYPT.
- $this->fcmd.
- $this->fid.
- tii_api::get_gmtime().
- $this->newassign.
- $this->newupw.
- $this->oid.
- $this->pfn.
- $this->pln.
- $this->ptl.
- $this->ptype.
- $this->said.
- $this->tem.
- $this->uem.
- $this->ufn.
- $this->uid.
- $this->uln.
- $this->upw.
- $this->mdlusername.
- $this->utp.
- $CFG->tii_sharedkey;
- return md5($md5string);
- }
- }
- ?>