diff --git a/mod/url/lang/en/url.php b/mod/url/lang/en/url.php index be6867d4743..4498394bc59 100644 --- a/mod/url/lang/en/url.php +++ b/mod/url/lang/en/url.php @@ -45,6 +45,7 @@ $string['displayselectexplain'] = 'Choose display type, unfortunately not all ty $string['externalurl'] = 'External URL'; $string['framesize'] = 'Frame height'; $string['chooseavariable'] = 'Choose a variable...'; +$string['invalidurl'] = 'Entered URL is invalid'; $string['modulename'] = 'URL'; $string['modulenameplural'] = 'URLs'; $string['neverseen'] = 'Never seen'; diff --git a/mod/url/mod_form.php b/mod/url/mod_form.php index da6a7209dc7..790b85dc534 100644 --- a/mod/url/mod_form.php +++ b/mod/url/mod_form.php @@ -50,6 +50,7 @@ class mod_url_mod_form extends moodleform_mod { //------------------------------------------------------- $mform->addElement('header', 'content', get_string('contentheader', 'url')); $mform->addElement('url', 'externalurl', get_string('externalurl', 'url'), array('size'=>'60'), array('usefilepicker'=>true)); + $mform->addRule('externalurl', null, 'required', null, 'client'); //------------------------------------------------------- $mform->addElement('header', 'optionssection', get_string('optionsheader', 'url')); @@ -165,4 +166,14 @@ class mod_url_mod_form extends moodleform_mod { } } + function validation($data, $files) { + $errors = parent::validation($data, $files); + //Validating Entered url + $data['externalurl'] = clean_param($data['externalurl'], PARAM_URL); + if (empty($data['externalurl'])) { + $errors['externalurl'] = get_string('invalidurl', 'url'); + } + return $errors; + } + }