Initial commit

This commit is contained in:
Luka Romih
2022-12-07 04:43:36 +01:00
commit 257f3c354f
496 changed files with 55373 additions and 0 deletions
@@ -0,0 +1,40 @@
extends ../../common/side-navigation-common
.admin-nav
.admin-nav-mobile
button#nav-button.nav-button
img#burger-menu-img(src="/images/burger-menu-button-icon.svg" alt="Meni")
span.nav-title Administrator
nav
ul.admin-nav-content.slidable
li.admin-nav-item
a(href="#")
img(src="/images/cog.svg" alt="")
p Osnovne nastavitve
li.admin-nav-item.focused-menu
a.menu-selected(href="#")
img(src="/images/link.svg" alt="")
p Povezave
ul.sub-links
li
a.menu-selected(href="#") Portali
li
a(href="#") Domači slovarji
li
a(href="#") Tuji slovarji
li.admin-nav-item
a(href="#")
img(src="/images/book.svg" alt="")
p Slovarji
li.admin-nav-item
a(href="#")
img(src="/images/users.svg" alt="")
p Uporabniki
li.admin-nav-item
a(href="#")
img(src="/images/areas.svg" alt="")
p Področja
li.admin-nav-item
a(href="#")
img(src="/images/statistics.svg" alt="")
p Statistika
@@ -0,0 +1,123 @@
mixin consultancyItem(data, section)
a.consultancy-anchor(id='id-' + data.id)
.consultancy-question-item.position-relative
.row.mt-3.mb-2
.col.align-items-center.align-items-center.d-flex
if section.inProgress
img.i1rx1r(src="/images/u_edit-alt.svg" alt="")
else if section.new
img.i1rx1r(src="/images/star-blue.svg" alt="")
else if section.rejected
img.i1rx1r(src="/images/x-circle-blue.svg" alt="")
else if section.prepared
img.i1rx1r(src="/images/cog-blue.svg" alt="")
else if section.published
img.i1rx1r(src="/images/book-open-blue.svg" alt="")
span.d-inline-block.pt-0.ps-2.question-asked-time.text-p875rem= `${data.primaryDomain}`
span.d-inline-block.pt-0.ps-2.question-asked-time.text-p875rem.ms-1.me-1 •
if (data.firstName && data.lastName)
span#moderatorName.d-inline-block.pt-0.ps-2.question-asked-time.text-p875rem= `${data.firstName} ${data.lastName}`
- const sharedListCondition = data.sharedAuthors && data.sharedAuthors.length > 0
if sharedListCondition
.d-inline.d-inline-block(
tabindex="0"
data-bs-toggle="tooltip"
data-bs-title=""
data-bs-container="body"
data-bs-placement="right"
data-tooltip-content=data.sharedAuthors.reduce((acc, value) => {
return acc + value + ',';
}, '')
)
.circle.ms-1.align-items-center.justify-content-center.d-flex
span.pt-0.question-asked-time.text-p625rem #{ data.sharedAuthors.length }
span.d-inline-block.pt-0.ps-1.question-asked-time.text-p875rem.ms-2.me-1 •
span.d-inline-block.pt-0.ps-1.question-asked-time.text-p875rem= `${data.formattedTimeCreated}`
if (data.title)
.row.mt-2.mb-2
.col
h5-pb-0.navigation-text-color
b= data.title
else
.row.mt-2.mb-2
span.consultancy-description-text
b.text-p875rem= 'Opis terminološkega problema: '
span.text-p875rem= data.description
.row.mt-3.btn-group
if section.inProgress
if user.hasRole('consultancy admin')
.col-md-2
button.btn.btn-secondary.w-100.consultancy-modal-assign(
type="button"
)
img.i1p5rx1p5r(src="/images/u_edit-alt.svg" alt="")
span.ps-1 DODELI
.col-md-2
button.btn.btn-secondary.w-100.consultancy-modal-share(
type="button"
)
img.i1p5rx1p5r(src="/images/users.svg" alt="")
span.ps-1 DELI
.col-md-2
button.btn.btn-secondary.w-100.reject-item
img.i1p5rx1p5r(src="/images/x-circle-red.svg" alt="")
span.ps-1 ZAVRNI
.col-md-2
button.edit-button.btn.btn-secondary.w-100
img.i1p5rx1p5r(src="/images/u_edit-alt.svg" alt="")
span.ps-1 UREDI
.col-md-2
button.btn.btn-primary.review-btn.w-100(disabled=!data.title)
img.i1p5rx1p5r(src="/images/book-open-white.svg" alt="")
span.ps-1 OBJAVI
else if section.new
.col-md-2
button.btn.btn-secondary.w-100.consultancy-modal-assign(
type="button"
)
img.i1p5rx1p5r(src="/images/u_edit-alt.svg" alt="")
span.ps-1 DODELI
.col-md-2
button.btn.btn-secondary.w-100.delete-item
img.i1p5rx1p5r(src="/images/trash-2.svg" alt="")
span.ps-1 BRIŠI
else if section.rejected
.col-md-2
button.btn.btn-secondary.w-100.consultancy-modal-assign(
type="button"
)
img.i1p5rx1p5r(src="/images/u_edit-alt.svg" alt="")
span.ps-1 DODELI
.col-md-2
button.btn.btn-secondary.w-100.delete-item
img.i1p5rx1p5r(src="/images/trash-2.svg" alt="")
span.ps-1 BRIŠI
else if section.prepared
.col-md-2
button.edit-button.btn.btn-secondary.w-100
img.i1p5rx1p5r(src="/images/u_edit-alt.svg" alt="")
span.ps-1 UREDI
if user.hasRole('consultancy admin')
.col-md-2
button.btn.btn-primary.publish-btn.w-100(disabled=!data.title)
img.i1p5rx1p5r(src="/images/book-open-white.svg" alt="")
span.ps-1 OBJAVI
else if section.published
if user.hasRole('consultancy admin')
.col-md-2
button.btn.btn-secondary.w-100.consultancy-modal-assign(
type="button"
)
img.i1p5rx1p5r(src="/images/u_edit-alt.svg" alt="")
span.ps-1 DODELI
.col-md-2
button.edit-button.btn.btn-secondary.w-100
img.i1p5rx1p5r(src="/images/u_edit-alt.svg" alt="")
span.ps-1 UREDI
if user.hasRole('consultancy admin')
.col-md-2
button.btn.btn-secondary.w-100.delete-item
img.i1p5rx1p5r(src="/images/trash-2.svg" alt="")
span.ps-1 BRIŠI
.hovered.position-absolute
@@ -0,0 +1,17 @@
mixin consultancyItem(entry)
a.consultancy-anchor(href=`/svetovanje/vprasanje/${entry.id}`)
.consultancy-question-item.position-relative
.row.mt-4.mb-2
.col.d-flex.justify-content-start
//- 9. 11. 2021 --> questionDateDMYformat
span.question-asked-time.text-p875rem= `Vprašanje poslano: ${entry.formattedTimeCreated}`
.row.mb-2
.col
h5-pb-0.navigation-text-color
b= entry.title
.row
//- span.consultancy-description-text
span.text-p875rem!= `<b>Opis terminološkega problema:</b> ${entry.question}`
//- span.consultancy-description-text
span.text-p875rem!= `<b>Odgovor:</b> ${entry.answerSummary}`
.hovered.position-absolute
@@ -0,0 +1,38 @@
mixin table(lstt= [{name: "Terminološki slovar fizike in astronomije", area: "Bibliotekarstvo in informacijska znanost"}, {name: "Terminološki slovar fizike in astronomije", area: "Bibliotekarstvo in informacijska znanost"}, {name: "Terminološki slovar fizike in astronomije", area: "Bibliotekarstvo in informacijska znanost"}, {name: "Terminološki slovar fizike in astronomije", area: "Bibliotekarstvo in informacijska znanost"}], isHeadline=false)
#dictlist.w-100.table-dict-list
if (isHeadline)
.th.row.pb-2.g-0
.col-11
.row.g-0
.col-8.d-flex.justify-content-start.ps-4
button#sortByDictName.no-bg.no-border.text-decoration-none.navigation-text-color
span Ime
img#dictNameImg.invisible(src="images/arrow_drop_down.svg")
.col-4.d-flex.justify-content-start
button#sortByDomainName.no-bg.no-border.text-decoration-none.navigation-text-color
span Področje
img#domainNameImg.invisible(src="images/arrow_drop_down.svg")
.col-1.row.d-flex.justify-content-end.g-0
//- .col-4.d-flex.justify-content-center Vir
//- .col-4.d-flex.justify-content-center Opis
.col.d-flex.justify-content-center
.no-bg.no-border.text-decoration-none.navigation-text-color.fw-400 Iskanje
each val in lstt
.row.table-dict-content.py-2.g-0(id=val.id)
.col-11.row.g-0
.col-sm-8.d-flex.justify-content-start.text-p875rem.ps-4.fw-500
a.d-flex.flex-row.text-decoration-none(
href=`/slovarji/${val.id}/o-slovarju?sentFromEntryId=dictsList`
)
img.mt-1.d-flex.i16x16(src="/images/book.svg" alt="")
span.px-3.d-flex.flex-grow-1= val.dictionarysl
.col-sm-4.pe-3.d-flex.justify-content-start.text-p875rem.dpr= val.domain_primary
.col-1.row.d-flex.justify-content-end.g-0
//- .col-4.d-flex.justify-content-center.align-items-center
span= val.portalcode
//- .col-4.d-flex.justify-content-center.align-items-center
a(href=`/slovarji/${val.id}/o-slovarju?sentFromEntryId=dictsList`)
img.i16x16(src="/images/book.svg" alt="")
.col.d-flex.justify-content-center.align-items-top
a(href=`/iskanje?q=*&d=${val.id}`)
img.i16x16(src="/images/search.svg" alt="")
@@ -0,0 +1,231 @@
-
const registration_login_label = "registracija"
const registration_suggestion_label = "Še niste registriran uporabnik, registrirajte se."
#staticBackdrop.modal.fade(
data-bs-backdrop="true"
data-bs-keyboard="true"
tabindex="-1"
aria-labelledby="staticBackdropLabel"
aria-hidden="true"
)
.modal-dialog.modal-dialog-centered.modal-fullscreen-sm-down.modal-lg
.modal-content.ps-4.pe-4
.modal-header.mt-3
h2.logintitle.modal-title.color-primary-text.fs-2 Prijava
h2.regtitle.d-none.modal-title.color-primary-text.fs-2 Registracija
button.no-bg-and-borders(
type="button"
data-bs-dismiss="modal"
aria-label="Close"
)
img(src="/images/x.svg" alt="Zapri")
#logreg-mb.modal-body.pt-0.pe-5
p.logindesc.text-header-description-gray S prijavo pridobite možnost uporabe vseh funkcij terminološkega portala.
p.regdesc.d-none.text-header-description-gray Z registracijo pridobite možnost uporabe vseh funkcij terminološkega portala.
.pspelogsig-5
form#login-form(
action="/api/v1/users/login"
method="post"
autocomplete="off"
)
.row
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/user.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="login-username-or-email") UPORABNIK
input#login-username-or-email.d-block.w-100.input-lr(
name="usernameOrEmail"
)
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-login-icon.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/lock.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="login-password") GESLO
input#login-password.d-block.w-100.input-lr(
name="password"
type="password"
)
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-login-icon.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row.pt-0
.col-2.d-flex.ps-4.align-items-center.pe-4
span
.col-10.ps-0
.row.pt-0
.col-7.pt-2
//- sm-8 was chosen because of the middle display collision issue
input#login-remember.align-middle(
name="rememberMe"
type="checkbox"
)
label.ps-2.align-middle.rememberloginlabel.text-header-description-gray.pe-2(
for="login-remember-me"
) Zapomni si prijavo
.col-5.pt-2.d-flex-and-align-end.pe-0
a.ms-auto.forgotten-password.gray1-text.no-text-decoration.align-middle(
href="#"
) Pozabljeno geslo
.row.pt-0
.col
p#error-description.error-text.pt-3.mb-1 Nepravilno uporabniško ime, elektronski naslov ali geslo.
.row.pt-3
.col
button.btn.btn-primary.h41.w151 PRIJAVA
.row.pt-3
.col
p#login-message-container
form#register-form.d-none(
action="/api/v1/users/register"
method="post"
autocomplete="off"
)
.row
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/user.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="register-username") UPORABNIK
input#register-username.w-100.input-lr(name="username")
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-username.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row.pt-1
.col.pe-0
p#error-username.mb-0.error-text.text-end Uporabniško ime že obstaja
.row.pt-0
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/user.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="register-name") IME
input#register-name.w-100.input-lr(name="firstName")
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-name.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row.pt-1
.col.pe-0
p#error-name.mb-0.error-text.text-end Prazno obvezno polje
.row.pt-1
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/user.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="register-surname") PRIIMEK
input#register-surname.w-100.input-lr(name="lastName")
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-surname.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row.pt-1
.col.pe-0
p#error-surname.mb-0.error-text.text-end Prazno obvezno polje
.row.pt-1
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/user.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="register-email") ELEKTRONSKI NASLOV
input#register-email.w-100.input-lr(name="email")
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-email.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row.pt-1
.col.pe-0
p#error-email.mb-0.error-text.text-end Elektronski naslov že obstaja
.row.pt-1
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/lock.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="register-password") GESLO
input#register-password.w-100.input-lr(
name="password"
type="password"
)
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-password.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row.pt-1
.col.pe-0
p#error-password.mb-0.error-text.text-end Geslo je prekratko
.row.pt-1
.col-2.d-flex.align-items-center.justify-content-center.pe-4
img(src="/images/lock.svg" alt="")
.col-8.input-floor.ps-0
label.loginregisterlabel(for="register-password-repeat") PONOVI GESLO
input#register-password-repeat.w-100.input-lr(
name="passwordRepeat"
type="password"
)
.col-2.input-floor.d-flex.justify-content-end.pe-0
img.error-icon.error-password-repeat.align-self-end.d-flex(
src="/images/x_red.svg"
alt="X"
)
.row.pt-1
.col.pe-0
p#error-password-repeat.mb-0.repeat.error-text.text-end Geslo se ne ujema
.row.mt-1.pt-0
.col-2.d-flex.align-items-center.justify-content-center.pe-4
.col-8.ps-0
.mb-2
input#terms-of-use.me-3(type="checkbox")
span Strinjam se s <a href="/pogoji-uporabe">pogoji uporabe</a>
.mb-2
input#privacy-policy.me-3(type="checkbox")
span Soglašam s <a href="/politika-zasebnosti">politiko zasebnosti</a>
.col-2.d-flex.justify-content-end.pe-0
.row
.col-2.d-flex.ps-4.align-items-center.pe-4
.col-10.ps-0
button.btn.btn-primary.h41.w151 Registracija
.row
.col-sm-2.d-flex.ps-4.align-items-center
.col-sm-10
p#register-message-container.error-text
#logreg-mf.modal-footer.pb-5
.row
.col-sm-2
.col-sm-10.ps-0.no-flex
#regbtn.registration.register-login-form
button(
style="border: none; background: none; text-decoration: none"
)
span.form-icon-data-seperator
span.form-icon
//-<i class="bi-person-plus"></i>
img(src="/images/icon-user-x.svg" alt="")
span.form-data
h6 Registracija
p Še niste registriran uporabnik, registrirajte se.
#loginbtn.registration.register-login-form.login.d-none
button(
style="border: none; background: none; text-decoration: none"
)
span.form-icon-data-seperator
span.form-icon
//-<i class="bi-person-plus"></i>
img(src="/images/icon-user-x.svg" alt="")
span.form-data
h6 Prijava
p Nazaj na prijavo
script(nonce=cspNonce src="/javascripts/login-and-register.js")
@@ -0,0 +1,13 @@
#offset-padding.header-section-root
.d-flex.justify-content-between.flex-wrap.flex-md-nowrap
.header-container-left-side.d-flex
#chevrons-left.d-flex.align-items-start.justify-content-start
.header-section-root
.header-container-divider-left.pe-5
h2 Naslov
h1 Podnaslov
span.d-block.pe-5
| Splošen opis področja. Anim duis u llamco Lorem reprehenderit.
| Reprehenderit aliqua quis ut velit eu irure non ad sunt sunt
| ipsum sunt esse.
block right-section
@@ -0,0 +1,6 @@
extends ../generic-main-panel-header
block right-section
.header-container-divider-right
button.optional-floating-action-button
| Besedilo gre tukaj
@@ -0,0 +1,8 @@
extends ../generic-main-panel-header
block right-section
.header-container-divider-right
button.optional-floating-action-button
| Besedilo gre tukaj
button.optional-floating-action-button
| Besedilo gre tukaj
@@ -0,0 +1,81 @@
mixin main-navigation-right(languageToolbarPresent=false, menuTextPresent=false, userTextPresent=false)
li.nav-item
.container
//-<span class="nav">
//- if languageToolbarPresent
a.col-sm.nav-entry.language-desktop-entry(href="#")
img(src="/images/globe.svg" alt="")
span#langtoggle.text-white SL
.col-sm.nav-entry.menu-link
button#dropdownMenuButton1(
type="button"
data-bs-toggle="dropdown"
aria-expanded="false"
)
img.threedots(src="/images/threedots.svg" alt="")
if menuTextPresent
span.text-white.menutxt MENI
ul.dropdown-menu(aria-labelledby="dropdownMenuButton1")
li
a.dropdown-item(href="/") Iskanje
if extractionEnabled
li
a.dropdown-item(href="/luscenje") Luščenje
if dictionariesEnabled
li
a.dropdown-item(href="/slovarji/moji") Urejanje
if consultancyEnabled
li
a.dropdown-item(href="/svetovanje") Svetovanje
if user && (user.hasRole('portal admin') || user.hasRole('dictionaries admin'))
li
a.dropdown-item(href="/admin") Administracija
li
a.dropdown-item(href="/pomoc") Pomoč
if user
button#dropdownAccountButton.col-sm.nav-entry.no-border.no-bg.pe-3(
type="button"
data-bs-toggle="dropdown"
aria-expanded="false"
)
img(src="/images/profile-loggedin.svg" alt="")
// .position-absolute
// .green-dot
if userTextPresent
span.text-white.signintxt.position-relative.left-2 RAČUN
ul.dropdown-menu.dropdown-menu-end.py-3.children-pspe-4.children-pt-pb-1.ul-children-hover(
aria-labelledby="dropdownAccountButton"
)
li.pt-0.mt-0.noHoverBGEffect.ps-3
.ps-0.pb-2.navigation-text-color= user.userName
.text-header-description-gray.index-font-size= user.email
li.noHoverBGEffect.pt-0.pb-0.ps-3
hr.mt-2.mb-2
li.ps-3
a.dropdown-item.ps-0.pb-2.navigation-text-color(
href="/nastavitve-racuna"
)
.row
.col-3
img(src="/images/cog.svg" alt="")
.col-9
span.text-header-description-gray.d-block Nastavitve
li.pb-0.mb-0.ps-3
form(action="/users/logout" method="post")
button.profile-menu-button
.row
.col-3
img(src="/images/log-out.svg" alt="")
.col-9
span.text-header-description-gray.d-block Odjava
else
button#login-static-backdrop-button.col-sm.nav-entry.no-border.no-bg(
href="#"
type="button"
data-bs-toggle="modal"
data-bs-target="#staticBackdrop"
)
img(src="/images/profile.svg" alt="")
if userTextPresent
span.text-white.signintxt.ps-2 PRIJAVA
@@ -0,0 +1,43 @@
mixin consultancySM(adminFields=false)
.d-none-weak.advanced-search-root.w-100
.advanced-search-filter-section
span#area
.d-flex.w-100
span.tags-root.me-0.rounded-0
label.d-flex.flex-grow-1.align-items-end
//- input#area-input.box-sizing-content.bg-transparent
//- select#domain-select.select-search-field(multiple="multiple")
//- option(value="SSKJ") Filozofija
//- option(value="SSKJ2") Matematika
select#domain-select.select-domain-field.d-inline.height-46p.form-control(
name="domainPrimary"
multiple="multiple"
)
//- option.d-none(value="-1")= ' '
each domain in allPrimaryDomains
option(value=domain.id) #{ domain.nameSl }
span.advanced-input-label
//- span.advanced-input-label Področje
//- img#area-img(src="/images/chevron-down-darker.svg" alt="")
span#area-suggestions.suggs
if adminFields
span#consultant
.d-flex.w-100
span.tags-root.me-0.rounded-0
label.d-flex.flex-grow-1.align-items-end
//- input#area-input.box-sizing-content.bg-transparent
select#consultancy-select.select-search-field(
multiple="multiple"
)
option(value="Joze") Jože
option(value="Franc") Franc
span.advanced-input-label Svetovalec
img#consultancy-img(src="/images/chevron-down-darker.svg" alt="")
span#consultancy-suggestions.suggs
.advanced-search-final-options
//- button Počisti filtre
span
button#clear-in-filter-modal.btn.clear-f Počisti filtre
button#search-in-filter-modal.btn.search-btn-a Najdi
@@ -0,0 +1,104 @@
.d-none-weak.advanced-search-root.w-100
//- p Poišči izraze, ki so v:
//- .advanced-search-options
div
span
input#headword-checkbox.h-100(type="checkbox")
label.align-items-center(for="headword-checkbox") Iztočnici
div
span
input#translation-checkbox.h-100(type="checkbox")
label.align-items-center(for="translation-checkbox") Prevodu
div
span
input#othr-checkbox.h-100(type="checkbox")
label.align-items-center(for="othr-checkbox") Drugo
//- https://stackoverflow.com/questions/24347340/styling-of-select2-dropdown-select-boxes
.advanced-search-filter-section
span.advanced-search-filter-division
span#src-lang
.d-flex.w-100
span.tags-root.me-0.rounded-0
label.d-flex.flex-grow-1.align-items-end
//- input#src-lang-input.box-sizing-content.bg-transparent
select#src-lang-select.select-src-lang-field(multiple="multiple")
each language in sourceLanguages
option(value=language.id) #{ language.nameSl }
span.advanced-input-label
//- span.advanced-input-label Izvorni jezik
//- img#src-lang-img(src="/images/chevron-down-darker.svg" alt="")
span#src-lang-suggestions.suggs
span#dest-lang
.d-flex.w-100
span.tags-root.me-0.rounded-0
label.d-flex.flex-grow-1.align-items-end
//- input#dest-lang-input.box-sizing-content.bg-transparent
select#dest-lang-select.select-dest-lang-field(multiple="multiple")
each language in targetLanguages
option(value=language.id) #{ language.nameSl }
span.advanced-input-label
//- span.advanced-input-label Ciljni jezik
//- img#dest-lang-img(src="/images/chevron-down-darker.svg" alt="")
span#dest-lang-suggestions.suggs
//- span#src-lang
//- span.sf-label.position-relative
//- span.position-absolute Izvorni jezik
//- .resizable
//- input(placeholder="" type="text")
//- img(src="/images/chevron-down-darker.svg" alt="")
//- span#dest-lang
//- span.sf-label.position-relative
//- span.position-absolute Ciljni jezik
//- .resizable
//- input(placeholder="" type="text")
//- img(src="/images/chevron-down-darker.svg" alt="")
span#area
.d-flex.w-100
span.tags-root.me-0.rounded-0
label.d-flex.flex-grow-1.align-items-end
//- input#area-input.box-sizing-content.bg-transparent
select#domain-select.select-domain-field(
name="domainPrimary"
multiple="multiple"
)
each domain in allPrimaryDomains
option(value=domain.id) #{ domain.nameSl }
span.advanced-input-label
//- span.advanced-input-label Področje
//- img#area-img(src="/images/chevron-down-darker.svg" alt="")
span#area-suggestions.suggs
span#dict
.d-flex.w-100
span.tags-root.me-0.rounded-0
label.d-flex.flex-grow-1.align-items-end
//- input#dict-input.box-sizing-content.bg-transparent
select#dict-select.select-dict-field(
name=dictionary
multiple="multiple"
)
each dictionary in allDictionaryNames
option(value=dictionary.id) #{ dictionary.nameSl }
span.advanced-input-label
//- span.advanced-input-label Slovar
//- img#dict-img(src="/images/chevron-down-darker.svg" alt="")
span#dict-suggestions.suggs
span#source
.d-flex.w-100
span.tags-root.me-0.rounded-0
label.d-flex.flex-grow-1.align-items-end
//- input#source-input.box-sizing-content.bg-transparent
select#src-select.select-source-field(multiple="multiple")
each portal in portals
option(value=portal.code) #{ portal.name }
span.advanced-input-label
//- span.advanced-input-label Vir
//- img#source-img(src="/images/chevron-down-darker.svg" alt="")
span#source-suggestions.suggs
.advanced-search-final-options
//- button Počisti filtre
span
button#clear-in-filter-modal.btn.clear-f Počisti filtre
button#search-in-filter-modal.btn.search-btn-a Najdi
@@ -0,0 +1,6 @@
.classic-search-container
.classic-search.border1px-gray-2
input.input-search(type="text" placeholder="Išči")
.position-relative
button#inline-search-btn.border-0.bg-transparent
img(src="/images/search.svg" alt="")
@@ -0,0 +1,86 @@
mixin result-item(headword, entry, isLast=false)
-
const foreignEntries = entry.foreignEntries ? entry.foreignEntries : []
const synonyms = entry.synonyms?entry.synonyms:[]
const domain = entry.primaryDomain&&entry.primaryDomain.nameSl?entry.primaryDomain.nameSl:""
const slovenianDefinitionExists = !!entry.definition
let foreignDefinitionExists = !!entry.foreignEntries && entry.foreignEntries.length > 0
let checkAllForeignDefinitions = false
if(foreignDefinitionExists){
entry.foreignEntries.forEach(e => {
checkAllForeignDefinitions = checkAllForeignDefinitions || !!e.definition
})
}
a.rl.py-3(href=`/termin/${entry.id}`)
.anchor(id='e-' + entry.id)
.result-item.d-flex.flex-row.w-100
.row.w-100.result-items-row
.col-lg-4
.row.w-100.ls
.col-10.word-constraint-container
.results-item-headword.d-flex.flex-grow-1.word-constraint.d-flex.flex-direction-column.w-100.flex-nowrap
span.rihw.word-breakable.ps-2.long-text-wrap-r!= headword
.results-item-headword.d-flex.flex-grow-1.word-constraint.d-flex.flex-direction-column.w-100.flex-nowrap
- let btr = 0
ul.px-0.w-100.my-0.w-100
each synonym in synonyms
if (synonym)
li.ps-2.pt-0.mt-1.hspcf.list-item
span.word-breakable.risy.long-text-wrap-r!= synonym
- btr++
.col-2.flex-column.row.rsc
.results-comments.d-inline.me-4.align-top
if slovenianDefinitionExists
img.bgmsg.mb-1(src="/images/message-square-black.svg")
else if checkAllForeignDefinitions
img.bgmsg.mb-1(src="/images/message-square.svg")
.col-lg-4.d-flex.px-0
//- .results-foreign-languages.d-inline-block.align-top
ul.mt-1.px-0
each fe in foreignEntries
//- fe.nbspCount 0 is included because it means there is at least one term or synonym otherwise the value is -1
if (fe.nbspCount >= 0)
li.results-item-language.pe-0
p.ex-span.pb-0.mb-0.lh-18px.lang-h= fe.lang.code
- let n = 0
while n < fe.nbspCount
li
p.ex-span.pb-0.mb-0.lh-18px.d-block.rsl-ph &nbsp&nbsp
- n++
.results-foreign-terms.align-top
ul.mt-0.ps-2.mb-0.ms-2
each fe in foreignEntries
li.word-constraint-container.d-flex.flex-direction-column.w-100.flex-nowrap
.language-icon-seperator.d-flex
.h-100.results-item-language.align-items-top.d-flex
p.d-flex.text-uppercase.ex-span.mb-0.lang-h= fe.lang.code
ul.word-constraint.terms-and-synonyms.d-flex.flex-grow-1.flex-column.ps-3.w-90
each line in fe.terms
if !!line
li.results-foreign-term.align-items-top.d-flex
p.word-breakable.pb-0.mb-0.lh-18px.term-h.fw-500.long-text-wrap-r!= `<b class="long-text-wrap-r fw-500"> ${line} </b>`
each synonym in fe.synonyms
if !!synonym
li.results-foreign-term.align-items-top.d-flex
p.word-breakable.text-truncate.pb-0.mb-0.lh-18px.syn-h.long-text-wrap-r!= synonym
.col-lg-4
.row
.col
.results-keywords.d-flex.flex-grow-1.ms-2
span.res-domain= domain
.col
.results-sources.d-flex.flex-shrink-1.justify-content-end.align-items-center
.results-dict.d-flex.justify-content-end.align-items-center.me-2.px-2(
data-bs-toggle="tooltip"
title=`${entry.dictionary.nameSl}`
) #{ entry.dictionary.nameSlShort }
.results-portal.d-flex.justify-content-end.align-items-center.te(
data-bs-toggle="tooltip"
title=`${entry.source.name}`
) #{ entry.source.code }
if (!isLast)
hr.my-0.short-hr-gray-3
@@ -0,0 +1,16 @@
mixin decision(sel)
.d-flex.w-100
span.d-flex.justify-content-start
.results-heading.flex.flex-column
a#headword.m-auto.d-inline-block.text-header-title-gray(
href="#"
class=sel == 0 ? 'selected' : ''
) TERMIN
a#translation.m-auto.ps-3.d-inline-block.text-header-title-gray(
href="#"
class=sel == 1 ? 'selected' : ''
) TUJI TERMIN
a#other.m-auto.ps-3.d-inline-block.text-header-title-gray(
href="#"
class=sel == 2 ? 'selected' : ''
) DRUGO
@@ -0,0 +1,34 @@
mixin result-section(list, title)
if (list.length > 0)
if (title)
p.mt-4.results-secton-title!= title
.result-item-container
each entry in list
+result-item(entry.term, entry, list[list.length-1] === entry)
mixin result-sections
+result-section(entriesByCategory.uncategorized, "")
+result-section(entriesByCategory.byTerm, "ISKANI NIZ JE BIL NAJDEN <b class='results-secton-title fw-700'>V IZTOČNICAH</b> SLOVARSKIH SESTAVKOV")
+result-section(entriesByCategory.byForeignTerm, "ISKANI NIZ JE BIL NAJDEN <b class='results-secton-title fw-700'>V TUJEJEZIČNIH USTREZNIKIH</b> SLOVARSKIH SESTAVKOV")
+result-section(entriesByCategory.byOther, "ISKANI NIZ JE BIL NAJDEN <b class='results-secton-title fw-700'>V DRUGI VSEBINI</b> SLOVARSKIH SESTAVKOV")
mixin result-panel(rpList)
#res-panel.results-root.w-100.ms-0
#chevrons-left.d-flex
.header-container-divider-left
h1#site-heading Seznam zadetkov
hr#disposable-break.mt-0
//- include ./result-panel-decision-mixin
//- +decision(0)
.results-quickstats.row.align-items-center
.row.pe-0.align-items-center
.col-md-6
span.text-header-title-gray Rezultati: #{ numberOfAllHits }
.col-md-6.mx-auto.text-center.d-flex.justify-content-end.pe-0
include /utilities/pager
+pager(page)
#results-data.results-data.mt-4
include ./result-item
+result-sections
@@ -0,0 +1,38 @@
section.filter-modal-root
#modal-filter.modal.fade(
tabindex="-1"
aria-labelledby="modal-filter-label"
aria-hidden="true"
)
.modal-dialog.modal-dialog-centered.modal-lg
.modal-content
.modal-header.flex-wrap.pb-2
h5#modal-filter-label.modal-title.maincolor-text
| #{ "PLACEHOLDER" }
button.btn-close(
type="button"
data-bs-dismiss="modal"
aria-label="Close"
)
.flex.w-100.search-modal-header-root
span.search-modal-filter
input(type="text")
span
img(src="/images/search_blue.svg" alt="")
span.d-flex.flex-grow-1.align-content-center
a#ccf.clear-filter-modal-section(href="#")
img(src="/images/square-minus.svg" alt="")
span POČISTI FILTRE
.modal-body.pb-2
ul#modal-list.nav-modal-section-content.mb-0.pb-0
// Added dynamically...
.modal-footer.justify-content-start
div
button.btn.btn-light.border.border-dark.close(
type="button"
data-bs-dismiss="modal"
)
| Zapri
.justify-content-end
button#sf-modal-button.btn.btn-primary.use(type="button")
| Uporabi
@@ -0,0 +1,62 @@
mixin sideMenuEntry(id, selectMoreId , title, content, contentRoot, disabledSection)
.nav-section(disabled=disabledSection)
hr.long-hr-gray-3
.nav-section-header
span(class=disabledSection ? 'disabled-opacity' : '')= title
span.btn-area
button.btn.btn-primary(
id=selectMoreId
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-filter"
disabled=disabledSection
)
span.select-more-text IZBERI VEČ
div
img(src="/images/fi_copy.svg" alt="")
ul.nav-section-content(id=id)
//- root struct check in case of empty results
if contentRoot && !!content
- let isAtLeastOneChecked = content.filter(c => c.checked).length > 0
each item in content
li(id=item.id)
if item.checked
a
div
img(src="/images/square-checkbox-solid.svg" alt="")
span.nav-section-content-desc #{ item.name }
span #{ item.hits }
else
a.sel-anchr(href="#" class=isAtLeastOneChecked ? 'd-none' : '')
div
img(src="/images/chevron-right.svg" alt="")
span.nav-section-content-desc #{ item.name }
span #{ item.hits }
if isAtLeastOneChecked
a.showall(href="#" id='show-all-' + id)
img(src="/images/chevron-left-blue.svg" alt="")
span PRIKAŽI VSE
mixin sfSideNavigation(sideNavigationData)
.admin-nav
#admin-nav-mobile.admin-nav-mobile
.mobile-left-holder
button#nav-button.nav-button
img#burger-menu-img(
src="/images/burger-menu-button-icon.svg"
alt="Meni"
)
span#nav-title.nav-title Iskanje po slovarjih
#mobile-right-holder
nav
.admin-nav-content.slidable.sf-min-h.nav-bg.ps-2rem.sf-correct
.search-filter-nav-content.w24rem.me-0.ps-2rem
.slidable-list.scroller-style
a#clear-filters.clear-filter-section.d-flex(href="#")
img.align-self-center(src="/images/square-minus.svg" alt="")
span.fs-075rem.fw-400 POČISTI FILTRE
+sideMenuEntry("src-lang-side", "select-src-langs", "Izvorni jeziki", sideNavigationData.sourceLanguages, sideNavigationData, disabledSideMenuFilters.sourceLanguages)
+sideMenuEntry("dest-lang-side", "select-dest-langs", "Ciljni jeziki", sideNavigationData.targetLanguages, sideNavigationData, disabledSideMenuFilters.targetLanguages)
+sideMenuEntry("domain-side", "select-domains", "Področja", sideNavigationData.primaryDomains, sideNavigationData, disabledSideMenuFilters.primaryDomains)
+sideMenuEntry("dict-side", "select-dicts", "Slovarji", sideNavigationData.dictionaries, sideNavigationData, disabledSideMenuFilters.dictionaries)
+sideMenuEntry("source-side", "select-sources", "Viri", sideNavigationData.sources, sideNavigationData, disabledSideMenuFilters.sources)
@@ -0,0 +1,77 @@
.admin-nav
.admin-nav-mobile
button#nav-button.nav-button
img#burger-menu-img(src="/images/burger-menu-button-icon.svg" alt="Meni")
span.nav-title Filtri
nav
.admin-nav-content.slidable
.search-filter-nav-content
a.clear-filter-section(href="#")
img(src="/images/square-minus.svg" alt="")
span POČISTI FILTRE
.nav-section
hr
.nav-section-header
span Izvorni jeziki
span.btn-area
button.btn.btn-primary(
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-filter"
)
span.select-more-text IZBERI VEČ
div
img(src="/images/fi_copy.svg" alt="")
ul.nav-section-content
//-MODULE
li
a#sl(href="#")
div
img(src="/images/chevron-right.svg" alt="")
span.nav-section-content-desc Slovenščina
span 461
li
a#hr(href="#")
div
img(src="/images/chevron-right.svg" alt="")
span.nav-section-content-desc Hrvaščina
span 461
li
a#it(href="#")
div
img(src="/images/chevron-right.svg" alt="")
span.nav-section-content-desc Italijanščina
span 461
li
a(href="#")
div
img(src="/images/chevron-right.svg" alt="")
span.nav-section-content-desc Slovenščina
span 461
.nav-section
hr
.nav-section-header
span Slovarji
span.btn-area
button.btn.btn-primary(
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-filter"
)
span.select-more-text IZBERI VEČ
div
img(src="/images/fi_copy.svg" alt="")
ul.nav-section-content
//-MODULE
li
a(href="#")
div
img(src="/images/chevron-right.svg" alt="")
span.nav-section-content-desc Nemško-slovenski slovar tehnike in naravoslovja
span 111
li
a(href="#")
div
img(src="/images/chevron-right.svg" alt="")
span.nav-section-content-desc kfkl kwlkdwodčsl
span 25
@@ -0,0 +1,54 @@
mixin searchWithPrimaryDomainFilter(formId, searchId, searchBtnId, initialMarginClass="mt-3")
form.needs-validation.w-100(id=formId class=initialMarginClass)
- let checkrightSection = headerContent && headerContent.buttons && headerContent.buttons.length
.header-consultancy-divider.d-flex.d-column.w-100.row.g-0.ms-0
.header-consultancy-divider-left.d-flex.align-items-center.pe-0.mt-2(
class=checkrightSection ? 'col-sm-7' : 'col'
)
.row.w-100.g-0
//-Search Bar
.search-root-mobile-only.ps-0.pe-0
#searchbar-main.text-center
.search-bar.height-46p(tabindex="0")
button.searchbar-icon-container(id=searchBtnId type="submit")
img.search_icon(src="/images/search.svg" alt="OK")
input#search-query.search-input(
type="text"
placeholder=isDictionaryListPage ? 'Ime slovarja' : 'Vpišite iskalni niz'
)
button#keyboard.search-button-keyboard
span
img.keyboard(src="/images/keyboard.svg" alt="Keys")
button#advanced-search.dropdown-btn
img(src="/images/dropdown.svg" alt="Opt")
.row.w-100
span#SSC.d-block.w-100.position-relative
.search-suggestion-container.flex-column.position-absolute.calibrate-consultancy-sr
include advanced-search-modal-area-only
+consultancySM
include /utilities/keyboard
+keyboard
//- .header-consultancy-divider-middle.d-flex.align-items-center.justify-content-center.col-sm-4
//- select.d-inline.height-46p.form-control(
//- name="domainPrimary"
//- required
//- )
//- option(value="" disabled selected hidden) Področje
//- each domain in allPrimaryDomains
//- option(
//- value=domain.id
//- selected=domain.id === dictionary.domainPrimary ? true : false
//- ) [#{ domain.nameSl }]
if (checkrightSection)
.header-consultancy-divider-right.d-flex.align-items-center.justify-content-end.col-sm-5.pe-0.ps-3.mt-2
.fit-content
each el in headerContent.buttons
if el.type === 'button'
button.w-100.height-46p(
class=el.classAtr || 'btn btn-primary'
form=el.form
)= el.content
else if el.type === 'link'
a.w-100.height-46p(class=classAtr || 'btn btn-primary' href=el.url)= el.content
else if el.type === 'cancel'
a.w-100.height-46p(class=classAtr || 'btn btn-secondary' href=el.url)= el.content
@@ -0,0 +1,29 @@
mixin mini-searchbar
//-Search Bar
.gray-responsive-bg.d-flex.justify-content-center
.container.ms-3.me-3
.row
.search-root-main.mb-0.ps-0.pe-0
#searchbar-main.text-center
.search-bar.mb-md-3(tabindex="0")
button#search-button-main.searchbar-icon-container.click-on-enter(
href="/iskanje"
)
img.search_icon(src="/images/search.svg" alt="OK")
input#search-query.search-input.focused-for-enter.fw-300.placeholder-gray(
type="text"
placeholder="Vpišite iskalni niz"
)
button#keyboard.search-button-keyboard
span
img.keyboard(src="/images/keyboard.svg" alt="Keys")
//-</span>
button#advanced-search.dropdown-btn
img(src="/images/dropdown.svg" alt="Opt")
.row(class=isRoot ? 'margin-md-minus-1-rem' : '')
.d-flex.justify-content-center
#SSC.d-flex.position-relative.w-39rem
.search-suggestion-container.flex-column.position-absolute.calibrate-homepage-sr.bigsearch
include /components/search-and-filter/advanced-search-modal
include /utilities/keyboard
+keyboard