function setUp()
 {
     self::$fixture_file = MODULE_SECUREFILES_PATH . '/tests/SecureFileControllerTest.yml';
     parent::setUp();
     $this->priorAuthenticators = Authenticator::get_authenticators();
     $this->priorDefaultAuthenticator = Authenticator::get_default_authenticator();
     Authenticator::register('MemberAuthenticator');
     Authenticator::set_default_authenticator('MemberAuthenticator');
     if (!file_exists(ASSETS_PATH)) {
         mkdir(ASSETS_PATH);
     }
     /* Create a test folders for each of the fixture references */
     $fileIDs = $this->allFixtureIDs('Folder');
     foreach ($fileIDs as $fileID) {
         $file = DataObject::get_by_id('Folder', $fileID);
         if (!file_exists(BASE_PATH . "/{$file->Filename}")) {
             mkdir(BASE_PATH . "/{$file->Filename}");
         }
     }
     /* Create a test files for each of the fixture references */
     $fileIDs = $this->allFixtureIDs('File');
     foreach ($fileIDs as $fileID) {
         $file = DataObject::get_by_id('File', $fileID);
         $fh = fopen(BASE_PATH . "/{$file->Filename}", "w");
         fwrite($fh, str_repeat('x', 1000));
         fclose($fh);
     }
     // USERS:
     // 1 x ADMIN user
     // 1 x Member with SECUREFILEACCESS
     // 1 x Member with SECURE_FILE_SETTINGS
     // 1 x Member
 }
Beispiel #2
0
 function setUp()
 {
     // This test assumes that MemberAuthenticator is present and the default
     $this->priorAuthenticators = Authenticator::get_authenticators();
     $this->priorDefaultAuthenticator = Authenticator::get_default_authenticator();
     Authenticator::register('MemberAuthenticator');
     Authenticator::set_default_authenticator('MemberAuthenticator');
     parent::setUp();
 }
 function setUp()
 {
     // This test assumes that MemberAuthenticator is present and the default
     $this->priorAuthenticators = Authenticator::get_authenticators();
     $this->priorDefaultAuthenticator = Authenticator::get_default_authenticator();
     Authenticator::register('MemberAuthenticator');
     Authenticator::set_default_authenticator('MemberAuthenticator');
     // And that the unique identified field is 'Email'
     $this->priorUniqueIdentifierField = Member::get_unique_identifier_field();
     Member::set_unique_identifier_field('Email');
     parent::setUp();
 }
Beispiel #4
0
 public function tearDown()
 {
     // Restore selected authenticator
     // MemberAuthenticator might not actually be present
     if (!in_array('MemberAuthenticator', $this->priorAuthenticators)) {
         Authenticator::unregister('MemberAuthenticator');
     }
     foreach ($this->priorAuthenticators as $authenticator) {
         Authenticator::register($authenticator);
     }
     Authenticator::set_default_authenticator($this->priorDefaultAuthenticator);
     // Restore unique identifier field
     Member::set_unique_identifier_field($this->priorUniqueIdentifierField);
     parent::tearDown();
 }
Beispiel #5
0
 public function register()
 {
     $input = Input::all();
     $data = Authenticator::register($input);
     $parse = json_decode($data);
     if ($parse->success == 'data') {
         $email = new UtilityMailman();
         $email->setReceiver($parse->data->email);
         $email->setSubject('Activate Your Account');
         $user = Sentry::findUserById($parse->data->id);
         $body = $email->getBody('thanks', $user);
         $email->setBody($body);
         $data = $email->send();
     }
     return $data;
 }
<?php

/**
 * Default EmailVerifiedMember extends Member class, alter line below if you would only like to extend particular sub-classes.
 */
DataObject::add_extension('Member', 'EmailVerifiedMember');
/**
 * Alter the Silverstripe Login Forms
 */
Authenticator::register('EmailVerifiedMemberAuthenticator');
Authenticator::unregister('MemberAuthenticator');
/**
 * Alter the Security Controller 
 */
Object::add_extension('Security', 'EmailVerifiedSecurity');
/**
 * Alter Site Config
 */
Object::add_extension('SiteConfig', 'EmailVerifiedMemberSiteConfig');
// ContentController includes Method LoginForm() to use $LoginForm anywhere inside your Templates
// this method needs to be overwritten in Page_Controller
//public function LoginForm() {
//  return EmailVerifiedMemberAuthenticator::get_login_form($this);
//}
<?php

/**
 * Alter the default SilverStripe login form
 */
Authenticator::register('EmailVerificationAuthenticator');
Authenticator::unregister('MemberAuthenticator');