diff --git a/.gitignore b/.gitignore index 6a81cd9..23e2e33 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ docs/ README.html README_files .Rhistory +.DS_Store \ No newline at end of file diff --git a/R/organizers.R b/R/organizers.R index 683fdfa..38a9aa1 100644 --- a/R/organizers.R +++ b/R/organizers.R @@ -7,36 +7,73 @@ create_organizer_table <- function(table.path = file.path("..", "data", "organiz img.path = file.path("..", "images", "organizers"), ncol = 5L, align = "l") { - # Read organizer table - organizers <- read.csv(table.path, stringsAsFactors = FALSE) - organizers[["img_path"]] <- file.path(img.path, organizers[["img_path"]]) + # Read the combined organizers table + organizers <- read.csv(table.path, stringsAsFactors = FALSE) - # Normalize order: if missing/blank, treat as Inf - organizers <- organizers |> - mutate(order = ifelse(is.na(order) | order == "", Inf, as.numeric(order))) + # Add full image paths (handle missing paths) + organizers[["full_img_path"]] <- ifelse( + !is.na(organizers[["img_path"]]) & organizers[["img_path"]] != "", + file.path(img.path, organizers[["img_path"]]), + "" + ) - # Add organizer group - df <- organizers |> - arrange(order, name) |> + # Normalize order: if missing/blank, treat as Inf + organizers <- organizers |> + mutate(order = ifelse(is.na(order) | order == "", Inf, as.numeric(order))) + + # Get unique committees (excluding NA/empty) + committees <- unique(organizers$committee) + committees <- committees[!is.na(committees) & committees != ""] + + # Sort committees: Local first, then others + if ("Local" %in% committees) { + committees <- c("Local", setdiff(committees, "Local")) + } + + # Process each committee + for(committee_name in committees) { + cat(paste0("\n## ", committee_name, "\n\n")) + + # Filter for current committee + df_comm <- organizers |> + filter(committee == committee_name) |> + arrange(order, name) + + # Format each member with image, name, and role + df_comm <- df_comm |> mutate( - img = sprintf("![](%s){height=150}", img_path), - label = name + img = ifelse( + full_img_path != "", + sprintf("![](%s){height=150}", full_img_path), + "" + ), + label = ifelse( + !is.na(role) & role != "", + paste0("**", name, "**
*", role, "*"), + paste0("**", name, "**") + ) ) - n_missing <- ncol - (nrow(df) %% ncol) + + # Pad to multiple of ncol + n_missing <- ncol - (nrow(df_comm) %% ncol) if (n_missing < ncol) { - df <- bind_rows(df, data.frame( + df_comm <- bind_rows(df_comm, data.frame( name = rep("", n_missing), + committee = rep("", n_missing), + role = rep("", n_missing), local = rep(FALSE, n_missing), order = rep(Inf, n_missing), img_path = rep("", n_missing), + full_img_path = rep("", n_missing), img = rep("", n_missing), label = rep("", n_missing), stringsAsFactors = FALSE )) } + # Make matrix with alternating rows (image row, name row) - img_mtx <- matrix(df$img, ncol = ncol, byrow = TRUE) - name_mtx <- matrix(df$label, ncol = ncol, byrow = TRUE) + img_mtx <- matrix(df_comm$img, ncol = ncol, byrow = TRUE) + name_mtx <- matrix(df_comm$label, ncol = ncol, byrow = TRUE) ij <- rep(seq_len(nrow(img_mtx)), each = 2) + c(0, nrow(img_mtx)) tbl <- data.frame(rbind(img_mtx, name_mtx)[ij, ]) @@ -47,4 +84,5 @@ create_organizer_table <- function(table.path = file.path("..", "data", "organiz print() cat("\n\n") + } } diff --git a/data/organizers.csv b/data/organizers.csv index cd13a6d..e62f4df 100644 --- a/data/organizers.csv +++ b/data/organizers.csv @@ -1,29 +1,28 @@ -name,local,order,img_path -Helena Crowell,FALSE,,Helena Crowell.png -Maria Doyle,FALSE,,Maria Doyle.jpeg -James Dalgleish,FALSE,,James Dalgleish.png -Michael Stadler,FALSE,,Michael Stadler.jpg -Annekathrin Nedwed,FALSE,,Annekathrin Nedwed.png -Juan Ramon Gonzalez,FALSE,,Juan Ramon Gonzalez.jpg -Mireia Ramos,FALSE,,Mireia Ramos.jpg -Kevin Rue-Albrecht,FALSE,,Kevin Rue-Albrecht.jpg -Najla Abassi,FALSE,,Najla Abassi.jpg -Charlotte Soneson,FALSE,,Charlotte Soneson.jpg -Laurent Gatto,FALSE,,Laurent Gatto.jpg -Robert Castelo,FALSE,,Robert Castelo.jpeg -Dario Righelli,FALSE,,Dario Righelli.jpg -Lena Morrill Gavarro,FALSE,,Lena Morrill Gavarro.jpg -Robert Ivánek,FALSE,,Robert Ivanek.jpg -Davide Risso,FALSE,,Davide Risso.jpg -Leo Lahti,TRUE,1,Leo Lahti.jpg -Simone Bell,FALSE,,Simone Bell.jpg -Eliana Ibrahimi,FALSE,,Eliana Ibrahimi.png -Lieven Clement,FALSE,,Lieven Clement.jpeg -Tuomas Borman,TRUE,2,Tuomas Borman.jpeg -Federico Marini,FALSE,,Federico Marini.png -Lluis Revilla,FALSE,,Lluis Revilla.png -Wolfgang Huber,FALSE,,Wolfgang Huber.png -Dania Machlab,FALSE,,Dania Machlab.jpg -Teemu Daniel Laajala,FALSE,,TDLaajala.jpg -Julia Mathlin,FALSE,,julia_mathlin.jpeg -Anna Kaisanlahti,FALSE,,anna_kaisanlahti.jpg +name,committee,role,local,order,img_path +Leo Lahti,Community,Chair,TRUE,1,Leo Lahti.jpg +Tuomas Borman,Community,Coordinator,TRUE,2,Tuomas Borman.jpeg +Annekathrin Nedwed,Community,General member,FALSE,NA,Annekathrin Nedwed.png +Charlotte Soneson,Community,Scientific program,FALSE,NA,Charlotte Soneson.jpg +Dania Machlab,Community,Scientific Program,FALSE,NA,Dania Machlab.jpg +Dario Righelli,Community,General member,FALSE,NA,Dario Righelli.jpg +Eliana Ibrahimi,Community,"Scientific program, reviewer",FALSE,NA,Eliana Ibrahimi.png +Federico Marini,Community,General member,FALSE,NA,Federico Marini.png +Helena Crowell,Community,General member,FALSE,NA,Helena Crowell.png +James Dalgleish,Community,"Partnerships, reviewer ",FALSE,NA,James Dalgleish.png +Kevin Rue-Albrecht,Community,General member,FALSE,NA,Kevin Rue-Albrecht.jpg +Laurent Gatto,Community,General member,FALSE,NA,Laurent Gatto.jpg +Lena Morrill Gavarro,Community,General member,FALSE,NA,Lena Morrill Gavarro.jpg +Lieven Clement,Community,General member,FALSE,NA,Lieven Clement.jpeg +Maria Doyle,Community,Communications,FALSE,NA,Maria Doyle.jpeg +Michael Stadler,Community,"Scientific program, reviewer",FALSE,NA,Michael Stadler.jpg +Najla Abassi,Community,General member,FALSE,NA,Najla Abassi.jpg +Nyasita Laurah Ondari,Community,Communications,NA,NA,NA +Robert Castelo,Community,Partnerships,FALSE,NA,Robert Castelo.jpeg +Robert Ivánek,Community,General member,FALSE,NA,Robert Ivanek.jpg +Leo Lahti,Local,Chair,TRUE,1,Leo Lahti.jpg +Tuomas Borman,Local,Co-chair,TRUE,2,Tuomas Borman.jpeg +Julia Mathlin,Local,"Partnerships, Communications",FALSE,NA,julia_mathlin.jpeg +Teemu Daniel Laajala,Local,Partnerships,FALSE,NA,TDLaajala.jpg +Anna Kaisanlahti,Local,Partnerships,FALSE,NA,anna_kaisanlahti.jpg +Davide Risso,Community,General member,FALSE,NA,Davide Risso.jpg +Lluis Revilla,Community,General member,FALSE,NA,Lluis Revilla.png diff --git a/index.qmd b/index.qmd index 5862aa7..7c0fe28 100644 --- a/index.qmd +++ b/index.qmd @@ -46,8 +46,8 @@ technologies impacting computational biology. ::: - **November 24**: Call for abstracts opens -- **January 30**: Call for abstracts closes -- **January 31**: Sticker Design Contest deadline +- January 30: Call for abstracts closes +- January 31: Sticker Design Contest deadline - **June 1-2**: Bioconductor Carpentry Workshops - **June 3-5**: The EuroBioC2026 Conference! diff --git a/pages/sticker-contest.qmd b/pages/sticker-contest.qmd index 99fccef..759b981 100644 --- a/pages/sticker-contest.qmd +++ b/pages/sticker-contest.qmd @@ -18,7 +18,7 @@ and licensed under the CC0 1.0 Universal (CC0 1.0) Public Domain License. - The EuroBioC2026 organising committee will vote for the winning design based on relevance and creativity. - All non-winning designs relevant to the conference may be displayed on the -Gallery page (should we create one) of the EuroBioC2025 website with +Gallery page of the EuroBioC2026 website with attributions to the submitter. All participants have the opportunity to opt out of their submissions being shared in the Gallery. - As part of our collaborative process, if your design is selected, we may @@ -47,6 +47,11 @@ from the top of the image. - Some suggestions for color definitions: [http://www.flatuicolorpicker.com/category/all](http://www.flatuicolorpicker.com/category/all). +::: {.callout-tip icon=false} +## Submit your sticker here! +[Open the submission form](https://forms.gle/PJKJfLFAgbN7nskB7) +::: + ## Stickers from previous conferences
diff --git a/styles.css b/styles.css index adf4b5c..57e305a 100644 --- a/styles.css +++ b/styles.css @@ -64,3 +64,8 @@ b,strong { height: 90%; } +.deadline { + color: #d73027; + font-size: 1.15em; + font-weight: 600; +}