Skip to content

Commit

Permalink
deploy: e5c7502
Browse files Browse the repository at this point in the history
  • Loading branch information
scottyhq committed Jul 25, 2024
1 parent 926c579 commit 8c9be14
Show file tree
Hide file tree
Showing 91 changed files with 2,289 additions and 2,076 deletions.
2 changes: 1 addition & 1 deletion .buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: d5ebe0887c5e1cc7c00ecbd9c67326f3
config: 42132b1d15e5e19aa9d865ab8f944e44
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file added _images/project-template2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/project-template3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 9 additions & 3 deletions _sources/training/projects/project-github.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,16 @@ We encourage all teams to create a new GitHub repository within the hackweek org

* Click the green "Use this template" button on right side of page:

![new-repo-screenshot](../../images/project-template.png)
![use-this-template-screenshot](../../images/project-template.png)

* Choose "Create a new repository" from the drop-down menu

![create-new-repo-screenshot](../../images/project-template2.png)

* Select the GitHub organization for your hackweek from the "Owner" drop-down menu, and give your new project repository a name.

![repo-owner-and-name-screenshot](../../images/project-template3.png)

* Choose "Create a new repository"
* Name your repository using a short name.
* We recommend choosing "Public" so other participants can follow progress
* Add a "topic" to your repository details (click on the gear icon next to the "About" section on your repository page) to help others find your work (e.g. `uw-hackweek-snowex2024`)

Expand Down
104 changes: 89 additions & 15 deletions _sphinx_design_static/design-tabs.js
Original file line number Diff line number Diff line change
@@ -1,27 +1,101 @@
var sd_labels_by_text = {};
// @ts-check

// Extra JS capability for selected tabs to be synced
// The selection is stored in local storage so that it persists across page loads.

/**
* @type {Record<string, HTMLElement[]>}
*/
let sd_id_to_elements = {};
const storageKeyPrefix = "sphinx-design-tab-id-";

/**
* Create a key for a tab element.
* @param {HTMLElement} el - The tab element.
* @returns {[string, string, string] | null} - The key.
*
*/
function create_key(el) {
let syncId = el.getAttribute("data-sync-id");
let syncGroup = el.getAttribute("data-sync-group");
if (!syncId || !syncGroup) return null;
return [syncGroup, syncId, syncGroup + "--" + syncId];
}

