Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
caseine
moodle-mod_vpl
Commits
e7a8295b
Commit
e7a8295b
authored
Feb 26, 2020
by
Astor Bizard
Browse files
Removed unused files (obsolete teacher files management)
parent
519524a7
Changes
7
Hide whitespace changes
Inline
Side-by-side
forms/coursesettings.php
deleted
100644 → 0
View file @
519524a7
<?php
// This file is part of VPL for Moodle - http://vpl.dis.ulpgc.es/
//
// VPL for Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// VPL for Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with VPL for Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Execution options form
*
* @package mod_vpl
* @copyright 2012 Juan Carlos Rodríguez-del-Pino
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @author Juan Carlos Rodríguez-del-Pino <jcrodriguez@dis.ulpgc.es>
*/
require_once
(
dirname
(
__FILE__
)
.
'/../../../config.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../locallib.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../vpl.class.php'
);
require_once
(
$CFG
->
libdir
.
'/formslib.php'
);
class
mod_vpl_coursesettings_form
extends
moodleform
{
protected
$vpl
;
public
function
__construct
(
$page
,
$vpl
)
{
$this
->
vpl
=
$vpl
;
parent
::
__construct
(
$page
);
}
protected
function
definition
()
{
$mform
=
&
$this
->
_form
;
$id
=
$this
->
vpl
->
get_course_module
()
->
id
;
$mform
->
addElement
(
'hidden'
,
'id'
,
$id
);
$mform
->
setType
(
'id'
,
PARAM_INT
);
$mform
->
addElement
(
'selectyesno'
,
'useracetheme'
,
get_string
(
'useracetheme'
,
VPL
)
);
$mform
->
setDefault
(
'useracetheme'
,
false
);
$mform
->
addHelpButton
(
'useracetheme'
,
'useracetheme'
,
VPL
);
$mform
->
addElement
(
'selectyesno'
,
'studentaccessprevious'
,
get_string
(
'studentaccessprevious'
,
VPL
)
);
$mform
->
setDefault
(
'studentaccessprevious'
,
false
);
$mform
->
addHelpButton
(
'studentaccessprevious'
,
'studentaccessprevious'
,
VPL
);
$mform
->
addElement
(
'selectyesno'
,
'gradebookshortfeedback'
,
get_string
(
'gradebookshortfeedback'
,
VPL
)
);
$mform
->
setDefault
(
'gradebookshortfeedback'
,
false
);
$mform
->
addHelpButton
(
'gradebookshortfeedback'
,
'gradebookshortfeedback'
,
VPL
);
$mform
->
addElement
(
'selectyesno'
,
'hidesubmissionform'
,
get_string
(
'hidesubmissionform'
,
VPL
)
);
$mform
->
setDefault
(
'hidesubmissionform'
,
false
);
$mform
->
addHelpButton
(
'hidesubmissionform'
,
'hidesubmissionform'
,
VPL
);
$mform
->
addElement
(
'selectyesno'
,
'notimelimit'
,
get_string
(
'notimelimit'
,
VPL
)
);
$mform
->
setDefault
(
'notimelimit'
,
false
);
$mform
->
addHelpButton
(
'notimelimit'
,
'notimelimit'
,
VPL
);
$mform
->
addElement
(
'submit'
,
'saveoptions'
,
get_string
(
'saveoptions'
,
VPL
)
);
}
}
require_login
();
$id
=
required_param
(
'id'
,
PARAM_INT
);
$vpl
=
new
mod_vpl
(
$id
);
$vpl
->
prepare_page
(
'forms/coursesttings.php'
,
array
(
'id'
=>
$id
)
);
$vpl
->
require_capability
(
VPL_MANAGE_CAPABILITY
);
$course
=
$vpl
->
get_course
();
$PAGE
->
navbar
->
add
(
get_string
(
'coursesttings'
,
VPL
)
);
// Display page.
echo
$OUTPUT
->
header
();
echo
$OUTPUT
->
heading
(
get_string
(
'coursesttings'
,
VPL
)
);
$course
=
$vpl
->
get_course
();
$mform
=
new
mod_vpl_coursesettings_form
(
'coursesttings.php'
,
$vpl
);
if
(
$fromform
=
$mform
->
get_data
())
{
if
(
isset
(
$fromform
->
saveoptions
))
{
$instance
=
$vpl
->
get_instance
();
\
mod_vpl\event\vpl_execution_options_updated
::
log
(
$vpl
);
$instance
->
basedon
=
$fromform
->
basedon
;
$instance
->
runscript
=
$fromform
->
runscript
;
$instance
->
debugscript
=
$fromform
->
debugscript
;
$instance
->
run
=
$fromform
->
run
;
$instance
->
debug
=
$fromform
->
debug
;
$instance
->
evaluate
=
$fromform
->
evaluate
;
$instance
->
evaluateonsubmission
=
$fromform
->
evaluate
&&
$fromform
->
evaluateonsubmission
;
$instance
->
automaticgrading
=
$fromform
->
evaluate
&&
$fromform
->
automaticgrading
;
if
(
$vpl
->
update
()
)
{
vpl_notice
(
get_string
(
'optionssaved'
,
VPL
)
);
}
else
{
vpl_notice
(
get_string
(
'optionsnotsaved'
,
VPL
),
'error'
);
}
}
}
\
mod_vpl\event\vpl_execution_options_viewed
::
log
(
$vpl
);
$mform
->
display
();
$vpl
->
print_footer
();
forms/executionfiles.json.php
deleted
100644 → 0
View file @
519524a7
<?php
// This file is part of VPL for Moodle - http://vpl.dis.ulpgc.es/
//
// VPL for Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// VPL for Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with VPL for Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Processes AJAX to edit execution files
*
* @package mod_vpl
* @copyright 2012 Juan Carlos Rodríguez-del-Pino
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @author Juan Carlos Rodríguez-del-Pino <jcrodriguez@dis.ulpgc.es>
*/
define
(
'AJAX_SCRIPT'
,
true
);
require
(
__DIR__
.
'/../../../config.php'
);
$outcome
=
new
stdClass
();
$outcome
->
success
=
true
;
$outcome
->
response
=
new
stdClass
();
$outcome
->
error
=
''
;
try
{
require_once
(
dirname
(
__FILE__
)
.
'/../locallib.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../vpl.class.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/edit.class.php'
);
if
(
!
isloggedin
())
{
throw
new
Exception
(
get_string
(
'loggedinnot'
)
);
}
$id
=
required_param
(
'id'
,
PARAM_INT
);
// Course id.
$action
=
required_param
(
'action'
,
PARAM_ALPHANUMEXT
);
$vpl
=
new
mod_vpl
(
$id
);
// TODO use or not sesskey "require_sesskey();".
require_login
(
$vpl
->
get_course
(),
false
);
$vpl
->
require_capability
(
VPL_MANAGE_CAPABILITY
);
$PAGE
->
set_url
(
new
moodle_url
(
'/mod/vpl/forms/executionfiles.json.php'
,
array
(
'id'
=>
$id
,
'action'
=>
$action
)
)
);
echo
$OUTPUT
->
header
();
// Send headers.
$actiondata
=
json_decode
(
file_get_contents
(
'php://input'
)
);
switch
(
$action
)
{
case
'save'
:
$postfiles
=
mod_vpl_edit
::
filesfromide
(
$actiondata
->
files
);
$fgm
=
$vpl
->
get_fgm
(
'execution'
);
$fgm
->
deleteallfiles
();
$fgm
->
addallfiles
(
$postfiles
);
$vpl
->
update
();
break
;
case
'load'
:
$fgm
=
$vpl
->
get_fgm
(
'execution'
);
$outcome
->
response
->
files
=
mod_vpl_edit
::
filestoide
(
$fgm
->
getallfiles
()
);
break
;
case
'run'
:
case
'debug'
:
case
'evaluate'
:
$outcome
->
response
=
mod_vpl_edit
::
execute
(
$vpl
,
$USER
->
id
,
$action
,
$actiondata
);
break
;
case
'retrieve'
:
$outcome
->
response
=
mod_vpl_edit
::
retrieve_result
(
$vpl
,
$USER
->
id
);
break
;
case
'cancel'
:
$outcome
->
response
=
mod_vpl_edit
::
cancel
(
$vpl
,
$userid
);
break
;
case
'getjails'
:
$outcome
->
response
->
servers
=
vpl_jailserver_manager
::
get_https_server_list
(
$vpl
->
get_instance
()
->
jailservers
);
break
;
default
:
throw
new
Exception
(
'ajax action error: '
+
$action
);
}
}
catch
(
Exception
$e
)
{
$outcome
->
success
=
false
;
$outcome
->
error
=
$e
->
getMessage
();
}
echo
json_encode
(
$outcome
);
die
();
forms/executionfiles.php
deleted
100644 → 0
View file @
519524a7
<?php
// This file is part of VPL for Moodle - http://vpl.dis.ulpgc.es/
//
// VPL for Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// VPL for Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with VPL for Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Edit execution files
*
* @package mod_vpl
* @copyright 2012 Juan Carlos Rodríguez-del-Pino
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @author Juan Carlos Rodríguez-del-Pino <jcrodriguez@dis.ulpgc.es>
*/
require_once
(
dirname
(
__FILE__
)
.
'/../../../config.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../locallib.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../vpl.class.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../editor/editor_utility.php'
);
require_login
();
$id
=
required_param
(
'id'
,
PARAM_INT
);
$vpl
=
new
mod_vpl
(
$id
);
$instance
=
$vpl
->
get_instance
();
$vpl
->
prepare_page
(
'forms/executionfiles.php'
,
array
(
'id'
=>
$id
)
);
$vpl
->
require_capability
(
VPL_MANAGE_CAPABILITY
);
$fgp
=
$vpl
->
get_fgm
(
'execution'
);
$options
=
Array
();
$options
[
'restrictededitor'
]
=
false
;
$options
[
'save'
]
=
true
;
$options
[
'run'
]
=
true
;
$options
[
'debug'
]
=
true
;
$options
[
'evaluate'
]
=
true
;
$options
[
'ajaxurl'
]
=
"executionfiles.json.php?id=
{
$id
}
&action="
;
$options
[
'download'
]
=
"../views/downloadexecutionfiles.php?id=
{
$id
}
"
;
$options
[
'resetfiles'
]
=
false
;
$options
[
'minfiles'
]
=
0
;
$options
[
'maxfiles'
]
=
1000
;
$options
[
'saved'
]
=
true
;
$options
[
'minfiles'
]
=
$fgp
->
get_numstaticfiles
();
session_write_close
();
vpl_editor_util
::
generate_requires
(
$options
);
$vpl
->
print_header
(
get_string
(
'executionfiles'
,
VPL
)
);
$vpl
->
print_heading_with_help
(
'executionfiles'
);
echo
$OUTPUT
->
box_start
();
vpl_editor_util
::
print_tag
();
echo
$OUTPUT
->
box_end
();
$vpl
->
print_footer_simple
();
\ No newline at end of file
forms/requiredfiles.php
deleted
100644 → 0
View file @
519524a7
<?php
// This file is part of VPL for Moodle - http://vpl.dis.ulpgc.es/
//
// VPL for Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// VPL for Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with VPL for Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Edit required file
*
* @package mod_vpl
* @copyright 2012 Juan Carlos Rodríguez-del-Pino
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @author Juan Carlos Rodríguez-del-Pino <jcrodriguez@dis.ulpgc.es>
*/
require_once
(
dirname
(
__FILE__
)
.
'/../../../config.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../locallib.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../vpl.class.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/edit.class.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../editor/editor_utility.php'
);
require_login
();
$id
=
required_param
(
'id'
,
PARAM_INT
);
$vpl
=
new
mod_vpl
(
$id
);
$instance
=
$vpl
->
get_instance
();
$vpl
->
prepare_page
(
'forms/requiredfiles.php'
,
array
(
'id'
=>
$id
)
);
$vpl
->
require_capability
(
VPL_MANAGE_CAPABILITY
);
$options
=
Array
();
$options
[
'restrictededitor'
]
=
false
;
$options
[
'save'
]
=
true
;
$options
[
'run'
]
=
false
;
$options
[
'debug'
]
=
false
;
$options
[
'evaluate'
]
=
false
;
$options
[
'ajaxurl'
]
=
"requiredfiles.json.php?id=
{
$id
}
&action="
;
$options
[
'download'
]
=
"../views/downloadrequiredfiles.php?id=
{
$id
}
"
;
$options
[
'resetfiles'
]
=
false
;
$options
[
'minfiles'
]
=
0
;
$options
[
'maxfiles'
]
=
1000
;
$options
[
'saved'
]
=
true
;
vpl_editor_util
::
generate_requires
(
$options
);
$vpl
->
print_header
(
get_string
(
'requestedfiles'
,
VPL
)
);
$vpl
->
print_heading_with_help
(
'requestedfiles'
);
session_write_close
();
echo
$OUTPUT
->
box_start
();
vpl_editor_util
::
print_tag
();
echo
$OUTPUT
->
box_end
();
$vpl
->
print_footer_simple
();
views/downloadexecutionfiles.php
deleted
100644 → 0
View file @
519524a7
<?php
// This file is part of VPL for Moodle - http://vpl.dis.ulpgc.es/
//
// VPL for Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// VPL for Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with VPL for Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Download execution files
*
* @package mod_vpl
* @copyright 2012 Juan Carlos Rodríguez-del-Pino
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @author Juan Carlos Rodríguez-del-Pino <jcrodriguez@dis.ulpgc.es>
*/
require_once
(
dirname
(
__FILE__
)
.
'/../../../config.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../locallib.php'
);
require_once
(
dirname
(
__FILE__
)
.
'/../vpl.class.php'
);
try
{
require_login
();
$id
=
required_param
(
'id'
,
PARAM_INT
);
$vpl
=
new
mod_vpl
(
$id
);
$vpl
->
require_capability
(
VPL_MANAGE_CAPABILITY
);
$filegroup
=
$vpl
->
get_execution_fgm
();
$filegroup
->
download_files
(
$vpl
->
get_printable_name
()
);
die
();
}
catch
(
Exception
$e
)
{
vpl_redirect
(
´´
,
$e
->
getMessage
(),
'error'
);
}
views/downloadrequiredfiles.php
deleted
100644 → 0
View file @
519524a7
<?php
// This file is part of VPL for Moodle - http://vpl.dis.ulpgc.es/
//
// VPL for Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// VPL for Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with VPL for Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Download required files in ZIP format
* @package mod_vpl
* @copyright 2012 Juan Carlos Rodríguez-del-Pino
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @author Juan Carlos Rodríguez-del-Pino <jcrodriguez@dis.ulpgc.es>
*/
require_once
dirname
(
__FILE__
)
.
'/../../../config.php'
;
require_once
dirname
(
__FILE__
)
.
'/../locallib.php'
;
require_once
dirname
(
__FILE__
)
.
'/../vpl.class.php'
;
require_login
();
$id
=
required_param
(
'id'
,
PARAM_INT
);
$vpl
=
new
mod_vpl
(
$id
);
$vpl
->
password_check
();
$vpl
->
network_check
();
if
(
!
$vpl
->
is_visible
()){
notice
(
get_string
(
'notavailable'
));
}
$filegroup
=
$vpl
->
get_fgm
(
"required"
);
$filegroup
->
download_files
(
$vpl
->
get_printable_name
());
die
;
\ No newline at end of file
vpl.class.php
View file @
e7a8295b
...
...
@@ -314,21 +314,21 @@ class mod_vpl {
* @param $files array
* of required files
*/
public
function
set_files
(
$type
,
$files
)
{
public
function
set_files
(
$type
,
$files
)
{
file_group_process
::
write_list
(
$this
->
get_files_filename
(
$type
),
$files
);
}
/**
*
* @return
object
file group manager for
requir
ed files
* @return
file_group_process
file group manager for
specifi
ed files
*/
public
function
get_fgm
(
$type
)
{
if
(
!
isset
(
$this
->
fgm
[
$type
]))
{
if
(
$type
==
'execution'
)
{
$this
->
fgm
[
$type
]
=
new
file_group_execution
(
$this
->
get_files_filename
(
$type
)
if
(
$type
==
'execution'
)
{
$this
->
fgm
[
$type
]
=
new
file_group_execution
(
$this
->
get_files_filename
(
$type
)
,
$this
->
get_files_directory
(
$type
)
);
}
else
{
$this
->
fgm
[
$type
]
=
new
file_group_process
(
$this
->
get_files_filename
(
$type
)
$this
->
fgm
[
$type
]
=
new
file_group_process
(
$this
->
get_files_filename
(
$type
)
,
$this
->
get_files_directory
(
$type
)
,
$this
->
instance
->
maxfiles
);
}
...
...
@@ -336,27 +336,6 @@ class mod_vpl {
return
$this
->
fgm
[
$type
];
}
// FIXME check and remove function.
public
function
set_initial_file
(
$name
,
$files
)
{
$filelist
=
''
;
$basepath
=
$this
->
get_submission_directory
();
foreach
(
$files
as
$file
)
{
$name
=
basename
(
$file
[
'name'
]
);
if
(
$name
>
''
)
{
if
(
$filelist
>
''
)
{
$filelist
.
=
"
\n
"
;
}
$filelist
.
=
$name
;
$fp
=
vpl_fopen
(
$basepath
.
$name
);
fwrite
(
$fp
,
$file
[
'data'
]
);
fclose
(
$fp
);
}
}
$fp
=
vpl_fopen
(
$this
->
get_submissionfilelistname
()
);
fwrite
(
$fp
,
$filelist
);
fclose
(
$fp
);
}
/**
* get instance name with groupping name if available
*
...
...
@@ -477,11 +456,12 @@ class mod_vpl {
protected
function
get_password_md5
()
{
return
md5
(
$this
->
instance
->
id
.
(
sesskey
())
);
}
/**
* Get is use as base
**/
function
is_use_as_base
(){
return
(
$this
->
instance
->
usableasbase
?
true
:
false
)
;
public
function
is_use_as_base
()
{
return
$this
->
instance
->
usableasbase
==
1
;
}
...
...
@@ -828,13 +808,11 @@ class mod_vpl {
}
else
{
$field
=
'userid'
;
}
$id
=
$this
->
get_instance
()
->
id
;
$query
=
"SELECT
$field
, COUNT(*) as submissions FROM
{
vpl_submissions
}
"
;
$query
.
=
'
WHERE {vpl_submissions}.vpl=
?'
;
$query
.
=
"
WHERE
{
vpl_submissions
}
.vpl=
$id
"
;
$query
.
=
" GROUP BY
{
vpl_submissions
}
.
$field
"
;
$parms
=
array
(
$this
->
get_instance
()
->
id
);
return
$DB
->
get_records_sql
(
$query
,
$parms
);
return
$DB
->
get_records_sql
(
$query
);
}
/**
...
...
@@ -1424,69 +1402,6 @@ class mod_vpl {
self
::
$headerisout
=
true
;
}
/**
* Create tabs to view_description/submit/view_submission/edit
*
* @param string $path to get the active tab
*
*/
public
function
print_configure_tabs
(
$path
)
{
global
$CFG
,
$PAGE
;
$active
=
basename
(
$path
);
$strbasic
=
get_string
(
'basic'
,
VPL
);
$strfulldescription
=
get_string
(
'fulldescription'
,
VPL
);
$strtestcases
=
get_string
(
'testcases'
,
VPL
);
$strexecutionoptions
=
get_string
(
'executionoptions'
,
VPL
);
$menustrexecutionoptions
=
get_string
(
'menuexecutionoptions'
,
VPL
);
$strrequestedfiles
=
get_string
(
'requestedfiles'
,
VPL
);
$stradvanced
=
get_string
(
'advanced'
,
VPL
);
$strexecution
=
get_string
(
'execution'
,
VPL
);
$tabs
=
array
();
$tabs
[]
=
new
tabobject
(
'edit'
,
vpl_abs_href
(
'/course/modedit.php'
,
'update'
,
$this
->
cm
->
id
),
$strbasic
,
$strbasic
);
$urltestcasesfile
=
vpl_mod_href
(
'forms/testcasesfile.php'
,
'id'
,
$this
->
cm
->
id
,
'edit'
,
3
);
$tabs
[]
=
new
tabobject
(
'testcasesfile.php'
,
$urltestcasesfile
,
$strtestcases
,
$strtestcases
);
$urlexecutionoptions
=
vpl_mod_href
(
'forms/executionoptions.php'
,
'id'
,
$this
->
cm
->
id
);
$tabs
[]
=
new
tabobject
(
'executionoptions.php'
,
$urlexecutionoptions
,
$menustrexecutionoptions
,
$strexecutionoptions
);
$urlrequestedfiles
=
vpl_mod_href
(
'forms/requestedfiles.php'
,
'id'
,
$this
->
cm
->
id
);
$tabs
[]
=
new
tabobject
(
'requiredfiles.php'
,
$urlrequestedfiles
,
$strrequestedfiles
,
$strrequestedfiles
);
if
(
$active
==
'executionfiles.php'
||
$active
==
'executionlimits.php'
||
$active
==
'executionkeepfiles.php'
||
$active
==
'variations.php'
||
$active
==
'local_jail_servers.php'
||
$active
==
'checkjailservers.php'
)
{
$urlexecutionfiles
=
VPL_mod_href
(
'forms/executionfiles.php'
,
'id'
,
$this
->
cm
->
id
);
$tabs
[]
=
new
tabobject
(
$active
,
$urlexecutionfiles
,
$stradvanced
,
$stradvanced
);
$strexecutionlimits
=
get_string
(
'maxresourcelimits'
,
VPL
);
$strexecutionfiles
=
get_string
(
'executionfiles'
,
VPL
);
$menustrexecutionfiles
=
get_string
(
'menuexecutionfiles'
,
VPL
);
$menustrexecutionlimits
=
get_string
(
'menuresourcelimits'
,
VPL
);
$strvariations
=
get_string
(
'variations'
,
VPL
);
$strexecutionkeepfiles
=
get_string
(
'keepfiles'
,
VPL
);
$strexecutionlimits
=
get_string
(
'maxresourcelimits'
,
VPL
);
$strcheckjails
=
get_string
(
'check_jail_servers'
,
VPL
);
$strsetjails
=
get_string
(
'local_jail_servers'
,
VPL
);
$menustrexecutionkeepfiles
=
get_string
(
'menukeepfiles'
,
VPL
);
$menustrcheckjails
=
get_string
(
'menucheck_jail_servers'
,
VPL
);
$menustrsetjails
=
get_string
(
'menulocal_jail_servers'
,
VPL
);
$subtabs
=
array
();
$urlexecutionfiles
=
VPL_mod_href
(
'forms/executionfiles.php'
,
'id'
,
$this
->
cm
->
id
);
$subtabs
[]
=
new
tabobject
(
'executionfiles.php'
,
$urlexecutionfiles
,
$menustrexecutionfiles
,
$strexecutionfiles
);
$urlexecutionlimits
=
VPL_mod_href
(
'forms/executionlimits.php'
,
'id'
,
$this
->
cm
->
id
);
$subtabs
[]
=
new
tabobject
(
'executionlimits.php'
,
$urlexecutionlimits
,
$menustrexecutionlimits
,
$strexecutionlimits
);
$urlexecutionkeepfiles
=
VPL_mod_href
(
'forms/executionkeepfiles.php'
,
'id'
,
$this
->
cm
->
id
);
$subtabs
[]
=
new
tabobject
(
'executionkeepfiles.php'
,
$urlexecutionkeepfiles
,
$menustrexecutionkeepfiles
,
$strexecutionkeepfiles
);
$urlvariations
=
VPL_mod_href
(
'forms/variations.php'
,
'id'
,
$this
->
cm
->
id
);
$subtabs
[]
=
new
tabobject
(
'variations.php'
,
$urlvariations
,
$strvariations
,
$strvariations
);
$urlcheckjailservers
=
VPL_mod_href
(
'views/checkjailservers.php'
,
'id'
,
$this
->
cm
->
id
);
$subtabs
[]
=
new
tabobject
(
'checkjailservers.php'
,
$urlcheckjailservers
,
$menustrcheckjails
,
$strcheckjails
);
if
(
$this
->
has_capability
(
VPL_SETJAILS_CAPABILITY
))
{
$urllocaljailservers
=
VPL_mod_href
(
'forms/local_jail_servers.php'
,
'id'
,
$this
->
cm
->
id
);
$subtabs
[]
=
new
tabobject
(
'local_jail_servers.php'
,
$urllocaljailservers
,
$menustrsetjails
,
$strsetjails
);
}
}
else
{
$tabs
[]
=
new
tabobject
(
'executionfiles.php'
,
$urlexecutionfiles
,
$stradvanced
,
$stradvanced
);
}
}
/**
* Create tabs to view_description/submit/view_submission/edit
*
...
...
@@ -1602,7 +1517,7 @@ class mod_vpl {
}
$tabs
[]
=
vpl_create_tabobject
(
'edit.php'
,
$href
,
'edit'
);
}
if
(
!
$example
)
{
if
(
!
$example
&&
$submiter
&&
$this
->
is_submit_able
()
)
{
$href
=
vpl_mod_href
(
'forms/submissionview.php'
,
'id'
,
$cmid
,
'userid'
,
$userid
);
$tabs
[]
=
vpl_create_tabobject
(
'submissionview.php'
,
$href
,
'submissionview'
);
if
(
$grader
&&
$this
->
get_grade
()
!=
0
&&
$subinstance
...
...
@@ -1613,7 +1528,7 @@ class mod_vpl {
$text
=
get_string
(
'grade'
);
$tabs
[]
=
vpl_create_tabobject
(
'gradesubmission.php'
,
$href
,
'grade'
,
'moodle'
);
}
if
(
$subinstance
/*&& ($grader || $similarity|| $this->instance->allowshowprevious)*/
)
{
if
(
$subinstance
/*&& ($grader || $similarity|| $this->instance->allowshowprevious)*/
)
{
$strlistprevoiussubmissions
=
get_string
(
'previoussubmissionslist'
,
VPL
);
$href
=
vpl_mod_href
(
'views/previoussubmissionslist.php'
,
'id'
,
$cmid
,
'userid'
,
$userid
);
$tabs
[]
=
vpl_create_tabobject
(
'previoussubmissionslist.php'
,
$href
,
'previoussubmissionslist'
);
...
...
@@ -1750,8 +1665,7 @@ class mod_vpl {
$needcomma
=
true
;
}
$link
=
' (<a href="'
;
// $link .= vpl_mod_href( 'views/downloadfiles.php', 'id', $this->get_course_module()->id ,'type','required');
$link
.
=
vpl_mod_href
(
'views/downloadrequiredfiles.php'
,
'id'
,
$this
->
get_course_module
()
->
id
);
$link
.
=
vpl_mod_href
(
'views/downloadfiles.php'
,
'id'
,
$this
->
get_course_module
()
->
id
,
'type'
,
'required'
);
$link
.
=
'">'
;
$link
.
=
get_string
(
'download'
,
VPL
);
$link
.
=
'</a>)'
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment