Version: current

# Class RegistrationPage_Controller

The most common kind of controller; effectively a controller linked to a `DataObject`.

ContentControllers are most useful in the content-focused areas of a site. This is generally the bulk of a site; however, they may be less appropriate in, for example, the user management section of an application.

On its own, content controller does very little. Its constructor is passed a `DataObject` which is stored in $this->dataRecord. Any unrecognised method calls, for example, Title() and Content(), will be passed along to the data record,

Subclasses of ContentController are generally instantiated by ModelAsController; this will create a controller based on the URLSegment action variable, by looking in the SiteTree table.

  Object
  ViewableData implements IteratorAggregate
  RequestHandler
  Controller
  ContentController
  Page_Controller
  RegistrationPage_Controller

Package: sapphire\control
Located at auth/code/RegistrationPage.php

## Methods summary

`public` | # `init( )` Initialisation function that is run before any action on the controller is called. Initialisation function that is run before any action on the controller is called. #### Uses ``BasicAuth::requireLogin()`` #### Overrides `Page_Controller::init`
`public` | # `Form( )` Обертка для шаблона Обертка для шаблона
`public `Form`|null` | # `RegistrationForm( )` Форма регистрации Форма регистрации Получает список полей от Member #### Returns ``Form`|null` Form|NULL
`public` | # `register( array $data, `Form` $form )` Создает нового пользователя Создает нового пользователя Вызывается из формы RegistrationForm Создает пользователя, отправляет ему письмо и редеректит на страницу благодарностей #### Parameters $data array $data $form Form $form
`public` | # `thanks( )` Страница благодарностей после регистрации Страница благодарностей после регистрации
`public` | # `confirm( )` Подтверждение регистрации Подтверждение регистрации

### Methods inherited from Page_Controller

`BaseURL()`, `DocPath()`, `FavIcon()`, `HomePage()`, `ImageGalleryRandomImage()`, `PageByClass()`, `PageByID()`, `Random()`, `RedirectToFirstChild()`, `ShowWidget()`, `Siblings()`, `SitePoll()`, `combine_files()`, `isEmptyContent()`, `setSEOVars()`

### Methods inherited from ContentController

`ChildrenOf()`, `ContentLocale()`, `LangAttributes()`, `Link()`, `LoginForm()`, `Menu()`, `Page()`, `PageComments()`, `SilverStripeNavigator()`, `SiteConfig()`, `__construct()`, `data()`, `deleteinstallfiles()`, `getMenu()`, `handleRequest()`, `handleWidget()`, `httpError()`, `project()`, `successfullyinstalled()`

### Methods inherited from Controller

`CurrentMember()`, `Now()`, `PastMember()`, `PastVisitor()`, `can()`, `curr()`, `defaultAction()`, `disableBasicAuth()`, `getAction()`, `getFormOwner()`, `getRequest()`, `getResponse()`, `getSession()`, `getURLParams()`, `getViewer()`, `handleAction()`, `hasAction()`, `hasActionTemplate()`, `has_curr()`, `isAjax()`, `join_links()`, `popCurrent()`, `pushCurrent()`, `redirect()`, `redirectBack()`, `redirectedTo()`, `render()`, `setSession()`, `setURLParams()`

### Methods inherited from RequestHandler

`allowedActions()`, `checkAccessAction()`

### Methods inherited from ViewableData

`ATT_val()`, `BaseHref()`, `CSSClasses()`, `ColumnBreak()`, `ColumnCalc()`, `ColumnNumber()`, `ColumnPad()`, `ColumnPos()`, `CurrentPage()`, `Debug()`, `Even()`, `EvenOdd()`, `First()`, `FirstLast()`, `HasPerm()`, `IsAjax()`, `JS_val()`, `Last()`, `Me()`, `Middle()`, `MiddleString()`, `Modulus()`, `MultipleOf()`, `Odd()`, `Pos()`, `RAW_val()`, `SQL_val()`, `ThemeDir()`, `ThemeName()`, `Top()`, `TotalItems()`, `XML_val()`, `__get()`, `__isset()`, `__set()`, `buildCastingCache()`, `cachedCall()`, `castingClass()`, `castingHelper()`, `castingHelperPair()`, `castingObjectCreator()`, `castingObjectCreatorPair()`, `customise()`, `defineMethods()`, `escapeTypeForField()`, `getField()`, `getIterator()`, `getSecurityID()`, `getXMLValues()`, `hasField()`, `hasValue()`, `i18nLocale()`, `iteratorProperties()`, `obj()`, `renderWith()`, `setCustomisedObj()`, `setField()`

### Methods inherited from Object

`__call()`, `__toString()`, `__wakeup()`, `addMethodsFrom()`, `addStaticVars()`, `addWrapperMethod()`, `add_extension()`, `add_static_var()`, `allMethodNames()`, `cacheToFile()`, `cacheToFileWithArgs()`, `clearCache()`, `combined_static()`, `create()`, `createMethod()`, `create_from_string()`, `exists()`, `extInstance()`, `extend()`, `getCustomClass()`, `getExtensionInstance()`, `getExtensionInstances()`, `get_extensions()`, `get_static()`, `hasExtension()`, `hasMethod()`, `has_extension()`, `invokeWithExtensions()`, `is_a()`, `loadCache()`, `parentClass()`, `parse_class_spec()`, `remove_extension()`, `sanitiseCachename()`, `saveCache()`, `set_stat()`, `set_static()`, `set_uninherited()`, `stat()`, `strong_create()`, `uninherited()`, `uninherited_static()`, `useCustomClass()`

### Magic methods summary

## Properties summary

`public static array` | $allowed_actions | # Define a list of action handling methods that are allowed to be called directly by URLs. The variable should be an array of action names. This sample shows the different values that it can contain: Define a list of action handling methods that are allowed to be called directly by URLs. The variable should be an array of action names. This sample shows the different values that it can contain:
    array(
            'someaction', // someaction can be accessed by anyone, any time
            'otheraction' => true, // So can otheraction
            'restrictedaction' => 'ADMIN', // restrictedaction can only be people with ADMIN privilege
            'complexaction' '->canComplexAction' // complexaction can only be accessed if $this->canComplexAction() returns true
    );

### Properties inherited from ContentController

`$dataRecord`, `$url_handlers`

### Properties inherited from Controller

`$action`, `$baseInitCalled`, `$basicAuthEnabled`, `$controller_stack`, `$request`, `$requestParams`, `$response`, `$session`, `$urlParams`

### Properties inherited from RequestHandler

`$brokenOnConstruct`

### Properties inherited from ViewableData

`$casting`, `$customisedObject`, `$default_cast`, `$failover`, `$iteratorPos`, `$iteratorTotalItems`

### Properties inherited from Object

`$class`, `$extension_instances`, `$extensions`

[Raise a SilverStripe Framework issue/bug](https://github.com/silverstripe/silverstripe-framework/issues/new)
- [Raise a SilverStripe CMS issue/bug](https://github.com/silverstripe/silverstripe-cms/issues/new)
- Please use the Silverstripe Forums to ask development related questions. -