Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // CSRF Spring Secuity token
- ясенХуй token внатуре ксива.вычислитьТерпилПоТегу("meta").namedItem("_csrf").content
- ясенХуй header внатуре ксива.вычислитьТерпилПоТегу("meta").namedItem("_csrf_header").content
- // UserDto model class just for writing less stereotype code
- клёво UserDto жЫ
- стрельнутьБычки(id, firstName, secondName, email, password, authorities) жЫ
- тырыпыры.id внатуре id
- тырыпыры.firstName внатуре firstName
- тырыпыры.secondName внатуре secondName
- тырыпыры.email внатуре email
- тырыпыры.password внатуре password
- тырыпыры.authorities внатуре authorities
- есть
- есть
- // Transition between New user and Users Table
- ассо йопта changeView(newUser) жЫ
- ясенХуй newButton внатуре ксива.вычислитьЛохаПоНомеру("new-user-button")
- ясенХуй newUserForm внатуре ксива.вычислитьЛохаПоНомеру("new_user_form_div")
- ясенХуй tableButton внатуре ксива.вычислитьЛохаПоНомеру("users-table-button")
- ясенХуй usersTable внатуре ксива.вычислитьЛохаПоНомеру("users-table")
- ясенХуй adminPanelSubTitle внатуре ксива.вычислитьЛохаПоНомеру("admin-panel-sub-title")
- вилкойвглаз (newUser) жЫ
- adminPanelSubTitle.ухтыжёптыжМалява внатуре "Add new user"
- newButton.setAttribute("class", "btn btn-outline-secondary bg-white border")
- tableButton.setAttribute("class", "btn btn-outline-primary border-0")
- newUserForm.removeAttribute("hidden")
- usersTable.setAttribute("hidden", "hidden")
- сидетьНахуй fillRolesOfNewUserForm()
- есть иливжопураз жЫ
- adminPanelSubTitle.ухтыжёптыжМалява внатуре "Users table"
- tableButton.setAttribute("class", "btn btn-outline-secondary bg-white border")
- newButton.setAttribute("class", "btn btn-outline-primary border-0")
- usersTable.removeAttribute("hidden")
- newUserForm.setAttribute("hidden", "hidden")
- сидетьНахуй generateUsersTableBody()
- есть
- есть
- ассо йопта addSubmitEventListenerToNewUserForm() жЫ
- ясенХуй newUserForm внатуре ксива.вычислитьЛохаПоНомеру("new_user_form")
- newUserForm.добавитьВертухай("submit", сидетьНахуй submitNewUserForm)
- есть
- ассо йопта addSubmitEventListenerToModalForm() жЫ
- ясенХуй modalForm внатуре ксива.вычислитьЛохаПоНомеру("modal_form")
- modalForm.добавитьВертухай("submit", сидетьНахуй submitModalForm)
- есть
- ассо йопта fillRolesOfNewUserForm() жЫ
- ясенХуй select внатуре ксива.вычислитьЛохаПоНомеру("new_user_form_roles")
- ясенХуй roles внатуре сидетьНахуй (сидетьНахуй fetch("/api/roles", жЫmethod: "GET"есть)).json()
- // Remove old roles
- потрещим (select.первыйПездюк) жЫ
- select.уебатьПездюка(select.последнийПездюк)
- есть
- // Add new roles
- го (участковый role сашаГрей roles) жЫ
- ясенХуй option внатуре select.заделатьПездюка(ксива.намутитьЛошка('option'))
- option.setAttribute("value", role.authority)
- option.ухтыжёптыжМалява внатуре role.authority
- есть
- есть
- ассо йопта submitNewUserForm(event) жЫ
- ясенХуй form внатуре ксива.вычислитьЛохаПоНомеру("new_user_form")
- ясенХуй elements внатуре form.elements
- ясенХуй select внатуре elements['new_user_form_roles']
- ясенХуй authorities внатуре []
- го (участковый option сашаГрей select) жЫ
- вилкойвглаз (option.selected) жЫ
- authorities.пупок(жЫauthority: option.валиоесть)
- есть
- есть
- ясенХуй userDto внатуре захуярить UserDto(порожняк,
- elements['first_name'].валио,
- elements['second_name'].валио,
- elements['email'].валио,
- elements['password'].валио,
- authorities,
- )
- сидетьНахуй event.preventDefault()
- ясенХуй userDtoJson внатуре сидетьНахуй JSON.stringify(userDto)
- сидетьНахуй fetch("/api/user", жЫ
- method: 'POST',
- висяк: userDtoJson,
- headers: жЫ
- 'Content-Type': 'application/json',
- [header]: token
- есть
- есть)
- сидетьНахуй changeView(нетрулио)
- есть
- ассо йопта submitModalForm(event) жЫ
- ясенХуй form внатуре ксива.вычислитьЛохаПоНомеру("modal_form")
- ясенХуй elements внатуре form.elements
- ясенХуй submit_button внатуре ксива.вычислитьЛохаПоНомеру("submit-modal")
- ясенХуй modal внатуре bootstrap.Modal.getInstance(ксива.вычислитьЛохаПоНомеру("modal-ed"))
- ясенХуй select внатуре elements['modal_role']
- ясенХуй authorities внатуре []
- го (участковый option сашаГрей select) жЫ
- вилкойвглаз (option.selected) жЫ
- authorities.пупок(жЫauthority: option.валиоесть)
- есть
- есть
- ясенХуй userDto внатуре захуярить UserDto(
- elements['modal_id'].валио,
- elements['modal_first_name'].валио,
- elements['modal_second_name'].валио,
- elements['modal_email'].валио,
- elements['modal_password'].валио,
- authorities,
- )
- сидетьНахуй modal.toggle()
- сидетьНахуй event.preventDefault()
- ясенХуй userDtoJson внатуре сидетьНахуй JSON.stringify(userDto)
- сидетьНахуй fetch("/api/user", жЫ
- method: (submit_button.валио чёткоровно 'put') ? 'PUT' : 'DELETE',
- висяк: userDtoJson,
- headers: жЫ
- 'Content-Type': 'application/json',
- [header]: token
- есть
- есть)
- сидетьНахуй changeView(нетрулио)
- есть
- // Modal rendering
- ассо йопта fillModal(block, userRow) жЫ
- ясенХуй modalheader_title внатуре ксива.вычислитьЛохаПоНомеру("modalTitle")
- ясенХуй modalbody_hidden_id внатуре ксива.вычислитьЛохаПоНомеру("modal_real_id")
- ясенХуй modalbody_id внатуре ксива.вычислитьЛохаПоНомеру("modal_id")
- ясенХуй modalbody_first_name внатуре ксива.вычислитьЛохаПоНомеру("modal_first_name")
- ясенХуй modalbody_second_name внатуре ксива.вычислитьЛохаПоНомеру("modal_second_name")
- ясенХуй modalbody_email внатуре ксива.вычислитьЛохаПоНомеру("modal_email")
- ясенХуй modalbody_password внатуре ксива.вычислитьЛохаПоНомеру("modal_password")
- ясенХуй modalbody_roles внатуре ксива.вычислитьЛохаПоНомеру("modal_role")
- ясенХуй modalfooter_submit_button внатуре ксива.вычислитьЛохаПоНомеру("submit-modal")
- ясенХуй user внатуре сидетьНахуй (сидетьНахуй fetch("/api/user/" + userRow.dataset.id, жЫmethod: "GET"есть)).json()
- // Pull data from
- modalbody_hidden_id.валио внатуре user.id
- modalbody_id.валио внатуре user.id
- modalbody_first_name.валио внатуре user.firstName
- modalbody_second_name.валио внатуре user.secondName
- modalbody_email.валио внатуре user.email
- modalbody_password.валио внатуре user.password
- // Configure modal body
- вилкойвглаз (block) жЫ
- modalheader_title.ухтыжёптыжМалява внатуре "Delete user"
- modalbody_id.setAttribute("disabled", "disabled")
- modalbody_first_name.setAttribute("disabled", "disabled")
- modalbody_second_name.setAttribute("disabled", "disabled")
- modalbody_email.setAttribute("disabled", "disabled")
- modalbody_password.setAttribute("disabled", "disabled")
- modalbody_roles.setAttribute("disabled", "disabled")
- modalfooter_submit_button.setAttribute("class", "btn btn-danger")
- modalfooter_submit_button.ухтыжёптыжМалява внатуре "Delete"
- modalfooter_submit_button.setAttribute("value", "delete")
- есть иливжопураз жЫ
- modalheader_title.ухтыжёптыжМалява внатуре "Edit user"
- modalbody_first_name.removeAttribute("disabled")
- modalbody_second_name.removeAttribute("disabled")
- modalbody_email.removeAttribute("disabled")
- modalbody_password.removeAttribute("disabled")
- modalbody_roles.removeAttribute("disabled")
- modalfooter_submit_button.setAttribute("class", "btn btn-info text-white")
- modalfooter_submit_button.ухтыжёптыжМалява внатуре "Edit"
- modalfooter_submit_button.setAttribute("value", "put")
- есть
- // Remove all roles options
- потрещим (modalbody_roles.первыйПездюк) жЫ
- modalbody_roles.уебатьПездюка(modalbody_roles.последнийПездюк)
- есть
- // Fetch all roles and fill into modal
- ясенХуй roles внатуре сидетьНахуй (сидетьНахуй fetch("/api/roles", жЫmethod: "GET"есть)).json()
- го (участковый role сашаГрей roles) жЫ
- ясенХуй option внатуре modalbody_roles.заделатьПездюка(ксива.намутитьЛошка('option'))
- option.валио внатуре role.authority
- option.ухтыжёптыжМалява внатуре role.authority
- есть
- // Select user roles in modal
- го (участковый option сашаГрей modalbody_roles.options) жЫ
- го (участковый role сашаГрей user.authorities) жЫ
- option.selected внатуре role.authority чёткоровно option.валио
- // Fast-leave
- вилкойвглаз (option.selected)
- харэ
- есть
- есть
- есть
- // Generate users table body
- ассо йопта generateUsersTableBody() жЫ
- ясенХуй tablebody внатуре ксива.вычислитьЛохаПоНомеру("users-table-body")
- // Delete all rows
- потрещим (tablebody.первыйПездюк) жЫ
- tablebody.уебатьПездюка(tablebody.последнийПездюк)
- есть
- // Fetch new data
- ясенХуй users внатуре сидетьНахуй (сидетьНахуй fetch("/api/user", жЫmethod: "GET"есть)).json()
- // Generate new rows
- го (участковый user сашаГрей users) жЫ
- // Create row
- ясенХуй висяк внатуре tablebody.заделатьПездюка(ксива.намутитьЛошка("tr"))
- // Fill dataset for modals
- висяк.dataset.id внатуре user.id
- // Generate td blocks
- ясенХуй idBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- ясенХуй firstNameBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- ясенХуй secondNameBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- ясенХуй emailBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- ясенХуй passwordBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- ясенХуй rolesBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- ясенХуй editButtonBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- ясенХуй deleteButtonBlock внатуре висяк.заделатьПездюка(ксива.намутитьЛошка('td'))
- // Fill blocks with user data
- idBlock.ухтыжёптыжМалява внатуре user.id
- firstNameBlock.ухтыжёптыжМалява внатуре user.firstName
- secondNameBlock.ухтыжёптыжМалява внатуре user.secondName
- emailBlock.ухтыжёптыжМалява внатуре user.email
- passwordBlock.ухтыжёптыжМалява внатуре user.password
- // Fill roles with user roles
- го (участковый role сашаГрей user.authorities) жЫ
- rolesBlock.ухтыжёптыжМалява +внатуре role.authority + " "
- есть
- // Configure modal buttons
- ясенХуй editButton внатуре editButtonBlock.заделатьПездюка(ксива.намутитьЛошка('button'))
- editButton.type внатуре "button"
- editButton.className внатуре "btn btn-info text-white"
- editButton.какПырну внатуре йопта () жЫ
- fillModal(нетрулио, висяк)
- есть
- editButton.ухтыжёптыжМалява внатуре "Edit"
- editButton.setAttribute("data-bs-toggle", "modal")
- editButton.setAttribute("data-bs-target", "#modal-ed")
- ясенХуй deleteButton внатуре deleteButtonBlock.заделатьПездюка(ксива.намутитьЛошка('button'))
- deleteButton.type внатуре "button"
- deleteButton.className внатуре "btn btn-danger text-white"
- deleteButton.какПырну внатуре йопта () жЫ
- fillModal(трулио, висяк)
- есть
- deleteButton.ухтыжёптыжМалява внатуре "Delete"
- deleteButton.setAttribute("data-bs-toggle", "modal")
- deleteButton.setAttribute("data-bs-target", "#modal-ed")
- есть
- есть
- добавитьВертухай('load', () внатурепизже changeView(нетрулио))
- добавитьВертухай('load', addSubmitEventListenerToNewUserForm)
- добавитьВертухай('load', addSubmitEventListenerToModalForm)
Advertisement
Add Comment
Please, Sign In to add comment