Example #1
0
 /**
  * Tests whether the airnotifier settings have been configured
  *
  * @since Moodle 2.7
  */
 public static function is_system_configured()
 {
     global $DB;
     // First, check if the plugin is disabled.
     $processor = $DB->get_record('message_processors', array('name' => 'airnotifier'), '*', MUST_EXIST);
     if (!$processor->enabled) {
         return 0;
     }
     // Then, check if the plugin is completly configured.
     $manager = new message_airnotifier_manager();
     return (int) $manager->is_system_configured();
 }
 /**
  * Tests whether the airnotifier settings have been configured
  * @return boolean true if airnotifier is configured
  */
 public function is_system_configured() {
     $airnotifiermanager = new message_airnotifier_manager();
     return $airnotifiermanager->is_system_configured();
 }
Example #3
0
 /**
  * Enables or disables a registered user device so it can receive Push notifications
  *
  * @param  integer $deviceid the device id
  * @param  bool $enable whether to enable the device
  * @return array warnings and success status
  * @throws moodle_exception
  * @since Moodle 3.2
  */
 public static function enable_device($deviceid, $enable)
 {
     global $USER;
     $params = self::validate_parameters(self::enable_device_parameters(), array('deviceid' => $deviceid, 'enable' => $enable));
     $context = context_system::instance();
     self::validate_context($context);
     require_capability('message/airnotifier:managedevice', $context);
     if (!message_airnotifier_manager::enable_device($params['deviceid'], $params['enable'])) {
         throw new moodle_exception('unknowndevice', 'message_airnotifier');
     }
     return array('success' => true, 'warnings' => array());
 }
Example #4
0
$PAGE->navbar->add(get_string('messageoutputs', 'message'));
$returl = new moodle_url('/admin/settings.php', array('section' => 'messagesettingairnotifier'));
$PAGE->navbar->add(get_string('pluginname', 'message_airnotifier'), $returl);
$PAGE->navbar->add($strheading);
$PAGE->set_heading($strheading);
$PAGE->set_title($strheading);
$msg = "";
// If we are requesting a key to the official message system, verify first that this site is registered.
// This check is also done in Airnotifier.
if (strpos($CFG->airnotifierurl, AIRNOTIFIER_PUBLICURL) !== false) {
    $registrationmanager = new registration_manager();
    if (!$registrationmanager->get_registeredhub(HUB_MOODLEORGHUBURL)) {
        $msg = get_string('sitemustberegistered', 'message_airnotifier');
        $msg .= $OUTPUT->continue_button($returl);
        echo $OUTPUT->header();
        echo $OUTPUT->box($msg, 'generalbox');
        echo $OUTPUT->footer();
        die;
    }
}
$manager = new message_airnotifier_manager();
if ($key = $manager->request_accesskey()) {
    set_config('airnotifieraccesskey', $key);
    $msg = get_string('keyretrievedsuccessfully', 'message_airnotifier');
} else {
    $msg = get_string('errorretrievingkey', 'message_airnotifier');
}
$msg .= $OUTPUT->continue_button($returl);
echo $OUTPUT->header();
echo $OUTPUT->box($msg, 'generalbox ');
echo $OUTPUT->footer();
Example #5
0
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
/**
 * Provide interface for AJAX device actions
 *
 * @copyright 2012 Jerome Mouneyrac
 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
 * @package message_airnotifier
 */
define('AJAX_SCRIPT', true);
require_once __DIR__ . '/../../../config.php';
// Initialise ALL the incoming parameters here, up front.
$id = required_param('id', PARAM_INT);
$enable = required_param('enable', PARAM_BOOL);
require_login();
require_sesskey();
$systemcontext = context_system::instance();
$PAGE->set_url('/message/output/airnotifier/rest.php');
$PAGE->set_context($systemcontext);
require_capability('message/airnotifier:managedevice', $systemcontext);
echo $OUTPUT->header();
// Response class to be converted to json string.
$response = new stdClass();
if (!message_airnotifier_manager::enable_device($id, $enable)) {
    throw new moodle_exception('unknowndevice', 'message_airnotifier');
}
$response->success = true;
echo json_encode($response);
die;