# Struct pages::ctx::Ctx

source · [−]

    pub struct Ctx {
        pub settings: Settings,
        pub db: Database,
        pub conductor: Conductor,
        pub creds: ArgonConfig,
    }

## Fields

`settings: Settings` `db: Database` `conductor: Conductor` `creds: ArgonConfig`

credential-procession policy

## Implementations

source

### impl Ctx

source

#### pub async fn email_exists(
&self,
email: &str
) -> Result<AccountCheckResp, ServiceError>

check if email exists on database

source

#### pub async fn set_email(
&self,
username: &str,
new_email: &str
) -> Result<(), ServiceError>

update email

source

#### pub async fn username_exists(
&self,
username: &str
) -> Result<AccountCheckResp, ServiceError>

check if email exists in database

source

#### pub async fn update_username(
&self,
current_username: &str,
new_username: &str
) -> Result<String, ServiceError>

update username of a registered user

source

#### async fn authenticate(
&self,
username: &str,
password: &str
) -> Result<(), ServiceError>

source

#### pub async fn delete_user(
&self,
username: &str,
password: &str
) -> Result<(), ServiceError>

delete user

source

#### pub async fn change_password(
&self,
username: &str,
payload: &ChangePasswordReqest
) -> Result<(), ServiceError>

change password

source

### impl Ctx

source

#### pub async fn login(&self, payload: &Login) -> Result<String, ServiceError>

Log in method. Returns `Ok(())` when user is authenticated and errors when authentication fails

source

#### pub async fn register(&self, payload: &Register) -> Result<(), ServiceError>

register new user

source

### impl Ctx

source

#### pub async fn add_site(&self, site: AddSite) -> Result<Page, ServiceError>

source

#### pub async fn update_site(
&self,
secret: &str,
branch: Option<String>
) -> Result<Uuid, ServiceError>

source

#### pub async fn delete_site(
&self,
owner: String,
site_id: Uuid
) -> Result<(), ServiceError>

source

### impl Ctx

source

#### pub fn get_creds() -> ArgonConfig

Get credential-processing policy

source

#### pub async fn new(settings: Settings) -> Arc<Self>

## Trait Implementations

source

### impl Clone for Ctx

source

#### fn clone(&self) -> Ctx

Returns a copy of the value. Read more
1.0.0 · source

#### fn clone_from(&mut self, source: &Self)

Performs copy-assignment from `source`. Read more

## Auto Trait Implementations

### impl !RefUnwindSafe for Ctx

### impl Send for Ctx

### impl Sync for Ctx

### impl Unpin for Ctx

### impl !UnwindSafe for Ctx

## Blanket Implementations

source

### impl<T> Any for Twhere
T: 'static + ?Sized,

source

#### fn type_id(&self) -> TypeId

Gets the `TypeId` of `self`. Read more
source

### impl<T> Borrow<T> for Twhere
T: ?Sized,

const: unstable · source

#### fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source

### impl<T> BorrowMut<T> for Twhere
T: ?Sized,

const: unstable · source

#### fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source

### impl<T> From<T> for T

const: unstable · source

#### fn from(t: T) -> T

Returns the argument unchanged.

source

### impl<T> Instrument for T

source

#### fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided `Span`, returning an `Instrumented` wrapper. Read more
source

#### fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current `Span`, returning an `Instrumented` wrapper. Read more
source

### impl<T, U> Into<U> for Twhere
U: From<T>,

const: unstable · source

#### fn into(self) -> U

Calls `U::from(self)`.

That is, this conversion is whatever the implementation of `From<T> for U` chooses to do.

source

### impl<T> Same<T> for T

#### type Output = T

Should always be `Self`
source

### impl<T> ToOwned for Twhere
T: Clone,

#### type Owned = T

The resulting type after obtaining ownership.
source

#### fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source

#### fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source

### impl<T, U> TryFrom<U> for Twhere
U: Into<T>,

#### type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source

#### fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source

### impl<T, U> TryInto<U> for Twhere
U: TryFrom<T>,

#### type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source

#### fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.

### impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,

#### fn vzip(self) -> V

source

### impl<T> WithSubscriber for T

source

#### fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,

Attaches the provided `Subscriber` to this type, returning a `WithDispatch` wrapper. Read more
source

#### fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default `Subscriber` to this type, returning a `WithDispatch` wrapper. Read more