/**
* Initialize the tab selection.
*
*/
function ready() {
const li = document.getElementsByClassName("sd-tab-label");
for (const label of li) {
syncId = label.getAttribute("data-sync-id");
if (syncId) {
label.onclick = onLabelClick;
if (!sd_labels_by_text[syncId]) {
sd_labels_by_text[syncId] = [];
// Find all tabs with sync data

/** @type {string[]} */
let groups = [];

document.querySelectorAll(".sd-tab-label").forEach((label) => {
if (label instanceof HTMLElement) {
let data = create_key(label);
if (data) {
let [group, id, key] = data;

// add click event listener
// @ts-ignore
label.onclick = onSDLabelClick;

// store map of key to elements
if (!sd_id_to_elements[key]) {
sd_id_to_elements[key] = [];
}
sd_id_to_elements[key].push(label);

if (groups.indexOf(group) === -1) {
groups.push(group);
// Check if a specific tab has been selected via URL parameter
const tabParam = new URLSearchParams(window.location.search).get(
group
);
if (tabParam) {
console.log(
"sphinx-design: Selecting tab id for group '" +
group +
"' from URL parameter: " +
tabParam
);
window.sessionStorage.setItem(storageKeyPrefix + group, tabParam);
}
}

// Check is a specific tab has been selected previously
let previousId = window.sessionStorage.getItem(
storageKeyPrefix + group
);
if (previousId === id) {
// console.log(
// "sphinx-design: Selecting tab from session storage: " + id
// );
// @ts-ignore
label.previousElementSibling.checked = true;
}
}
sd_labels_by_text[syncId].push(label);
}
}
});
}

function onLabelClick() {
// Activate other inputs with the same sync id.
syncId = this.getAttribute("data-sync-id");
for (label of sd_labels_by_text[syncId]) {
/**
* Activate other tabs with the same sync id.
*
* @this {HTMLElement} - The element that was clicked.
*/
function onSDLabelClick() {
let data = create_key(this);
if (!data) return;
let [group, id, key] = data;
for (const label of sd_id_to_elements[key]) {
if (label === this) continue;
// @ts-ignore
label.previousElementSibling.checked = true;
}
window.localStorage.setItem("sphinx-design-last-tab", syncId);
window.sessionStorage.setItem(storageKeyPrefix + group, id);
}

document.addEventListener("DOMContentLoaded", ready, false);

Large diffs are not rendered by default.

104 changes: 89 additions & 15 deletions _static/design-tabs.js
Original file line number Diff line number Diff line change
@@ -1,27 +1,101 @@
var sd_labels_by_text = {};
// @ts-check

// Extra JS capability for selected tabs to be synced
// The selection is stored in local storage so that it persists across page loads.

/**
* @type {Record<string, HTMLElement[]>}
*/
let sd_id_to_elements = {};
const storageKeyPrefix = "sphinx-design-tab-id-";

/**
* Create a key for a tab element.
* @param {HTMLElement} el - The tab element.
* @returns {[string, string, string] | null} - The key.
*
*/
function create_key(el) {
let syncId = el.getAttribute("data-sync-id");
let syncGroup = el.getAttribute("data-sync-group");
if (!syncId || !syncGroup) return null;
return [syncGroup, syncId, syncGroup + "--" + syncId];
}

/**
* Initialize the tab selection.
*
*/
function ready() {
const li = document.getElementsByClassName("sd-tab-label");
for (const label of li) {
syncId = label.getAttribute("data-sync-id");
if (syncId) {
label.onclick = onLabelClick;
if (!sd_labels_by_text[syncId]) {
sd_labels_by_text[syncId] = [];
// Find all tabs with sync data

/** @type {string[]} */
let groups = [];

document.querySelectorAll(".sd-tab-label").forEach((label) => {
if (label instanceof HTMLElement) {
let data = create_key(label);
if (data) {
let [group, id, key] = data;

// add click event listener
// @ts-ignore
label.onclick = onSDLabelClick;

// store map of key to elements
if (!sd_id_to_elements[key]) {
sd_id_to_elements[key] = [];
}
sd_id_to_elements[key].push(label);

if (groups.indexOf(group) === -1) {
groups.push(group);
// Check if a specific tab has been selected via URL parameter
const tabParam = new URLSearchParams(window.location.search).get(
group
);
if (tabParam) {
console.log(
"sphinx-design: Selecting tab id for group '" +
group +
"' from URL parameter: " +
tabParam
);
window.sessionStorage.setItem(storageKeyPrefix + group, tabParam);
}
}

// Check is a specific tab has been selected previously
let previousId = window.sessionStorage.getItem(
storageKeyPrefix + group
);
if (previousId === id) {
// console.log(
// "sphinx-design: Selecting tab from session storage: " + id
// );
// @ts-ignore
label.previousElementSibling.checked = true;
}
}
sd_labels_by_text[syncId].push(label);
}
}
});
}

function onLabelClick() {
// Activate other inputs with the same sync id.
syncId = this.getAttribute("data-sync-id");
for (label of sd_labels_by_text[syncId]) {
/**
* Activate other tabs with the same sync id.
*
* @this {HTMLElement} - The element that was clicked.
*/
function onSDLabelClick() {
let data = create_key(this);
if (!data) return;
let [group, id, key] = data;
for (const label of sd_id_to_elements[key]) {
if (label === this) continue;
// @ts-ignore
label.previousElementSibling.checked = true;
}
window.localStorage.setItem("sphinx-design-last-tab", syncId);
window.sessionStorage.setItem(storageKeyPrefix + group, id);
}

document.addEventListener("DOMContentLoaded", ready, false);
64 changes: 32 additions & 32 deletions _static/locales/ar/LC_MESSAGES/booktheme.po
Original file line number Diff line number Diff line change
Expand Up @@ -8,68 +8,68 @@ msgstr ""
"Language: ar\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

msgid "Print to PDF"
msgstr "طباعة إلى PDF"

msgid "Theme by the"
msgstr "موضوع بواسطة"

msgid "Open an issue"
msgstr "افتح قضية"
msgid "Download source file"
msgstr "تنزيل ملف المصدر"

msgid "open issue"
msgstr "قضية مفتوحة"

msgid "Contents"
msgstr "محتويات"

msgid "previous page"
msgstr "الصفحة السابقة"

msgid "Download notebook file"
msgstr "تنزيل ملف دفتر الملاحظات"

msgid "Sphinx Book Theme"
msgstr "موضوع كتاب أبو الهول"

msgid "Fullscreen mode"
msgstr "وضع ملء الشاشة"

msgid "Edit this page"
msgstr "قم بتحرير هذه الصفحة"

msgid "By"
msgstr "بواسطة"

msgid "Copyright"
msgstr "حقوق النشر"

msgid "Download this page"
msgstr "قم بتنزيل هذه الصفحة"

msgid "Source repository"
msgstr "مستودع المصدر"

msgid "previous page"
msgstr "الصفحة السابقة"
msgid "By"
msgstr "بواسطة"

msgid "next page"
msgstr "الصفحة التالية"
msgid "repository"
msgstr "مخزن"

msgid "Last updated on"
msgstr "آخر تحديث في"

msgid "Toggle navigation"
msgstr "تبديل التنقل"

msgid "repository"
msgstr "مخزن"
msgid "Sphinx Book Theme"
msgstr "موضوع كتاب أبو الهول"

msgid "suggest edit"
msgstr "أقترح تحرير"

msgid "open issue"
msgstr "قضية مفتوحة"
msgid "Open an issue"
msgstr "افتح قضية"

msgid "Launch"
msgstr "إطلاق"

msgid "Print to PDF"
msgstr "طباعة إلى PDF"
msgid "Fullscreen mode"
msgstr "وضع ملء الشاشة"

msgid "Edit this page"
msgstr "قم بتحرير هذه الصفحة"

msgid "By the"
msgstr "بواسطة"

msgid "Last updated on"
msgstr "آخر تحديث في"

msgid "Download source file"
msgstr "تنزيل ملف المصدر"

msgid "Download this page"
msgstr "قم بتنزيل هذه الصفحة"
msgid "next page"
msgstr "الصفحة التالية"
Loading

0 comments on commit 8c9be14

Please sign in to comment.