parent
6e38997e6d
commit
c060732a54
|
|
@ -1,64 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=log
|
||||
MAIL_HOST=127.0.0.1
|
||||
MAIL_PORT=2525
|
||||
MAIL_USERNAME=null
|
||||
MAIL_PASSWORD=null
|
||||
MAIL_ENCRYPTION=null
|
||||
MAIL_FROM_ADDRESS="hello@example.com"
|
||||
MAIL_FROM_NAME="${APP_NAME}"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=ISI_TOKEN_KAMU_DISINI
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=log
|
||||
MAIL_HOST=127.0.0.1
|
||||
MAIL_PORT=2525
|
||||
MAIL_USERNAME=null
|
||||
MAIL_PASSWORD=null
|
||||
MAIL_ENCRYPTION=null
|
||||
MAIL_FROM_ADDRESS="hello@example.com"
|
||||
MAIL_FROM_NAME="${APP_NAME}"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=gGaFJXn41pcCRvRDPyyq
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=log
|
||||
MAIL_HOST=127.0.0.1
|
||||
MAIL_PORT=2525
|
||||
MAIL_USERNAME=null
|
||||
MAIL_PASSWORD=null
|
||||
MAIL_ENCRYPTION=null
|
||||
MAIL_FROM_ADDRESS="hello@example.com"
|
||||
MAIL_FROM_NAME="${APP_NAME}"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=log
|
||||
MAIL_HOST=127.0.0.1
|
||||
MAIL_PORT=2525
|
||||
MAIL_USERNAME=null
|
||||
MAIL_PASSWORD=null
|
||||
MAIL_ENCRYPTION=null
|
||||
MAIL_FROM_ADDRESS="hello@example.com"
|
||||
MAIL_FROM_NAME="${APP_NAME}"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=EMAIL_KAMU
|
||||
MAIL_PASSWORD=APP_PASSWORD_GMAIL
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=EMAIL_KAMU
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=APP_PASSWORD_GMAIL
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=EMAIL_KAMU
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=APP_PASSWORD_GMAIL
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=mlnryan05@gmail.com
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=mlnryan05@gmail.com
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=qnte zkku hlrg nxzs
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=mlnryan05@gmail.com
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=qntezkku hlrg nxzs
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=mlnryan05@gmail.com
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=qntezkkuhlrg nxzs
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=mlnryan05@gmail.com
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=qntezkkuhlrgnxzs
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=mlnryan05@gmail.com
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
APP_NAME=Laravel
|
||||
APP_ENV=local
|
||||
APP_KEY=base64:VGjxoHXnll7wWiXgXTzgWYAFLsyenxO+NwqA4c4Tu6k=
|
||||
APP_DEBUG=true
|
||||
APP_TIMEZONE=UTC
|
||||
APP_URL=http://localhost
|
||||
|
||||
APP_LOCALE=en
|
||||
APP_FALLBACK_LOCALE=en
|
||||
APP_FAKER_LOCALE=en_US
|
||||
|
||||
APP_MAINTENANCE_DRIVER=file
|
||||
APP_MAINTENANCE_STORE=database
|
||||
|
||||
BCRYPT_ROUNDS=12
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_STACK=single
|
||||
LOG_DEPRECATIONS_CHANNEL=null
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=greenview
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=
|
||||
|
||||
FONNTE_TOKEN=chpBEnbbsP7BEZQnZ6jj
|
||||
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
SESSION_ENCRYPT=false
|
||||
SESSION_PATH=/
|
||||
SESSION_DOMAIN=null
|
||||
|
||||
BROADCAST_CONNECTION=log
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=database
|
||||
|
||||
CACHE_STORE=database
|
||||
CACHE_PREFIX=
|
||||
|
||||
MEMCACHED_HOST=127.0.0.1
|
||||
|
||||
REDIS_CLIENT=phpredis
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_MAILER=smtp
|
||||
MAIL_HOST=smtp.gmail.com
|
||||
MAIL_PORT=587
|
||||
MAIL_USERNAME=mlnryan05@gmail.com
|
||||
MAIL_PASSWORD=qntezkkuhlrgnxzs
|
||||
MAIL_ENCRYPTION=tls
|
||||
MAIL_FROM_ADDRESS=mlnryan05@gmail.com
|
||||
MAIL_FROM_NAME="Green View"
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
AWS_DEFAULT_REGION=us-east-1
|
||||
AWS_BUCKET=
|
||||
AWS_USE_PATH_STYLE_ENDPOINT=false
|
||||
|
||||
VITE_APP_NAME="${APP_NAME}"
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
//
|
||||
}
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
|
||||
Route::delete('/admin/user/delete/{id}', [UserController::class, 'destroy'])->name('admin.user.delete');
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
|
||||
Route::delete('/admin/user/delete/{id}', [UserController::class, 'destroy'])->name('admin.user.delete');
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
$user->delete();
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'User berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$user = User::all();
|
||||
return view('admin.user.index', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 FORM EDIT
|
||||
public function edit($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
return view('admin.user.edit', compact('user'));
|
||||
}
|
||||
|
||||
// 🔥 UPDATE DATA
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email',
|
||||
'role' => 'required'
|
||||
]);
|
||||
|
||||
$user->update([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'role' => $request->role,
|
||||
]);
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'Data berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
$user = \App\Models\User::findOrFail($id);
|
||||
$user->delete();
|
||||
|
||||
return redirect()->route('admin.user.index')->with('success', 'User berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
//
|
||||
}
|
||||
|
|
@ -1,77 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
if (Auth::attempt($request->only('email', 'password'))) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
// CEK ROLE
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/penghuni/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Email atau password salah!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni' // default user
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Registrasi berhasil, silakan login');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,83 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required', // bisa email / username
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
// cek login pakai email atau username
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/penghuni/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username,
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil!');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,82 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/penghuni/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username,
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil!');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,82 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/penghuni/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username,
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil!');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/penghuni/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/penghuni/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/user/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/user/home');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'penghuni'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/user/home');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/user');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/user/home');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,86 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
if (Auth::user()->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
} else {
|
||||
return redirect('/user');
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/iuran');
|
||||
}
|
||||
|
||||
return redirect('/user/home');
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/iuran');
|
||||
}
|
||||
|
||||
return redirect('/user/home');
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,96 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/iuran');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,96 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/iuran');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,96 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/das');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,96 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,101 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,101 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,120 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
|
||||
public function kirimOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email|exists:users,email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->update([
|
||||
'otp' => $otp,
|
||||
'otp_expired_at' => now()->addMinutes(5)
|
||||
]);
|
||||
|
||||
// K
|
||||
}
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,120 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
|
||||
public function kirimOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email|exists:users,email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->update([
|
||||
'otp' => $otp,
|
||||
'otp_expired_at' => now()->addMinutes(5)
|
||||
]);
|
||||
|
||||
// K
|
||||
}
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,104 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,106 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function lupaPassword()
|
||||
{
|
||||
return view('auth.lupa-password');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,106 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,106 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,131 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,131 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,129 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,134 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,134 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,157 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,157 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,162 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,162 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->emails)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->emails)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->emails]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->emails)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,189 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
try {
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
} catch (\Exception $e) {
|
||||
|
||||
dd($e->getMessage()); // 🔥 tampilkan error asli
|
||||
}
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,189 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
try {
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
} catch (\Exception $e) {
|
||||
|
||||
dd($e->getMessage()); // 🔥 tampilkan error asli
|
||||
}
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
use App\Mail\OtpMail;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// ================= LOGIN =================
|
||||
|
||||
public function login()
|
||||
{
|
||||
return view('auth.login');
|
||||
}
|
||||
|
||||
public function prosesLogin(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'login' => 'required',
|
||||
'password' => 'required'
|
||||
]);
|
||||
|
||||
$login = $request->login;
|
||||
|
||||
$field = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||
|
||||
if (Auth::attempt([$field => $login, 'password' => $request->password])) {
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
$user = Auth::user();
|
||||
|
||||
if ($user->role == 'admin') {
|
||||
return redirect('/admin/dashboard');
|
||||
}
|
||||
|
||||
if ($user->role == 'rt') {
|
||||
return redirect('/rt/dashboard');
|
||||
}
|
||||
|
||||
return match($user->role) {
|
||||
'admin' => redirect('/admin/dashboard'),
|
||||
'rt' => redirect('/rt/iuran'),
|
||||
default => redirect('/user/home'),
|
||||
};
|
||||
}
|
||||
|
||||
return back()->with('error', 'Login gagal!');
|
||||
}
|
||||
|
||||
// ================= REGISTER =================
|
||||
|
||||
public function register()
|
||||
{
|
||||
return view('auth.register');
|
||||
}
|
||||
|
||||
public function prosesRegister(Request $request)
|
||||
{
|
||||
// VALIDASI
|
||||
$request->validate([
|
||||
'name' => 'required',
|
||||
'username' => 'required|unique:users,username',
|
||||
'email' => 'required|email|unique:users,email',
|
||||
'password' => 'required|min:6',
|
||||
]);
|
||||
|
||||
// DEBUG (WAJIB COBA)
|
||||
// dd($request->all());
|
||||
|
||||
User::create([
|
||||
'name' => $request->name,
|
||||
'username' => $request->username, // 🔥 INI WAJIB ADA
|
||||
'email' => $request->email,
|
||||
'password' => Hash::make($request->password),
|
||||
'role' => 'user'
|
||||
]);
|
||||
|
||||
return redirect('/login')->with('success', 'Register berhasil');
|
||||
}
|
||||
|
||||
// ================= LOGOUT =================
|
||||
|
||||
public function logout(Request $request)
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
|
||||
public function forgotForm()
|
||||
{
|
||||
return view('auth.forgot');
|
||||
}
|
||||
|
||||
public function sendOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|email'
|
||||
]);
|
||||
|
||||
$user = User::where('email', $request->email)->first();
|
||||
|
||||
if (!$user) {
|
||||
return back()->with('error', 'Email tidak ditemukan');
|
||||
}
|
||||
|
||||
$otp = rand(100000, 999999);
|
||||
|
||||
$user->otp_code = $otp;
|
||||
$user->otp_expired = now()->addMinutes(5);
|
||||
$user->save();
|
||||
|
||||
Mail::to($user->email)->send(new OtpMail($otp));
|
||||
|
||||
session(['reset_email' => $user->email]);
|
||||
|
||||
return redirect()->route('password.otp')->with('success', 'OTP dikirim ke email');
|
||||
}
|
||||
|
||||
public function otpForm()
|
||||
{
|
||||
return view('auth.otp');
|
||||
}
|
||||
|
||||
public function verifyOtp(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'otp' => 'required'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
if ($user->otp_code != $request->otp) {
|
||||
return back()->with('error', 'OTP salah');
|
||||
}
|
||||
|
||||
if (Carbon::now()->gt($user->otp_expired)) {
|
||||
return back()->with('error', 'OTP expired');
|
||||
}
|
||||
|
||||
return redirect()->route('password.reset');
|
||||
}
|
||||
|
||||
public function resetForm()
|
||||
{
|
||||
return view('auth.reset');
|
||||
}
|
||||
|
||||
public function resetPassword(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'password' => 'required|min:6|confirmed'
|
||||
]);
|
||||
|
||||
$user = User::where('email', session('reset_email'))->first();
|
||||
|
||||
if (!$user) {
|
||||
return redirect()->route('password.forgot');
|
||||
}
|
||||
|
||||
$user->password = Hash::make($request->password);
|
||||
$user->otp_code = null;
|
||||
$user->otp_expired = null;
|
||||
$user->save();
|
||||
|
||||
return redirect('/login')->with('success', 'Password berhasil direset');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
//
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('admin.informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('.informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('admin.informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('admin.informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
public function index()
|
||||
{
|
||||
dd(view()->exists('admin.informasi.index'));
|
||||
}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
public function index()
|
||||
{
|
||||
dd(view()->exists('admin.informasi.index'));
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('admin.informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
dd(view()->exists('admin.informasi.index'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('adminformasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('admininformasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('admin.informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('admin.informasi.index');
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
// nanti simpan ke database
|
||||
return redirect()->route('informasi.index');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => auth()->user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => auth()->user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => auth()->user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,93 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => auth()->user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,93 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => auth()->user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,93 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => Auth::user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
}
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => Auth::user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
|
||||
public function detailInformasi($id)
|
||||
{
|
||||
$info = Informasi::findOrFail($id);
|
||||
|
||||
// 🔥 TAMBAH VIEW DI SINI
|
||||
$info->increment('views');
|
||||
|
||||
return view('user.informasi.detail', compact('info'));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,103 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$informasi = Informasi::latest()->get();
|
||||
return view('admin.informasi.index', compact('informasi'));
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => Auth::user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
|
||||
public function detailInformasi($id)
|
||||
{
|
||||
$info = Informasi::findOrFail($id);
|
||||
|
||||
// 🔥 TAMBAH VIEW DI SINI
|
||||
$info->increment('views');
|
||||
|
||||
return view('user.informasi.detail', compact('info'));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,105 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
// 🔥 TAMBAHAN INI
|
||||
$informasi = Informasi::orderBy('is_penting', 'desc')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get();
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => Auth::user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
|
||||
public function detailInformasi($id)
|
||||
{
|
||||
$info = Informasi::findOrFail($id);
|
||||
|
||||
// 🔥 TAMBAH VIEW DI SINI
|
||||
$info->increment('views');
|
||||
|
||||
return view('user.informasi.detail', compact('info'));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,105 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
// 🔥 TAMBAHAN INI
|
||||
$informasi = Informasi::orderBy('is_penting', 'desc')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get();
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => Auth::user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
|
||||
public function detailInformasi($id)
|
||||
{
|
||||
$info = Informasi::findOrFail($id);
|
||||
|
||||
// 🔥 TAMBAH VIEW DI SINI
|
||||
$info->increment('views');
|
||||
|
||||
return view('user.informasi.detail', compact('info'));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,105 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\Informasi;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class InformasiController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
// 🔥 TAMBAHAN INI
|
||||
$informasi = Informasi::orderBy('is_penting', 'desc')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get();
|
||||
}
|
||||
|
||||
public function create()
|
||||
{
|
||||
return view('admin.informasi.create');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'gambar' => 'nullable|image|mimes:jpg,png,jpeg|max:2048'
|
||||
]);
|
||||
|
||||
$gambar = null;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
Informasi::create([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'penulis' => Auth::user()->name,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil ditambahkan');
|
||||
}
|
||||
|
||||
public function edit($id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
return view('admin.informasi.edit', compact('data'));
|
||||
}
|
||||
|
||||
public function update(Request $request, $id)
|
||||
{
|
||||
$data = Informasi::findOrFail($id);
|
||||
|
||||
$request->validate([
|
||||
'judul' => 'required',
|
||||
'isi' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
]);
|
||||
|
||||
$gambar = $data->gambar;
|
||||
|
||||
if ($request->hasFile('gambar')) {
|
||||
$file = $request->file('gambar');
|
||||
$gambar = time().'.'.$file->getClientOriginalExtension();
|
||||
$file->move(public_path('informasi'), $gambar);
|
||||
}
|
||||
|
||||
$data->update([
|
||||
'judul' => $request->judul,
|
||||
'isi' => $request->isi,
|
||||
'tanggal' => $request->tanggal,
|
||||
'kategori' => $request->kategori,
|
||||
'gambar' => $gambar,
|
||||
'is_penting' => $request->is_penting ? 1 : 0,
|
||||
]);
|
||||
|
||||
return redirect()->route('informasi.index')->with('success', 'Berhasil diupdate');
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
Informasi::findOrFail($id)->delete();
|
||||
return back()->with('success', 'Berhasil dihapus');
|
||||
}
|
||||
|
||||
public function detailInformasi($id)
|
||||
{
|
||||
$info = Informasi::findOrFail($id);
|
||||
|
||||
// 🔥 TAMBAH VIEW DI SINI
|
||||
$info->increment('views');
|
||||
|
||||
return view('user.informasi.detail', compact('info'));
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue