diff --git a/pkg/campsite/admin.go b/pkg/campsite/admin.go index 667cbde..a57e0ec 100644 --- a/pkg/campsite/admin.go +++ b/pkg/campsite/admin.go @@ -7,7 +7,9 @@ package campsite import ( "context" + "fmt" "net/http" + "time" "github.com/jackc/pgx/v4" @@ -17,6 +19,7 @@ import ( "dev.tandem.ws/tandem/camper/pkg/form" httplib "dev.tandem.ws/tandem/camper/pkg/http" "dev.tandem.ws/tandem/camper/pkg/locale" + "dev.tandem.ws/tandem/camper/pkg/season" "dev.tandem.ws/tandem/camper/pkg/template" ) @@ -92,9 +95,12 @@ func serveCampsiteIndex(w http.ResponseWriter, r *http.Request, user *auth.User, if err != nil { panic(err) } - page := &campsiteIndex{ - Campsites: campsites, + page := newCampsiteIndex(campsites) + if err := page.Parse(r); err != nil { + panic(err) } + fmt.Println(page.From, page.To) + page.Months = collectMonths(page.From.Date(), page.To.Date()) page.MustRender(w, r, user, company) } @@ -131,7 +137,92 @@ type campsiteEntry struct { } type campsiteIndex struct { + From *form.Month + To *form.Month Campsites []*campsiteEntry + Months []*Month +} + +func newCampsiteIndex(campsites []*campsiteEntry) *campsiteIndex { + now := time.Now() + from := time.Date(now.Year(), now.Month(), 1, 0, 0, 0, 0, time.UTC) + to := from.AddDate(0, 3, 0) + return &campsiteIndex{ + Campsites: campsites, + From: &form.Month{ + Name: "from", + Year: from.Year(), + Month: from.Month(), + }, + To: &form.Month{ + Name: "to", + Year: to.Year(), + Month: to.Month(), + }, + } +} + +func (page *campsiteIndex) Parse(r *http.Request) error { + if err := r.ParseForm(); err != nil { + return err + } + page.From.FillValue(r) + page.To.FillValue(r) + return nil +} + +type Month struct { + Year int + Month time.Month + Name string + Days []time.Time + Spans []*Span +} + +type Span struct { + Weekend bool + Count int +} + +func isWeekend(t time.Time) bool { + switch t.Weekday() { + case time.Saturday, time.Sunday: + return true + default: + return false + } +} + +func collectMonths(from time.Time, to time.Time) []*Month { + current := time.Date(from.Year(), from.Month(), 1, 0, 0, 0, 0, time.UTC) + numMonths := (to.Year()-from.Year())*12 + int(to.Month()) - int(from.Month()) + 1 + var months []*Month + for i := 0; i < numMonths; i++ { + span := &Span{ + Weekend: isWeekend(current), + } + month := &Month{ + Year: current.Year(), + Month: current.Month(), + Name: season.LongMonthNames[current.Month()-1], + Days: make([]time.Time, 0, 31), + Spans: make([]*Span, 0, 10), + } + month.Spans = append(month.Spans, span) + for current.Month() == month.Month { + month.Days = append(month.Days, current) + if span.Weekend != isWeekend(current) { + span = &Span{ + Weekend: !span.Weekend, + } + month.Spans = append(month.Spans, span) + } + span.Count = span.Count + 1 + current = current.AddDate(0, 0, 1) + } + months = append(months, month) + } + return months } func (page *campsiteIndex) MustRender(w http.ResponseWriter, r *http.Request, user *auth.User, company *auth.Company) { diff --git a/pkg/form/month.go b/pkg/form/month.go new file mode 100644 index 0000000..a0e5c69 --- /dev/null +++ b/pkg/form/month.go @@ -0,0 +1,32 @@ +package form + +import ( + "fmt" + "net/http" + "strconv" + "time" +) + +type Month struct { + Name string + Year int + Month time.Month + Error error +} + +func (input *Month) FillValue(r *http.Request) { + if year, err := strconv.Atoi(r.FormValue(input.Name + ".year")); err == nil { + input.Year = year + } else { + fmt.Println(err, r.FormValue(input.Name+".year")) + } + if month, err := strconv.Atoi(r.FormValue(input.Name + ".month")); err == nil && month > 0 && month < 13 { + input.Month = time.Month(month) + } else { + fmt.Println(err, r.FormValue(input.Name+".month")) + } +} + +func (input *Month) Date() time.Time { + return time.Date(input.Year, input.Month, 1, 0, 0, 0, 0, time.UTC) +} diff --git a/pkg/season/admin.go b/pkg/season/admin.go index 9dc75cd..bb22f74 100644 --- a/pkg/season/admin.go +++ b/pkg/season/admin.go @@ -179,7 +179,7 @@ type seasonEntry struct { Active bool } -var longMonthNames = []string{ +var LongMonthNames = []string{ locale.PgettextNoop("January", "month"), locale.PgettextNoop("February", "month"), locale.PgettextNoop("March", "month"), @@ -231,7 +231,7 @@ func CollectSeasonCalendar(ctx context.Context, company *auth.Company, conn *dat month = &Month{ Year: day.Date.Year(), Month: dayMonth, - Name: longMonthNames[dayMonth-1], + Name: LongMonthNames[dayMonth-1], } week = Week{} weekday = int(time.Monday) diff --git a/po/ca.po b/po/ca.po index 4f8da41..8ef8bff 100644 --- a/po/ca.po +++ b/po/ca.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: camper\n" "Report-Msgid-Bugs-To: jordi@tandem.blog\n" -"POT-Creation-Date: 2024-03-24 21:59+0100\n" +"POT-Creation-Date: 2024-04-19 11:18+0200\n" "PO-Revision-Date: 2024-02-06 10:04+0100\n" "Last-Translator: jordi fita mas \n" "Language-Team: Catalan \n" @@ -134,7 +134,6 @@ msgstr "Targeta ACSI?" #: web/templates/mail/payment/details.gotxt:18 #: web/templates/admin/payment/details.gohtml:83 -#: web/templates/admin/campsite/index.gohtml:41 #: web/templates/admin/campsite/type/index.gohtml:53 #: web/templates/admin/season/index.gohtml:44 #: web/templates/admin/user/login-attempts.gohtml:31 @@ -144,7 +143,6 @@ msgstr "Sí" #: web/templates/mail/payment/details.gotxt:18 #: web/templates/admin/payment/details.gohtml:83 -#: web/templates/admin/campsite/index.gohtml:41 #: web/templates/admin/campsite/type/index.gohtml:53 #: web/templates/admin/season/index.gohtml:44 #: web/templates/admin/user/login-attempts.gohtml:31 @@ -489,6 +487,88 @@ msgstr "A menys d’una hora de Girona, a una de La Bis msgid "Discover" msgstr "Descobreix" +#: web/templates/public/form.gohtml:28 web/templates/admin/form.gohtml:28 +msgctxt "input" +msgid "Month" +msgstr "Mes" + +#: web/templates/public/form.gohtml:30 web/templates/admin/form.gohtml:30 +#: pkg/season/admin.go:183 +msgctxt "month" +msgid "January" +msgstr "gener" + +#: web/templates/public/form.gohtml:31 web/templates/admin/form.gohtml:31 +#: pkg/season/admin.go:184 +msgctxt "month" +msgid "February" +msgstr "febrer" + +#: web/templates/public/form.gohtml:32 web/templates/admin/form.gohtml:32 +#: pkg/season/admin.go:185 +msgctxt "month" +msgid "March" +msgstr "març" + +#: web/templates/public/form.gohtml:33 web/templates/admin/form.gohtml:33 +#: pkg/season/admin.go:186 +msgctxt "month" +msgid "April" +msgstr "abril" + +#: web/templates/public/form.gohtml:34 web/templates/admin/form.gohtml:34 +#: pkg/season/admin.go:187 +msgctxt "month" +msgid "May" +msgstr "maig" + +#: web/templates/public/form.gohtml:35 web/templates/admin/form.gohtml:35 +#: pkg/season/admin.go:188 +msgctxt "month" +msgid "June" +msgstr "juny" + +#: web/templates/public/form.gohtml:36 web/templates/admin/form.gohtml:36 +#: pkg/season/admin.go:189 +msgctxt "month" +msgid "July" +msgstr "juliol" + +#: web/templates/public/form.gohtml:37 web/templates/admin/form.gohtml:37 +#: pkg/season/admin.go:190 +msgctxt "month" +msgid "August" +msgstr "agost" + +#: web/templates/public/form.gohtml:38 web/templates/admin/form.gohtml:38 +#: pkg/season/admin.go:191 +msgctxt "month" +msgid "September" +msgstr "setembre" + +#: web/templates/public/form.gohtml:39 web/templates/admin/form.gohtml:39 +#: pkg/season/admin.go:192 +msgctxt "month" +msgid "October" +msgstr "octubre" + +#: web/templates/public/form.gohtml:40 web/templates/admin/form.gohtml:40 +#: pkg/season/admin.go:193 +msgctxt "month" +msgid "November" +msgstr "novembre" + +#: web/templates/public/form.gohtml:41 web/templates/admin/form.gohtml:41 +#: pkg/season/admin.go:194 +msgctxt "month" +msgid "December" +msgstr "desembre" + +#: web/templates/public/form.gohtml:45 web/templates/admin/form.gohtml:45 +msgctxt "input" +msgid "Year" +msgstr "Any" + #: web/templates/public/campsite/type.gohtml:49 #: web/templates/public/booking/fields.gohtml:273 msgctxt "action" @@ -1059,7 +1139,7 @@ msgid "Slug" msgstr "Àlies" #: web/templates/admin/legal/form.gohtml:50 -#: web/templates/admin/campsite/feature/form.gohtml:50 +#: web/templates/admin/campsite/feature/form.gohtml:51 #: web/templates/admin/campsite/type/feature/form.gohtml:59 #: web/templates/admin/campsite/type/form.gohtml:51 #: web/templates/admin/campsite/type/option/form.gohtml:41 @@ -1080,9 +1160,9 @@ msgstr "Contingut" #: web/templates/admin/legal/form.gohtml:88 #: web/templates/admin/carousel/form.gohtml:55 -#: web/templates/admin/campsite/feature/form.gohtml:65 -#: web/templates/admin/campsite/carousel/form.gohtml:50 -#: web/templates/admin/campsite/form.gohtml:92 +#: web/templates/admin/campsite/feature/form.gohtml:66 +#: web/templates/admin/campsite/carousel/form.gohtml:51 +#: web/templates/admin/campsite/form.gohtml:96 #: web/templates/admin/campsite/type/feature/form.gohtml:74 #: web/templates/admin/campsite/type/carousel/form.gohtml:59 #: web/templates/admin/campsite/type/form.gohtml:287 @@ -1102,9 +1182,9 @@ msgstr "Actualitza" #: web/templates/admin/legal/form.gohtml:90 #: web/templates/admin/carousel/form.gohtml:57 -#: web/templates/admin/campsite/feature/form.gohtml:67 -#: web/templates/admin/campsite/carousel/form.gohtml:52 -#: web/templates/admin/campsite/form.gohtml:94 +#: web/templates/admin/campsite/feature/form.gohtml:68 +#: web/templates/admin/campsite/carousel/form.gohtml:53 +#: web/templates/admin/campsite/form.gohtml:98 #: web/templates/admin/campsite/type/feature/form.gohtml:76 #: web/templates/admin/campsite/type/carousel/form.gohtml:61 #: web/templates/admin/campsite/type/form.gohtml:289 @@ -1125,7 +1205,7 @@ msgid "Add Legal Text" msgstr "Afegeix text legal" #: web/templates/admin/legal/index.gohtml:20 -#: web/templates/admin/campsite/feature/index.gohtml:30 +#: web/templates/admin/campsite/feature/index.gohtml:31 #: web/templates/admin/campsite/type/feature/index.gohtml:31 #: web/templates/admin/campsite/type/option/index.gohtml:30 #: web/templates/admin/campsite/type/index.gohtml:29 @@ -1155,7 +1235,7 @@ msgid "New Carousel Slide" msgstr "Nova diapositiva del carrusel" #: web/templates/admin/carousel/form.gohtml:40 -#: web/templates/admin/campsite/carousel/form.gohtml:35 +#: web/templates/admin/campsite/carousel/form.gohtml:36 #: web/templates/admin/campsite/type/carousel/form.gohtml:44 #: web/templates/admin/amenity/carousel/form.gohtml:35 msgctxt "input" @@ -1193,12 +1273,21 @@ msgid "New Campsite Feature" msgstr "Nova característica de l’allotjament" #: web/templates/admin/campsite/feature/form.gohtml:17 +#: web/templates/admin/campsite/feature/index.gohtml:11 +#: web/templates/admin/campsite/carousel/form.gohtml:17 +#: web/templates/admin/campsite/carousel/index.gohtml:11 +#: web/templates/admin/campsite/form.gohtml:8 +msgctxt "title" +msgid "Edit Campsite" +msgstr "Edició de l’allotjament" + +#: web/templates/admin/campsite/feature/form.gohtml:18 #: web/templates/admin/campsite/feature/index.gohtml:6 msgctxt "title" msgid "Campsite Features" msgstr "Característiques de l’allotjament" -#: web/templates/admin/campsite/feature/form.gohtml:32 +#: web/templates/admin/campsite/feature/form.gohtml:33 #: web/templates/admin/campsite/type/feature/form.gohtml:41 #: web/templates/admin/services/form.gohtml:35 #: web/templates/admin/amenity/feature/form.gohtml:32 @@ -1206,15 +1295,15 @@ msgctxt "input" msgid "Icon" msgstr "Icona" -#: web/templates/admin/campsite/feature/index.gohtml:15 +#: web/templates/admin/campsite/feature/index.gohtml:16 #: web/templates/admin/campsite/type/feature/index.gohtml:16 #: web/templates/admin/amenity/feature/index.gohtml:15 msgctxt "action" msgid "Add Feature" msgstr "Afegeix característica" -#: web/templates/admin/campsite/feature/index.gohtml:31 -#: web/templates/admin/campsite/carousel/index.gohtml:31 +#: web/templates/admin/campsite/feature/index.gohtml:32 +#: web/templates/admin/campsite/carousel/index.gohtml:32 #: web/templates/admin/campsite/type/feature/index.gohtml:32 #: web/templates/admin/campsite/type/carousel/index.gohtml:32 #: web/templates/admin/campsite/type/option/index.gohtml:31 @@ -1231,14 +1320,14 @@ msgctxt "header" msgid "Actions" msgstr "Accions" -#: web/templates/admin/campsite/feature/index.gohtml:35 +#: web/templates/admin/campsite/feature/index.gohtml:36 #: web/templates/admin/campsite/type/feature/index.gohtml:36 #: web/templates/admin/amenity/feature/index.gohtml:35 msgid "Are you sure you wish to delete this feature?" msgstr "Esteu segur de voler esborrar aquesta característica?" -#: web/templates/admin/campsite/feature/index.gohtml:47 -#: web/templates/admin/campsite/carousel/index.gohtml:49 +#: web/templates/admin/campsite/feature/index.gohtml:48 +#: web/templates/admin/campsite/carousel/index.gohtml:50 #: web/templates/admin/campsite/type/feature/index.gohtml:48 #: web/templates/admin/campsite/type/carousel/index.gohtml:50 #: web/templates/admin/campsite/type/option/index.gohtml:47 @@ -1256,7 +1345,7 @@ msgctxt "action" msgid "Delete" msgstr "Esborra" -#: web/templates/admin/campsite/feature/index.gohtml:56 +#: web/templates/admin/campsite/feature/index.gohtml:57 msgid "No campsite features added yet." msgstr "No s’ha afegit cap característica a l’allotjament encara." @@ -1270,13 +1359,13 @@ msgctxt "title" msgid "New Campsite Carousel Slide" msgstr "Nova diapositiva del carrusel de l’allotjament" -#: web/templates/admin/campsite/carousel/form.gohtml:17 +#: web/templates/admin/campsite/carousel/form.gohtml:18 #: web/templates/admin/campsite/carousel/index.gohtml:6 msgctxt "title" msgid "Campsite Carousel" msgstr "Carrusel de l’allotjament" -#: web/templates/admin/campsite/carousel/index.gohtml:16 +#: web/templates/admin/campsite/carousel/index.gohtml:17 #: web/templates/admin/campsite/type/carousel/index.gohtml:17 #: web/templates/admin/services/index.gohtml:15 #: web/templates/admin/amenity/carousel/index.gohtml:16 @@ -1285,7 +1374,7 @@ msgctxt "action" msgid "Add slide" msgstr "Afegeix diapositiva" -#: web/templates/admin/campsite/carousel/index.gohtml:29 +#: web/templates/admin/campsite/carousel/index.gohtml:30 #: web/templates/admin/campsite/type/carousel/index.gohtml:30 #: web/templates/admin/services/index.gohtml:28 #: web/templates/admin/surroundings/index.gohtml:82 @@ -1296,7 +1385,7 @@ msgctxt "header" msgid "Image" msgstr "Imatge" -#: web/templates/admin/campsite/carousel/index.gohtml:30 +#: web/templates/admin/campsite/carousel/index.gohtml:31 #: web/templates/admin/campsite/type/carousel/index.gohtml:31 #: web/templates/admin/services/index.gohtml:29 #: web/templates/admin/amenity/carousel/index.gohtml:30 @@ -1306,7 +1395,7 @@ msgctxt "header" msgid "Caption" msgstr "Llegenda" -#: web/templates/admin/campsite/carousel/index.gohtml:35 +#: web/templates/admin/campsite/carousel/index.gohtml:36 #: web/templates/admin/campsite/type/carousel/index.gohtml:36 #: web/templates/admin/services/index.gohtml:34 #: web/templates/admin/amenity/carousel/index.gohtml:35 @@ -1314,7 +1403,7 @@ msgstr "Llegenda" msgid "Are you sure you wish to delete this slide?" msgstr "Esteu segur de voler esborrar aquesta diapositiva?" -#: web/templates/admin/campsite/carousel/index.gohtml:58 +#: web/templates/admin/campsite/carousel/index.gohtml:59 #: web/templates/admin/campsite/type/carousel/index.gohtml:59 #: web/templates/admin/services/index.gohtml:56 #: web/templates/admin/amenity/carousel/index.gohtml:58 @@ -1322,44 +1411,52 @@ msgstr "Esteu segur de voler esborrar aquesta diapositiva?" msgid "No slides added yet." msgstr "No s’ha afegit cap diapositiva encara." -#: web/templates/admin/campsite/form.gohtml:8 -msgctxt "title" -msgid "Edit Campsite" -msgstr "Edició de l’allotjament" - #: web/templates/admin/campsite/form.gohtml:10 msgctxt "title" msgid "New Campsite" msgstr "Nou allotjament" -#: web/templates/admin/campsite/form.gohtml:33 -#: web/templates/admin/campsite/index.gohtml:27 +#: web/templates/admin/campsite/form.gohtml:21 +#: web/templates/admin/campsite/type/index.gohtml:45 +#: web/templates/admin/amenity/index.gohtml:35 +msgctxt "action" +msgid "Edit Features" +msgstr "Edita les característiques" + +#: web/templates/admin/campsite/form.gohtml:22 +#: web/templates/admin/campsite/type/index.gohtml:51 +#: web/templates/admin/amenity/index.gohtml:38 +msgctxt "action" +msgid "Edit Carousel" +msgstr "Edita el carrusel" + +#: web/templates/admin/campsite/form.gohtml:37 msgctxt "campsite" msgid "Active" msgstr "Actiu" -#: web/templates/admin/campsite/form.gohtml:42 +#: web/templates/admin/campsite/form.gohtml:46 msgctxt "input" msgid "Campsite Type" msgstr "Tipus d’allotjament" -#: web/templates/admin/campsite/form.gohtml:47 +#: web/templates/admin/campsite/form.gohtml:51 msgid "Select campsite type" msgstr "Escolliu un tipus d’allotjament" -#: web/templates/admin/campsite/form.gohtml:56 +#: web/templates/admin/campsite/form.gohtml:60 #: web/templates/admin/amenity/form.gohtml:42 msgctxt "input" msgid "Label" msgstr "Etiqueta" -#: web/templates/admin/campsite/form.gohtml:64 +#: web/templates/admin/campsite/form.gohtml:68 #: web/templates/admin/amenity/form.gohtml:63 msgctxt "input" msgid "Info (First Column)" msgstr "Informació (primera columna)" -#: web/templates/admin/campsite/form.gohtml:77 +#: web/templates/admin/campsite/form.gohtml:81 #: web/templates/admin/amenity/form.gohtml:76 msgctxt "input" msgid "Info (Second Column)" @@ -1370,46 +1467,26 @@ msgctxt "action" msgid "Add Campsite" msgstr "Afegeix allotjament" -#: web/templates/admin/campsite/index.gohtml:23 +#: web/templates/admin/campsite/index.gohtml:21 +msgid "From Date" +msgstr "De la data" + +#: web/templates/admin/campsite/index.gohtml:28 +msgid "To Date" +msgstr "A la data" + +#: web/templates/admin/campsite/index.gohtml:35 +msgctxt "action" +msgid "Show" +msgstr "Mostra" + +#: web/templates/admin/campsite/index.gohtml:50 #: web/templates/admin/amenity/index.gohtml:20 msgctxt "header" msgid "Label" msgstr "Etiqueta" -#: web/templates/admin/campsite/index.gohtml:24 -msgctxt "header" -msgid "Type" -msgstr "Tipus" - -#: web/templates/admin/campsite/index.gohtml:25 -#: web/templates/admin/campsite/type/index.gohtml:30 -#: web/templates/admin/amenity/index.gohtml:22 -msgctxt "header" -msgid "Features" -msgstr "Característiques" - -#: web/templates/admin/campsite/index.gohtml:26 -#: web/templates/admin/campsite/type/index.gohtml:32 -#: web/templates/admin/amenity/index.gohtml:23 -msgctxt "header" -msgid "Carousel" -msgstr "Carrusel" - -#: web/templates/admin/campsite/index.gohtml:36 -#: web/templates/admin/campsite/type/index.gohtml:45 -#: web/templates/admin/amenity/index.gohtml:35 -msgctxt "action" -msgid "Edit Features" -msgstr "Edita les característiques" - -#: web/templates/admin/campsite/index.gohtml:39 -#: web/templates/admin/campsite/type/index.gohtml:51 -#: web/templates/admin/amenity/index.gohtml:38 -msgctxt "action" -msgid "Edit Carousel" -msgstr "Edita el carrusel" - -#: web/templates/admin/campsite/index.gohtml:47 +#: web/templates/admin/campsite/index.gohtml:78 msgid "No campsites added yet." msgstr "No s’ha afegit cap allotjament encara." @@ -1654,11 +1731,23 @@ msgctxt "action" msgid "Add Type" msgstr "Afegeix tipus" +#: web/templates/admin/campsite/type/index.gohtml:30 +#: web/templates/admin/amenity/index.gohtml:22 +msgctxt "header" +msgid "Features" +msgstr "Característiques" + #: web/templates/admin/campsite/type/index.gohtml:31 msgctxt "header" msgid "Options" msgstr "Opcions" +#: web/templates/admin/campsite/type/index.gohtml:32 +#: web/templates/admin/amenity/index.gohtml:23 +msgctxt "header" +msgid "Carousel" +msgstr "Carrusel" + #: web/templates/admin/campsite/type/index.gohtml:48 msgctxt "action" msgid "Edit Options" @@ -2548,75 +2637,15 @@ msgctxt "header" msgid "Children (aged 2 to 10)" msgstr "Mainada (entre 2 i 10 anys)" -#: pkg/campsite/admin.go:275 pkg/booking/public.go:172 +#: pkg/campsite/admin.go:366 pkg/booking/public.go:172 #: pkg/booking/public.go:227 msgid "Selected campsite type is not valid." msgstr "El tipus d’allotjament escollit no és vàlid." -#: pkg/campsite/admin.go:276 pkg/amenity/admin.go:282 +#: pkg/campsite/admin.go:367 pkg/amenity/admin.go:282 msgid "Label can not be empty." msgstr "No podeu deixar l’etiqueta en blanc." -#: pkg/season/admin.go:183 -msgctxt "month" -msgid "January" -msgstr "gener" - -#: pkg/season/admin.go:184 -msgctxt "month" -msgid "February" -msgstr "febrer" - -#: pkg/season/admin.go:185 -msgctxt "month" -msgid "March" -msgstr "març" - -#: pkg/season/admin.go:186 -msgctxt "month" -msgid "April" -msgstr "abril" - -#: pkg/season/admin.go:187 -msgctxt "month" -msgid "May" -msgstr "maig" - -#: pkg/season/admin.go:188 -msgctxt "month" -msgid "June" -msgstr "juny" - -#: pkg/season/admin.go:189 -msgctxt "month" -msgid "July" -msgstr "juliol" - -#: pkg/season/admin.go:190 -msgctxt "month" -msgid "August" -msgstr "agost" - -#: pkg/season/admin.go:191 -msgctxt "month" -msgid "September" -msgstr "setembre" - -#: pkg/season/admin.go:192 -msgctxt "month" -msgid "October" -msgstr "octubre" - -#: pkg/season/admin.go:193 -msgctxt "month" -msgid "November" -msgstr "novembre" - -#: pkg/season/admin.go:194 -msgctxt "month" -msgid "December" -msgstr "desembre" - #: pkg/season/admin.go:412 msgid "Color can not be empty." msgstr "No podeu deixar el color en blanc." @@ -2956,6 +2985,10 @@ msgstr "No podeu deixar la població en blanc." msgid "It is mandatory to agree to the reservation conditions." msgstr "És obligatori acceptar les condicions de reserves." +#~ msgctxt "header" +#~ msgid "Type" +#~ msgstr "Tipus" + #~ msgid "Postal code can not be empty." #~ msgstr "No podeu deixar el codi postal en blanc." diff --git a/po/es.po b/po/es.po index 52dd4dd..752d949 100644 --- a/po/es.po +++ b/po/es.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: camper\n" "Report-Msgid-Bugs-To: jordi@tandem.blog\n" -"POT-Creation-Date: 2024-03-24 21:59+0100\n" +"POT-Creation-Date: 2024-04-19 11:18+0200\n" "PO-Revision-Date: 2024-02-06 10:04+0100\n" "Last-Translator: jordi fita mas \n" "Language-Team: Spanish \n" @@ -134,7 +134,6 @@ msgstr "¿Tarjeta ACSI?" #: web/templates/mail/payment/details.gotxt:18 #: web/templates/admin/payment/details.gohtml:83 -#: web/templates/admin/campsite/index.gohtml:41 #: web/templates/admin/campsite/type/index.gohtml:53 #: web/templates/admin/season/index.gohtml:44 #: web/templates/admin/user/login-attempts.gohtml:31 @@ -144,7 +143,6 @@ msgstr "Sí" #: web/templates/mail/payment/details.gotxt:18 #: web/templates/admin/payment/details.gohtml:83 -#: web/templates/admin/campsite/index.gohtml:41 #: web/templates/admin/campsite/type/index.gohtml:53 #: web/templates/admin/season/index.gohtml:44 #: web/templates/admin/user/login-attempts.gohtml:31 @@ -489,6 +487,88 @@ msgstr "A menos de una hora de Girona, a una de La Bisb msgid "Discover" msgstr "Descubre" +#: web/templates/public/form.gohtml:28 web/templates/admin/form.gohtml:28 +msgctxt "input" +msgid "Month" +msgstr "Mes" + +#: web/templates/public/form.gohtml:30 web/templates/admin/form.gohtml:30 +#: pkg/season/admin.go:183 +msgctxt "month" +msgid "January" +msgstr "enero" + +#: web/templates/public/form.gohtml:31 web/templates/admin/form.gohtml:31 +#: pkg/season/admin.go:184 +msgctxt "month" +msgid "February" +msgstr "febrero" + +#: web/templates/public/form.gohtml:32 web/templates/admin/form.gohtml:32 +#: pkg/season/admin.go:185 +msgctxt "month" +msgid "March" +msgstr "marzo" + +#: web/templates/public/form.gohtml:33 web/templates/admin/form.gohtml:33 +#: pkg/season/admin.go:186 +msgctxt "month" +msgid "April" +msgstr "abril" + +#: web/templates/public/form.gohtml:34 web/templates/admin/form.gohtml:34 +#: pkg/season/admin.go:187 +msgctxt "month" +msgid "May" +msgstr "mayo" + +#: web/templates/public/form.gohtml:35 web/templates/admin/form.gohtml:35 +#: pkg/season/admin.go:188 +msgctxt "month" +msgid "June" +msgstr "junio" + +#: web/templates/public/form.gohtml:36 web/templates/admin/form.gohtml:36 +#: pkg/season/admin.go:189 +msgctxt "month" +msgid "July" +msgstr "julio" + +#: web/templates/public/form.gohtml:37 web/templates/admin/form.gohtml:37 +#: pkg/season/admin.go:190 +msgctxt "month" +msgid "August" +msgstr "agosto" + +#: web/templates/public/form.gohtml:38 web/templates/admin/form.gohtml:38 +#: pkg/season/admin.go:191 +msgctxt "month" +msgid "September" +msgstr "septiembre" + +#: web/templates/public/form.gohtml:39 web/templates/admin/form.gohtml:39 +#: pkg/season/admin.go:192 +msgctxt "month" +msgid "October" +msgstr "octubre" + +#: web/templates/public/form.gohtml:40 web/templates/admin/form.gohtml:40 +#: pkg/season/admin.go:193 +msgctxt "month" +msgid "November" +msgstr "noviembre" + +#: web/templates/public/form.gohtml:41 web/templates/admin/form.gohtml:41 +#: pkg/season/admin.go:194 +msgctxt "month" +msgid "December" +msgstr "diciembre" + +#: web/templates/public/form.gohtml:45 web/templates/admin/form.gohtml:45 +msgctxt "input" +msgid "Year" +msgstr "Año" + #: web/templates/public/campsite/type.gohtml:49 #: web/templates/public/booking/fields.gohtml:273 msgctxt "action" @@ -1059,7 +1139,7 @@ msgid "Slug" msgstr "Álias" #: web/templates/admin/legal/form.gohtml:50 -#: web/templates/admin/campsite/feature/form.gohtml:50 +#: web/templates/admin/campsite/feature/form.gohtml:51 #: web/templates/admin/campsite/type/feature/form.gohtml:59 #: web/templates/admin/campsite/type/form.gohtml:51 #: web/templates/admin/campsite/type/option/form.gohtml:41 @@ -1080,9 +1160,9 @@ msgstr "Contenido" #: web/templates/admin/legal/form.gohtml:88 #: web/templates/admin/carousel/form.gohtml:55 -#: web/templates/admin/campsite/feature/form.gohtml:65 -#: web/templates/admin/campsite/carousel/form.gohtml:50 -#: web/templates/admin/campsite/form.gohtml:92 +#: web/templates/admin/campsite/feature/form.gohtml:66 +#: web/templates/admin/campsite/carousel/form.gohtml:51 +#: web/templates/admin/campsite/form.gohtml:96 #: web/templates/admin/campsite/type/feature/form.gohtml:74 #: web/templates/admin/campsite/type/carousel/form.gohtml:59 #: web/templates/admin/campsite/type/form.gohtml:287 @@ -1102,9 +1182,9 @@ msgstr "Actualizar" #: web/templates/admin/legal/form.gohtml:90 #: web/templates/admin/carousel/form.gohtml:57 -#: web/templates/admin/campsite/feature/form.gohtml:67 -#: web/templates/admin/campsite/carousel/form.gohtml:52 -#: web/templates/admin/campsite/form.gohtml:94 +#: web/templates/admin/campsite/feature/form.gohtml:68 +#: web/templates/admin/campsite/carousel/form.gohtml:53 +#: web/templates/admin/campsite/form.gohtml:98 #: web/templates/admin/campsite/type/feature/form.gohtml:76 #: web/templates/admin/campsite/type/carousel/form.gohtml:61 #: web/templates/admin/campsite/type/form.gohtml:289 @@ -1125,7 +1205,7 @@ msgid "Add Legal Text" msgstr "Añadir texto legal" #: web/templates/admin/legal/index.gohtml:20 -#: web/templates/admin/campsite/feature/index.gohtml:30 +#: web/templates/admin/campsite/feature/index.gohtml:31 #: web/templates/admin/campsite/type/feature/index.gohtml:31 #: web/templates/admin/campsite/type/option/index.gohtml:30 #: web/templates/admin/campsite/type/index.gohtml:29 @@ -1155,7 +1235,7 @@ msgid "New Carousel Slide" msgstr "Nueva diapositiva del carrusel" #: web/templates/admin/carousel/form.gohtml:40 -#: web/templates/admin/campsite/carousel/form.gohtml:35 +#: web/templates/admin/campsite/carousel/form.gohtml:36 #: web/templates/admin/campsite/type/carousel/form.gohtml:44 #: web/templates/admin/amenity/carousel/form.gohtml:35 msgctxt "input" @@ -1193,12 +1273,21 @@ msgid "New Campsite Feature" msgstr "Nueva característica del alojamiento" #: web/templates/admin/campsite/feature/form.gohtml:17 +#: web/templates/admin/campsite/feature/index.gohtml:11 +#: web/templates/admin/campsite/carousel/form.gohtml:17 +#: web/templates/admin/campsite/carousel/index.gohtml:11 +#: web/templates/admin/campsite/form.gohtml:8 +msgctxt "title" +msgid "Edit Campsite" +msgstr "Edición del alojamientos" + +#: web/templates/admin/campsite/feature/form.gohtml:18 #: web/templates/admin/campsite/feature/index.gohtml:6 msgctxt "title" msgid "Campsite Features" msgstr "Características del alojamiento" -#: web/templates/admin/campsite/feature/form.gohtml:32 +#: web/templates/admin/campsite/feature/form.gohtml:33 #: web/templates/admin/campsite/type/feature/form.gohtml:41 #: web/templates/admin/services/form.gohtml:35 #: web/templates/admin/amenity/feature/form.gohtml:32 @@ -1206,15 +1295,15 @@ msgctxt "input" msgid "Icon" msgstr "Icono" -#: web/templates/admin/campsite/feature/index.gohtml:15 +#: web/templates/admin/campsite/feature/index.gohtml:16 #: web/templates/admin/campsite/type/feature/index.gohtml:16 #: web/templates/admin/amenity/feature/index.gohtml:15 msgctxt "action" msgid "Add Feature" msgstr "Añadir características" -#: web/templates/admin/campsite/feature/index.gohtml:31 -#: web/templates/admin/campsite/carousel/index.gohtml:31 +#: web/templates/admin/campsite/feature/index.gohtml:32 +#: web/templates/admin/campsite/carousel/index.gohtml:32 #: web/templates/admin/campsite/type/feature/index.gohtml:32 #: web/templates/admin/campsite/type/carousel/index.gohtml:32 #: web/templates/admin/campsite/type/option/index.gohtml:31 @@ -1231,14 +1320,14 @@ msgctxt "header" msgid "Actions" msgstr "Acciones" -#: web/templates/admin/campsite/feature/index.gohtml:35 +#: web/templates/admin/campsite/feature/index.gohtml:36 #: web/templates/admin/campsite/type/feature/index.gohtml:36 #: web/templates/admin/amenity/feature/index.gohtml:35 msgid "Are you sure you wish to delete this feature?" msgstr "¿Estáis seguro de querer borrar esta característica?" -#: web/templates/admin/campsite/feature/index.gohtml:47 -#: web/templates/admin/campsite/carousel/index.gohtml:49 +#: web/templates/admin/campsite/feature/index.gohtml:48 +#: web/templates/admin/campsite/carousel/index.gohtml:50 #: web/templates/admin/campsite/type/feature/index.gohtml:48 #: web/templates/admin/campsite/type/carousel/index.gohtml:50 #: web/templates/admin/campsite/type/option/index.gohtml:47 @@ -1256,7 +1345,7 @@ msgctxt "action" msgid "Delete" msgstr "Borrar" -#: web/templates/admin/campsite/feature/index.gohtml:56 +#: web/templates/admin/campsite/feature/index.gohtml:57 msgid "No campsite features added yet." msgstr "No se ha añadido ninguna característica al alojamiento todavía." @@ -1270,13 +1359,13 @@ msgctxt "title" msgid "New Campsite Carousel Slide" msgstr "Nueva diapositiva del carrusel del alojamiento" -#: web/templates/admin/campsite/carousel/form.gohtml:17 +#: web/templates/admin/campsite/carousel/form.gohtml:18 #: web/templates/admin/campsite/carousel/index.gohtml:6 msgctxt "title" msgid "Campsite Carousel" msgstr "Carrusel del alojamiento" -#: web/templates/admin/campsite/carousel/index.gohtml:16 +#: web/templates/admin/campsite/carousel/index.gohtml:17 #: web/templates/admin/campsite/type/carousel/index.gohtml:17 #: web/templates/admin/services/index.gohtml:15 #: web/templates/admin/amenity/carousel/index.gohtml:16 @@ -1285,7 +1374,7 @@ msgctxt "action" msgid "Add slide" msgstr "Añadir diapositiva" -#: web/templates/admin/campsite/carousel/index.gohtml:29 +#: web/templates/admin/campsite/carousel/index.gohtml:30 #: web/templates/admin/campsite/type/carousel/index.gohtml:30 #: web/templates/admin/services/index.gohtml:28 #: web/templates/admin/surroundings/index.gohtml:82 @@ -1296,7 +1385,7 @@ msgctxt "header" msgid "Image" msgstr "Imagen" -#: web/templates/admin/campsite/carousel/index.gohtml:30 +#: web/templates/admin/campsite/carousel/index.gohtml:31 #: web/templates/admin/campsite/type/carousel/index.gohtml:31 #: web/templates/admin/services/index.gohtml:29 #: web/templates/admin/amenity/carousel/index.gohtml:30 @@ -1306,7 +1395,7 @@ msgctxt "header" msgid "Caption" msgstr "Leyenda" -#: web/templates/admin/campsite/carousel/index.gohtml:35 +#: web/templates/admin/campsite/carousel/index.gohtml:36 #: web/templates/admin/campsite/type/carousel/index.gohtml:36 #: web/templates/admin/services/index.gohtml:34 #: web/templates/admin/amenity/carousel/index.gohtml:35 @@ -1314,7 +1403,7 @@ msgstr "Leyenda" msgid "Are you sure you wish to delete this slide?" msgstr "¿Estáis seguro de querer borrar esta diapositiva?" -#: web/templates/admin/campsite/carousel/index.gohtml:58 +#: web/templates/admin/campsite/carousel/index.gohtml:59 #: web/templates/admin/campsite/type/carousel/index.gohtml:59 #: web/templates/admin/services/index.gohtml:56 #: web/templates/admin/amenity/carousel/index.gohtml:58 @@ -1322,44 +1411,52 @@ msgstr "¿Estáis seguro de querer borrar esta diapositiva?" msgid "No slides added yet." msgstr "No se ha añadido ninguna diapositiva todavía." -#: web/templates/admin/campsite/form.gohtml:8 -msgctxt "title" -msgid "Edit Campsite" -msgstr "Edición del alojamientos" - #: web/templates/admin/campsite/form.gohtml:10 msgctxt "title" msgid "New Campsite" msgstr "Nuevo alojamiento" -#: web/templates/admin/campsite/form.gohtml:33 -#: web/templates/admin/campsite/index.gohtml:27 +#: web/templates/admin/campsite/form.gohtml:21 +#: web/templates/admin/campsite/type/index.gohtml:45 +#: web/templates/admin/amenity/index.gohtml:35 +msgctxt "action" +msgid "Edit Features" +msgstr "Editar las características" + +#: web/templates/admin/campsite/form.gohtml:22 +#: web/templates/admin/campsite/type/index.gohtml:51 +#: web/templates/admin/amenity/index.gohtml:38 +msgctxt "action" +msgid "Edit Carousel" +msgstr "Editar el carrusel" + +#: web/templates/admin/campsite/form.gohtml:37 msgctxt "campsite" msgid "Active" msgstr "Activo" -#: web/templates/admin/campsite/form.gohtml:42 +#: web/templates/admin/campsite/form.gohtml:46 msgctxt "input" msgid "Campsite Type" msgstr "Tipo de alojamiento" -#: web/templates/admin/campsite/form.gohtml:47 +#: web/templates/admin/campsite/form.gohtml:51 msgid "Select campsite type" msgstr "Escoged un tipo de alojamiento" -#: web/templates/admin/campsite/form.gohtml:56 +#: web/templates/admin/campsite/form.gohtml:60 #: web/templates/admin/amenity/form.gohtml:42 msgctxt "input" msgid "Label" msgstr "Etiqueta" -#: web/templates/admin/campsite/form.gohtml:64 +#: web/templates/admin/campsite/form.gohtml:68 #: web/templates/admin/amenity/form.gohtml:63 msgctxt "input" msgid "Info (First Column)" msgstr "Información (primera columna)" -#: web/templates/admin/campsite/form.gohtml:77 +#: web/templates/admin/campsite/form.gohtml:81 #: web/templates/admin/amenity/form.gohtml:76 msgctxt "input" msgid "Info (Second Column)" @@ -1370,46 +1467,26 @@ msgctxt "action" msgid "Add Campsite" msgstr "Añadir alojamiento" -#: web/templates/admin/campsite/index.gohtml:23 +#: web/templates/admin/campsite/index.gohtml:21 +msgid "From Date" +msgstr "De la fecha" + +#: web/templates/admin/campsite/index.gohtml:28 +msgid "To Date" +msgstr "A la fecha" + +#: web/templates/admin/campsite/index.gohtml:35 +msgctxt "action" +msgid "Show" +msgstr "Mostrar" + +#: web/templates/admin/campsite/index.gohtml:50 #: web/templates/admin/amenity/index.gohtml:20 msgctxt "header" msgid "Label" msgstr "Etiqueta" -#: web/templates/admin/campsite/index.gohtml:24 -msgctxt "header" -msgid "Type" -msgstr "Tipo" - -#: web/templates/admin/campsite/index.gohtml:25 -#: web/templates/admin/campsite/type/index.gohtml:30 -#: web/templates/admin/amenity/index.gohtml:22 -msgctxt "header" -msgid "Features" -msgstr "Características" - -#: web/templates/admin/campsite/index.gohtml:26 -#: web/templates/admin/campsite/type/index.gohtml:32 -#: web/templates/admin/amenity/index.gohtml:23 -msgctxt "header" -msgid "Carousel" -msgstr "Carrusel" - -#: web/templates/admin/campsite/index.gohtml:36 -#: web/templates/admin/campsite/type/index.gohtml:45 -#: web/templates/admin/amenity/index.gohtml:35 -msgctxt "action" -msgid "Edit Features" -msgstr "Editar las características" - -#: web/templates/admin/campsite/index.gohtml:39 -#: web/templates/admin/campsite/type/index.gohtml:51 -#: web/templates/admin/amenity/index.gohtml:38 -msgctxt "action" -msgid "Edit Carousel" -msgstr "Editar el carrusel" - -#: web/templates/admin/campsite/index.gohtml:47 +#: web/templates/admin/campsite/index.gohtml:78 msgid "No campsites added yet." msgstr "No se ha añadido ningún alojamiento todavía." @@ -1654,11 +1731,23 @@ msgctxt "action" msgid "Add Type" msgstr "Añadir tipo" +#: web/templates/admin/campsite/type/index.gohtml:30 +#: web/templates/admin/amenity/index.gohtml:22 +msgctxt "header" +msgid "Features" +msgstr "Características" + #: web/templates/admin/campsite/type/index.gohtml:31 msgctxt "header" msgid "Options" msgstr "Opciones" +#: web/templates/admin/campsite/type/index.gohtml:32 +#: web/templates/admin/amenity/index.gohtml:23 +msgctxt "header" +msgid "Carousel" +msgstr "Carrusel" + #: web/templates/admin/campsite/type/index.gohtml:48 msgctxt "action" msgid "Edit Options" @@ -2548,75 +2637,15 @@ msgctxt "header" msgid "Children (aged 2 to 10)" msgstr "Niños (de 2 a 10 años)" -#: pkg/campsite/admin.go:275 pkg/booking/public.go:172 +#: pkg/campsite/admin.go:366 pkg/booking/public.go:172 #: pkg/booking/public.go:227 msgid "Selected campsite type is not valid." msgstr "El tipo de alojamiento escogido no es válido." -#: pkg/campsite/admin.go:276 pkg/amenity/admin.go:282 +#: pkg/campsite/admin.go:367 pkg/amenity/admin.go:282 msgid "Label can not be empty." msgstr "No podéis dejar la etiqueta en blanco." -#: pkg/season/admin.go:183 -msgctxt "month" -msgid "January" -msgstr "enero" - -#: pkg/season/admin.go:184 -msgctxt "month" -msgid "February" -msgstr "febrero" - -#: pkg/season/admin.go:185 -msgctxt "month" -msgid "March" -msgstr "marzo" - -#: pkg/season/admin.go:186 -msgctxt "month" -msgid "April" -msgstr "abril" - -#: pkg/season/admin.go:187 -msgctxt "month" -msgid "May" -msgstr "mayo" - -#: pkg/season/admin.go:188 -msgctxt "month" -msgid "June" -msgstr "junio" - -#: pkg/season/admin.go:189 -msgctxt "month" -msgid "July" -msgstr "julio" - -#: pkg/season/admin.go:190 -msgctxt "month" -msgid "August" -msgstr "agosto" - -#: pkg/season/admin.go:191 -msgctxt "month" -msgid "September" -msgstr "septiembre" - -#: pkg/season/admin.go:192 -msgctxt "month" -msgid "October" -msgstr "octubre" - -#: pkg/season/admin.go:193 -msgctxt "month" -msgid "November" -msgstr "noviembre" - -#: pkg/season/admin.go:194 -msgctxt "month" -msgid "December" -msgstr "diciembre" - #: pkg/season/admin.go:412 msgid "Color can not be empty." msgstr "No podéis dejar el color en blanco." @@ -2956,6 +2985,10 @@ msgstr "No podéis dejar la población en blanco." msgid "It is mandatory to agree to the reservation conditions." msgstr "Es obligatorio aceptar las condiciones de reserva." +#~ msgctxt "header" +#~ msgid "Type" +#~ msgstr "Tipo" + #~ msgid "Postal code can not be empty." #~ msgstr "No podéis dejar el código postal en blanco." diff --git a/po/fr.po b/po/fr.po index eb4f446..2745400 100644 --- a/po/fr.po +++ b/po/fr.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: camper\n" "Report-Msgid-Bugs-To: jordi@tandem.blog\n" -"POT-Creation-Date: 2024-03-24 21:59+0100\n" +"POT-Creation-Date: 2024-04-19 11:18+0200\n" "PO-Revision-Date: 2024-02-06 10:05+0100\n" "Last-Translator: Oriol Carbonell \n" "Language-Team: French \n" @@ -134,7 +134,6 @@ msgstr "Carte ACSI ?" #: web/templates/mail/payment/details.gotxt:18 #: web/templates/admin/payment/details.gohtml:83 -#: web/templates/admin/campsite/index.gohtml:41 #: web/templates/admin/campsite/type/index.gohtml:53 #: web/templates/admin/season/index.gohtml:44 #: web/templates/admin/user/login-attempts.gohtml:31 @@ -144,7 +143,6 @@ msgstr "Oui" #: web/templates/mail/payment/details.gotxt:18 #: web/templates/admin/payment/details.gohtml:83 -#: web/templates/admin/campsite/index.gohtml:41 #: web/templates/admin/campsite/type/index.gohtml:53 #: web/templates/admin/season/index.gohtml:44 #: web/templates/admin/user/login-attempts.gohtml:31 @@ -489,6 +487,88 @@ msgstr "À moins d’une heure de Gérone, un de La Bis msgid "Discover" msgstr "Découvrir" +#: web/templates/public/form.gohtml:28 web/templates/admin/form.gohtml:28 +msgctxt "input" +msgid "Month" +msgstr "Mois" + +#: web/templates/public/form.gohtml:30 web/templates/admin/form.gohtml:30 +#: pkg/season/admin.go:183 +msgctxt "month" +msgid "January" +msgstr "Janvier" + +#: web/templates/public/form.gohtml:31 web/templates/admin/form.gohtml:31 +#: pkg/season/admin.go:184 +msgctxt "month" +msgid "February" +msgstr "Février" + +#: web/templates/public/form.gohtml:32 web/templates/admin/form.gohtml:32 +#: pkg/season/admin.go:185 +msgctxt "month" +msgid "March" +msgstr "Mars" + +#: web/templates/public/form.gohtml:33 web/templates/admin/form.gohtml:33 +#: pkg/season/admin.go:186 +msgctxt "month" +msgid "April" +msgstr "Avril" + +#: web/templates/public/form.gohtml:34 web/templates/admin/form.gohtml:34 +#: pkg/season/admin.go:187 +msgctxt "month" +msgid "May" +msgstr "Mai" + +#: web/templates/public/form.gohtml:35 web/templates/admin/form.gohtml:35 +#: pkg/season/admin.go:188 +msgctxt "month" +msgid "June" +msgstr "Juin" + +#: web/templates/public/form.gohtml:36 web/templates/admin/form.gohtml:36 +#: pkg/season/admin.go:189 +msgctxt "month" +msgid "July" +msgstr "Juillet" + +#: web/templates/public/form.gohtml:37 web/templates/admin/form.gohtml:37 +#: pkg/season/admin.go:190 +msgctxt "month" +msgid "August" +msgstr "Août" + +#: web/templates/public/form.gohtml:38 web/templates/admin/form.gohtml:38 +#: pkg/season/admin.go:191 +msgctxt "month" +msgid "September" +msgstr "Septembre" + +#: web/templates/public/form.gohtml:39 web/templates/admin/form.gohtml:39 +#: pkg/season/admin.go:192 +msgctxt "month" +msgid "October" +msgstr "Octobre" + +#: web/templates/public/form.gohtml:40 web/templates/admin/form.gohtml:40 +#: pkg/season/admin.go:193 +msgctxt "month" +msgid "November" +msgstr "Novembre" + +#: web/templates/public/form.gohtml:41 web/templates/admin/form.gohtml:41 +#: pkg/season/admin.go:194 +msgctxt "month" +msgid "December" +msgstr "Décembre" + +#: web/templates/public/form.gohtml:45 web/templates/admin/form.gohtml:45 +msgctxt "input" +msgid "Year" +msgstr "Année" + #: web/templates/public/campsite/type.gohtml:49 #: web/templates/public/booking/fields.gohtml:273 msgctxt "action" @@ -1059,7 +1139,7 @@ msgid "Slug" msgstr "Slug" #: web/templates/admin/legal/form.gohtml:50 -#: web/templates/admin/campsite/feature/form.gohtml:50 +#: web/templates/admin/campsite/feature/form.gohtml:51 #: web/templates/admin/campsite/type/feature/form.gohtml:59 #: web/templates/admin/campsite/type/form.gohtml:51 #: web/templates/admin/campsite/type/option/form.gohtml:41 @@ -1080,9 +1160,9 @@ msgstr "Contenu" #: web/templates/admin/legal/form.gohtml:88 #: web/templates/admin/carousel/form.gohtml:55 -#: web/templates/admin/campsite/feature/form.gohtml:65 -#: web/templates/admin/campsite/carousel/form.gohtml:50 -#: web/templates/admin/campsite/form.gohtml:92 +#: web/templates/admin/campsite/feature/form.gohtml:66 +#: web/templates/admin/campsite/carousel/form.gohtml:51 +#: web/templates/admin/campsite/form.gohtml:96 #: web/templates/admin/campsite/type/feature/form.gohtml:74 #: web/templates/admin/campsite/type/carousel/form.gohtml:59 #: web/templates/admin/campsite/type/form.gohtml:287 @@ -1102,9 +1182,9 @@ msgstr "Mettre à jour" #: web/templates/admin/legal/form.gohtml:90 #: web/templates/admin/carousel/form.gohtml:57 -#: web/templates/admin/campsite/feature/form.gohtml:67 -#: web/templates/admin/campsite/carousel/form.gohtml:52 -#: web/templates/admin/campsite/form.gohtml:94 +#: web/templates/admin/campsite/feature/form.gohtml:68 +#: web/templates/admin/campsite/carousel/form.gohtml:53 +#: web/templates/admin/campsite/form.gohtml:98 #: web/templates/admin/campsite/type/feature/form.gohtml:76 #: web/templates/admin/campsite/type/carousel/form.gohtml:61 #: web/templates/admin/campsite/type/form.gohtml:289 @@ -1125,7 +1205,7 @@ msgid "Add Legal Text" msgstr "Ajouter un texte juridique" #: web/templates/admin/legal/index.gohtml:20 -#: web/templates/admin/campsite/feature/index.gohtml:30 +#: web/templates/admin/campsite/feature/index.gohtml:31 #: web/templates/admin/campsite/type/feature/index.gohtml:31 #: web/templates/admin/campsite/type/option/index.gohtml:30 #: web/templates/admin/campsite/type/index.gohtml:29 @@ -1155,7 +1235,7 @@ msgid "New Carousel Slide" msgstr "Nouveau diapositive carrousel" #: web/templates/admin/carousel/form.gohtml:40 -#: web/templates/admin/campsite/carousel/form.gohtml:35 +#: web/templates/admin/campsite/carousel/form.gohtml:36 #: web/templates/admin/campsite/type/carousel/form.gohtml:44 #: web/templates/admin/amenity/carousel/form.gohtml:35 msgctxt "input" @@ -1193,12 +1273,21 @@ msgid "New Campsite Feature" msgstr "Nouvelle caractéristique de camping" #: web/templates/admin/campsite/feature/form.gohtml:17 +#: web/templates/admin/campsite/feature/index.gohtml:11 +#: web/templates/admin/campsite/carousel/form.gohtml:17 +#: web/templates/admin/campsite/carousel/index.gohtml:11 +#: web/templates/admin/campsite/form.gohtml:8 +msgctxt "title" +msgid "Edit Campsite" +msgstr "Modifier le camping" + +#: web/templates/admin/campsite/feature/form.gohtml:18 #: web/templates/admin/campsite/feature/index.gohtml:6 msgctxt "title" msgid "Campsite Features" msgstr "Caractéristiques de camping" -#: web/templates/admin/campsite/feature/form.gohtml:32 +#: web/templates/admin/campsite/feature/form.gohtml:33 #: web/templates/admin/campsite/type/feature/form.gohtml:41 #: web/templates/admin/services/form.gohtml:35 #: web/templates/admin/amenity/feature/form.gohtml:32 @@ -1206,15 +1295,15 @@ msgctxt "input" msgid "Icon" msgstr "Icône" -#: web/templates/admin/campsite/feature/index.gohtml:15 +#: web/templates/admin/campsite/feature/index.gohtml:16 #: web/templates/admin/campsite/type/feature/index.gohtml:16 #: web/templates/admin/amenity/feature/index.gohtml:15 msgctxt "action" msgid "Add Feature" msgstr "Ajouter une caractéristique" -#: web/templates/admin/campsite/feature/index.gohtml:31 -#: web/templates/admin/campsite/carousel/index.gohtml:31 +#: web/templates/admin/campsite/feature/index.gohtml:32 +#: web/templates/admin/campsite/carousel/index.gohtml:32 #: web/templates/admin/campsite/type/feature/index.gohtml:32 #: web/templates/admin/campsite/type/carousel/index.gohtml:32 #: web/templates/admin/campsite/type/option/index.gohtml:31 @@ -1231,14 +1320,14 @@ msgctxt "header" msgid "Actions" msgstr "Actions" -#: web/templates/admin/campsite/feature/index.gohtml:35 +#: web/templates/admin/campsite/feature/index.gohtml:36 #: web/templates/admin/campsite/type/feature/index.gohtml:36 #: web/templates/admin/amenity/feature/index.gohtml:35 msgid "Are you sure you wish to delete this feature?" msgstr "Êtes-vous sûr de vouloir supprimer cette caractéristique ?" -#: web/templates/admin/campsite/feature/index.gohtml:47 -#: web/templates/admin/campsite/carousel/index.gohtml:49 +#: web/templates/admin/campsite/feature/index.gohtml:48 +#: web/templates/admin/campsite/carousel/index.gohtml:50 #: web/templates/admin/campsite/type/feature/index.gohtml:48 #: web/templates/admin/campsite/type/carousel/index.gohtml:50 #: web/templates/admin/campsite/type/option/index.gohtml:47 @@ -1256,7 +1345,7 @@ msgctxt "action" msgid "Delete" msgstr "Supprimer" -#: web/templates/admin/campsite/feature/index.gohtml:56 +#: web/templates/admin/campsite/feature/index.gohtml:57 msgid "No campsite features added yet." msgstr "Aucune caractéristique de camping n’a encore été ajoutée." @@ -1270,13 +1359,13 @@ msgctxt "title" msgid "New Campsite Carousel Slide" msgstr "Nouveau diapositive de carrousel de camping" -#: web/templates/admin/campsite/carousel/form.gohtml:17 +#: web/templates/admin/campsite/carousel/form.gohtml:18 #: web/templates/admin/campsite/carousel/index.gohtml:6 msgctxt "title" msgid "Campsite Carousel" msgstr "Camping Carrousel" -#: web/templates/admin/campsite/carousel/index.gohtml:16 +#: web/templates/admin/campsite/carousel/index.gohtml:17 #: web/templates/admin/campsite/type/carousel/index.gohtml:17 #: web/templates/admin/services/index.gohtml:15 #: web/templates/admin/amenity/carousel/index.gohtml:16 @@ -1285,7 +1374,7 @@ msgctxt "action" msgid "Add slide" msgstr "Ajouter la diapositive" -#: web/templates/admin/campsite/carousel/index.gohtml:29 +#: web/templates/admin/campsite/carousel/index.gohtml:30 #: web/templates/admin/campsite/type/carousel/index.gohtml:30 #: web/templates/admin/services/index.gohtml:28 #: web/templates/admin/surroundings/index.gohtml:82 @@ -1296,7 +1385,7 @@ msgctxt "header" msgid "Image" msgstr "Image" -#: web/templates/admin/campsite/carousel/index.gohtml:30 +#: web/templates/admin/campsite/carousel/index.gohtml:31 #: web/templates/admin/campsite/type/carousel/index.gohtml:31 #: web/templates/admin/services/index.gohtml:29 #: web/templates/admin/amenity/carousel/index.gohtml:30 @@ -1306,7 +1395,7 @@ msgctxt "header" msgid "Caption" msgstr "Légende" -#: web/templates/admin/campsite/carousel/index.gohtml:35 +#: web/templates/admin/campsite/carousel/index.gohtml:36 #: web/templates/admin/campsite/type/carousel/index.gohtml:36 #: web/templates/admin/services/index.gohtml:34 #: web/templates/admin/amenity/carousel/index.gohtml:35 @@ -1314,7 +1403,7 @@ msgstr "Légende" msgid "Are you sure you wish to delete this slide?" msgstr "Êtes-vous sûr de vouloir supprimer cette diapositive ?" -#: web/templates/admin/campsite/carousel/index.gohtml:58 +#: web/templates/admin/campsite/carousel/index.gohtml:59 #: web/templates/admin/campsite/type/carousel/index.gohtml:59 #: web/templates/admin/services/index.gohtml:56 #: web/templates/admin/amenity/carousel/index.gohtml:58 @@ -1322,44 +1411,52 @@ msgstr "Êtes-vous sûr de vouloir supprimer cette diapositive ?" msgid "No slides added yet." msgstr "Aucune diapositive n’a encore été ajoutée." -#: web/templates/admin/campsite/form.gohtml:8 -msgctxt "title" -msgid "Edit Campsite" -msgstr "Modifier le camping" - #: web/templates/admin/campsite/form.gohtml:10 msgctxt "title" msgid "New Campsite" msgstr "Nouveau camping" -#: web/templates/admin/campsite/form.gohtml:33 -#: web/templates/admin/campsite/index.gohtml:27 +#: web/templates/admin/campsite/form.gohtml:21 +#: web/templates/admin/campsite/type/index.gohtml:45 +#: web/templates/admin/amenity/index.gohtml:35 +msgctxt "action" +msgid "Edit Features" +msgstr "Edit caractéristiques" + +#: web/templates/admin/campsite/form.gohtml:22 +#: web/templates/admin/campsite/type/index.gohtml:51 +#: web/templates/admin/amenity/index.gohtml:38 +msgctxt "action" +msgid "Edit Carousel" +msgstr "Modifier le carrousel" + +#: web/templates/admin/campsite/form.gohtml:37 msgctxt "campsite" msgid "Active" msgstr "Actif" -#: web/templates/admin/campsite/form.gohtml:42 +#: web/templates/admin/campsite/form.gohtml:46 msgctxt "input" msgid "Campsite Type" msgstr "Type d’emplacement de camping" -#: web/templates/admin/campsite/form.gohtml:47 +#: web/templates/admin/campsite/form.gohtml:51 msgid "Select campsite type" msgstr "Sélectionnez le type d’emplacement" -#: web/templates/admin/campsite/form.gohtml:56 +#: web/templates/admin/campsite/form.gohtml:60 #: web/templates/admin/amenity/form.gohtml:42 msgctxt "input" msgid "Label" msgstr "Label" -#: web/templates/admin/campsite/form.gohtml:64 +#: web/templates/admin/campsite/form.gohtml:68 #: web/templates/admin/amenity/form.gohtml:63 msgctxt "input" msgid "Info (First Column)" msgstr "Info (première colonne)" -#: web/templates/admin/campsite/form.gohtml:77 +#: web/templates/admin/campsite/form.gohtml:81 #: web/templates/admin/amenity/form.gohtml:76 msgctxt "input" msgid "Info (Second Column)" @@ -1370,46 +1467,26 @@ msgctxt "action" msgid "Add Campsite" msgstr "Ajouter un camping" -#: web/templates/admin/campsite/index.gohtml:23 +#: web/templates/admin/campsite/index.gohtml:21 +msgid "From Date" +msgstr "Partir de la date" + +#: web/templates/admin/campsite/index.gohtml:28 +msgid "To Date" +msgstr "À la date" + +#: web/templates/admin/campsite/index.gohtml:35 +msgctxt "action" +msgid "Show" +msgstr "Montrer" + +#: web/templates/admin/campsite/index.gohtml:50 #: web/templates/admin/amenity/index.gohtml:20 msgctxt "header" msgid "Label" msgstr "Label" -#: web/templates/admin/campsite/index.gohtml:24 -msgctxt "header" -msgid "Type" -msgstr "Type" - -#: web/templates/admin/campsite/index.gohtml:25 -#: web/templates/admin/campsite/type/index.gohtml:30 -#: web/templates/admin/amenity/index.gohtml:22 -msgctxt "header" -msgid "Features" -msgstr "Caractéristiques" - -#: web/templates/admin/campsite/index.gohtml:26 -#: web/templates/admin/campsite/type/index.gohtml:32 -#: web/templates/admin/amenity/index.gohtml:23 -msgctxt "header" -msgid "Carousel" -msgstr "Carrousel" - -#: web/templates/admin/campsite/index.gohtml:36 -#: web/templates/admin/campsite/type/index.gohtml:45 -#: web/templates/admin/amenity/index.gohtml:35 -msgctxt "action" -msgid "Edit Features" -msgstr "Edit caractéristiques" - -#: web/templates/admin/campsite/index.gohtml:39 -#: web/templates/admin/campsite/type/index.gohtml:51 -#: web/templates/admin/amenity/index.gohtml:38 -msgctxt "action" -msgid "Edit Carousel" -msgstr "Modifier le carrousel" - -#: web/templates/admin/campsite/index.gohtml:47 +#: web/templates/admin/campsite/index.gohtml:78 msgid "No campsites added yet." msgstr "Aucun camping n’a encore été ajouté." @@ -1654,11 +1731,23 @@ msgctxt "action" msgid "Add Type" msgstr "Ajouter un type" +#: web/templates/admin/campsite/type/index.gohtml:30 +#: web/templates/admin/amenity/index.gohtml:22 +msgctxt "header" +msgid "Features" +msgstr "Caractéristiques" + #: web/templates/admin/campsite/type/index.gohtml:31 msgctxt "header" msgid "Options" msgstr "Options" +#: web/templates/admin/campsite/type/index.gohtml:32 +#: web/templates/admin/amenity/index.gohtml:23 +msgctxt "header" +msgid "Carousel" +msgstr "Carrousel" + #: web/templates/admin/campsite/type/index.gohtml:48 msgctxt "action" msgid "Edit Options" @@ -2548,75 +2637,15 @@ msgctxt "header" msgid "Children (aged 2 to 10)" msgstr "Enfants (de 2 à 10 anys)" -#: pkg/campsite/admin.go:275 pkg/booking/public.go:172 +#: pkg/campsite/admin.go:366 pkg/booking/public.go:172 #: pkg/booking/public.go:227 msgid "Selected campsite type is not valid." msgstr "Le type d’emplacement sélectionné n’est pas valide." -#: pkg/campsite/admin.go:276 pkg/amenity/admin.go:282 +#: pkg/campsite/admin.go:367 pkg/amenity/admin.go:282 msgid "Label can not be empty." msgstr "L'étiquette ne peut pas être vide." -#: pkg/season/admin.go:183 -msgctxt "month" -msgid "January" -msgstr "Janvier" - -#: pkg/season/admin.go:184 -msgctxt "month" -msgid "February" -msgstr "Février" - -#: pkg/season/admin.go:185 -msgctxt "month" -msgid "March" -msgstr "Mars" - -#: pkg/season/admin.go:186 -msgctxt "month" -msgid "April" -msgstr "Avril" - -#: pkg/season/admin.go:187 -msgctxt "month" -msgid "May" -msgstr "Mai" - -#: pkg/season/admin.go:188 -msgctxt "month" -msgid "June" -msgstr "Juin" - -#: pkg/season/admin.go:189 -msgctxt "month" -msgid "July" -msgstr "Juillet" - -#: pkg/season/admin.go:190 -msgctxt "month" -msgid "August" -msgstr "Août" - -#: pkg/season/admin.go:191 -msgctxt "month" -msgid "September" -msgstr "Septembre" - -#: pkg/season/admin.go:192 -msgctxt "month" -msgid "October" -msgstr "Octobre" - -#: pkg/season/admin.go:193 -msgctxt "month" -msgid "November" -msgstr "Novembre" - -#: pkg/season/admin.go:194 -msgctxt "month" -msgid "December" -msgstr "Décembre" - #: pkg/season/admin.go:412 msgid "Color can not be empty." msgstr "La couleur ne peut pas être vide." @@ -2956,6 +2985,10 @@ msgstr "La ville ne peut pas être vide." msgid "It is mandatory to agree to the reservation conditions." msgstr "Il est obligatoire d’accepter les conditions de réservation." +#~ msgctxt "header" +#~ msgid "Type" +#~ msgstr "Type" + #~ msgid "Postal code can not be empty." #~ msgstr "Le code postal ne peut pas être vide." diff --git a/web/static/camper.css b/web/static/camper.css index 9a56d50..5ac7e7a 100644 --- a/web/static/camper.css +++ b/web/static/camper.css @@ -769,3 +769,75 @@ label[x-show] > span, label[x-show] > br { } /**/ +/**/ + +#campsites-booking { + height: 90vh; + overflow: scroll; +} + +#campsites-booking table { + width: auto; +} + +#campsites-booking .weekend { + background-color: var(--camper--color--rosy); +} + +#campsites-booking colgroup { + border-right: 2px solid; +} + +#campsites-booking col { + border: 1px solid; + min-width: 2.25ch; + max-width: 2.25ch; +} + +#campsites-booking th { + background-color: var(--camper--background-color); + background-clip: padding-box; +} + +#campsites-booking thead tr:first-child th, #campsites-booking tbody th { + padding: 0 .5ch; +} + +#campsites-booking thead tr:last-child th { + padding: 0; + text-align: center; +} + +#campsites-booking thead { + position: sticky; + top: 0; +} + +#campsites-booking tbody th { + position: sticky; + left: 0; +} + +#booking-filter, #booking-filter fieldset { + display: flex; + gap: 1ch; +} + +#booking-filter label, #booking-filter fieldset + fieldset, #booking-filter footer { + margin-top: 0; +} + +#booking-filter input[type="number"] { + width: 9ch; +} + +#booking-filter footer { + align-self: end; +} + +#booking-filter button { + min-width: unset; + padding: .25em 1em; +} + +/**/ diff --git a/web/templates/admin/campsite/carousel/form.gohtml b/web/templates/admin/campsite/carousel/form.gohtml index 7afcfe1..6117d27 100644 --- a/web/templates/admin/campsite/carousel/form.gohtml +++ b/web/templates/admin/campsite/carousel/form.gohtml @@ -14,6 +14,7 @@ {{ define "breadcrumb" -}} {{- /*gotype: dev.tandem.ws/tandem/camper/pkg/campsite/types.slideForm*/ -}}
  • {{( pgettext "Campsites" "title" )}}
  • +
  • {{( pgettext "Edit Campsite" "title" )}}
  • {{( pgettext "Campsite Carousel" "title" )}}
  • {{- end }} diff --git a/web/templates/admin/campsite/carousel/index.gohtml b/web/templates/admin/campsite/carousel/index.gohtml index 341751e..9ea0bca 100644 --- a/web/templates/admin/campsite/carousel/index.gohtml +++ b/web/templates/admin/campsite/carousel/index.gohtml @@ -8,6 +8,7 @@ {{ define "breadcrumb" -}}
  • {{( pgettext "Campsites" "title" )}}
  • +
  • {{( pgettext "Edit Campsite" "title" )}}
  • {{- end }} {{ define "content" -}} diff --git a/web/templates/admin/campsite/feature/form.gohtml b/web/templates/admin/campsite/feature/form.gohtml index 4eec5cf..6a83182 100644 --- a/web/templates/admin/campsite/feature/form.gohtml +++ b/web/templates/admin/campsite/feature/form.gohtml @@ -14,6 +14,7 @@ {{ define "breadcrumb" -}} {{- /*gotype: dev.tandem.ws/tandem/camper/pkg/campsite.featureForm*/ -}}
  • {{( pgettext "Campsites" "title" )}}
  • +
  • {{( pgettext "Edit Campsite" "title" )}}
  • {{( pgettext "Campsite Features" "title" )}}
  • {{- end }} diff --git a/web/templates/admin/campsite/feature/index.gohtml b/web/templates/admin/campsite/feature/index.gohtml index 09dcac2..3430577 100644 --- a/web/templates/admin/campsite/feature/index.gohtml +++ b/web/templates/admin/campsite/feature/index.gohtml @@ -8,6 +8,7 @@ {{ define "breadcrumb" -}}
  • {{( pgettext "Campsites" "title" )}}
  • +
  • {{( pgettext "Edit Campsite" "title" )}}
  • {{- end }} {{ define "content" -}} diff --git a/web/templates/admin/campsite/form.gohtml b/web/templates/admin/campsite/form.gohtml index 48418ac..ca50406 100644 --- a/web/templates/admin/campsite/form.gohtml +++ b/web/templates/admin/campsite/form.gohtml @@ -17,6 +17,10 @@ {{ define "content" -}} {{- /*gotype: dev.tandem.ws/tandem/camper/pkg/campsite.campsiteForm*/ -}} + {{ if .ID -}} + {{( pgettext "Edit Features" "action" )}} + {{( pgettext "Edit Carousel" "action" )}} + {{- end }}
    {{( pgettext "Add Campsite" "action" )}}

    {{( pgettext "Campsites" "title" )}}

    -
    - {{ template "campground_map.svg" }} -
    {{ if .Campsites -}} - - - - - - - - - - - - {{ range .Campsites -}} + +
    + {{ with .From -}} +
    + {{( gettext "From Date" )}} + {{ template "month-input" . }} + {{ template "error-message" . }} +
    + {{- end }} + {{ with .To -}} +
    + {{( gettext "To Date" )}} + {{ template "month-input" . }} + {{ template "error-message" . }} +
    + {{- end }} +
    +
    + +
    + +
    +
    {{( pgettext "Label" "header" )}}{{( pgettext "Type" "header" )}}{{( pgettext "Features" "header" )}}{{( pgettext "Carousel" "header" )}}{{( pgettext "Active" "campsite" )}}
    + + {{ range .Months }} + + {{ range .Spans }} + + {{- end }} + + {{- end }} + - - - - - + + {{ range .Months }} + + {{- end }} - {{- end }} - -
    {{ .Label }}{{ .Type }} - {{( pgettext "Edit Features" "action" )}} - - {{( pgettext "Edit Carousel" "action" )}} - {{ if .Active }}{{( gettext "Yes" )}}{{ else }}{{( gettext "No" )}}{{ end }}{{( pgettext "Label" "header" )}}{{ pgettext .Name "month" }} {{ .Year }}
    + + {{ range .Months }} + {{ range .Days }} + {{ .Day }} + {{- end }} + {{- end }} + + + + {{ range .Campsites -}} + + {{ .Label }} + {{ range $.Months }} + {{ range .Days }} + + {{- end }} + {{- end }} + + {{- end }} + + + {{ else -}}

    {{( gettext "No campsites added yet." )}}

    {{- end }} - - {{- end }} diff --git a/web/templates/admin/form.gohtml b/web/templates/admin/form.gohtml index 8106762..3ec7a56 100644 --- a/web/templates/admin/form.gohtml +++ b/web/templates/admin/form.gohtml @@ -23,6 +23,30 @@ {{- end }} {{- end }} +{{ define "month-input" -}} + + +{{- end }} + {{ define "media-picker" -}} {{- /*gotype: dev.tandem.ws/tandem/camper/pkg/form.Media*/ -}}