From f841a177f8f483ac3d2090c4b41e1a3d9c4f49c3 Mon Sep 17 00:00:00 2001 From: Dominic Ricottone Date: Sun, 17 Jan 2021 11:21:06 -0500 Subject: [PATCH] Initial commit --- .gitignore | 4 + LICENSE.md | 31 + Makefile | 24 + README.md | 27 + archetypes/default.md | 6 + archetypes/posts.md | 7 + config.toml | 6 + content/_index.md | 10 + content/about.md | 18 + content/cv.md | 105 +++ content/posts/_index.md | 7 + content/posts/docker.md | 25 + content/posts/ipsem_lorem.md | 9 + content/posts/playing-with-web-services.md | 32 + content/posts/setting-up-hugo.md | 24 + layouts/_default/baseof.html | 28 + layouts/_default/list.html | 30 + layouts/_default/single.html | 17 + layouts/index.html | 31 + layouts/partials/head.html | 38 + layouts/partials/navi.html | 23 + layouts/posts/single.html | 32 + static/css/arrow_down.png | Bin 0 -> 202 bytes static/css/arrow_up.png | Bin 0 -> 200 bytes static/css/blog.css | 59 ++ static/css/cgit.css | 926 +++++++++++++++++++++ static/css/common.css | 44 + static/css/gallery.css | 6 + static/css/header.css | 28 + static/css/lightbox-2.11.3.min.css | 1 + static/css/navi.css | 124 +++ static/files/dominic-ricottone.html | 119 +++ static/files/dominic-ricottone.pdf | Bin 0 -> 73883 bytes static/js/jquery-3.5.1.min.js | 2 + static/js/lightbox-2.11.3.min.js | 15 + 35 files changed, 1858 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE.md create mode 100644 Makefile create mode 100644 README.md create mode 100644 archetypes/default.md create mode 100644 archetypes/posts.md create mode 100644 config.toml create mode 100644 content/_index.md create mode 100644 content/about.md create mode 100644 content/cv.md create mode 100644 content/posts/_index.md create mode 100644 content/posts/docker.md create mode 100644 content/posts/ipsem_lorem.md create mode 100644 content/posts/playing-with-web-services.md create mode 100644 content/posts/setting-up-hugo.md create mode 100644 layouts/_default/baseof.html create mode 100644 layouts/_default/list.html create mode 100644 layouts/_default/single.html create mode 100644 layouts/index.html create mode 100644 layouts/partials/head.html create mode 100644 layouts/partials/navi.html create mode 100644 layouts/posts/single.html create mode 100644 static/css/arrow_down.png create mode 100644 static/css/arrow_up.png create mode 100644 static/css/blog.css create mode 100644 static/css/cgit.css create mode 100644 static/css/common.css create mode 100644 static/css/gallery.css create mode 100644 static/css/header.css create mode 100644 static/css/lightbox-2.11.3.min.css create mode 100644 static/css/navi.css create mode 100644 static/files/dominic-ricottone.html create mode 100644 static/files/dominic-ricottone.pdf create mode 100644 static/js/jquery-3.5.1.min.js create mode 100644 static/js/lightbox-2.11.3.min.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2adbe96 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +public/ +resources/ +themes/ + diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..b7f04ca --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,31 @@ +BSD 3-Clause License +==================== + +_Copyright (c) 2020, Dominic Ricottone_ +_All rights reserved._ + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6637272 --- /dev/null +++ b/Makefile @@ -0,0 +1,24 @@ +TARGET_IP=alpine1.local +TARGET_USER=deploy +TARGET_DIR=/var/public-blog +TARGET_HOST=$(TARGET_USER)@$(TARGET_IP) +DOCKER_URL=ssh://$(TARGET_HOST) + +.PHONY: dev +dev: + hugo server -buildDrafts + +.PHONY: build +build: clean + hugo + +.PHONY: sync +sync: build + rsync --recursive --links --compress --delete \ + --chown=$(TARGET_USER):$(TARGET_USER) \ + public/ $(TARGET_HOST):$(TARGET_DIR)/html/ + +.PHONY: clean +clean: + rm -rf public resources themes + diff --git a/README.md b/README.md new file mode 100644 index 0000000..417a8d7 --- /dev/null +++ b/README.md @@ -0,0 +1,27 @@ +# Blog + +This repo holds the web content of my blog, which lives at +[dominic-ricottone.com](https://www.dominic-ricottone.com). + +All web servers on [Alpine1](https://alpine1.dominic-ricottone.com) look to +this web server for static files, including CSS and JavaScript. + +## License + +There are vendored (i.e. minified) copies of jQuery present in this repo. +Those files are not edited or manipulated in any way to disguise their +licensing. jQuery is available under the MIT License; you can read further +details at [their website](https://jquery.org/license/). + +There are vendored (i.e. minified) copies of Lightbox2 present in this repo. +Those files are not edited or manipulated in any way to disguise their +licensing. Lightbox is available under the MIT License; you can read further +details at +[Lokesh Dhakar's website](https://lokeshdhakar.com/projects/lightbox2/#license) + +The arrow icons were downloaded from some website that licenses graphics as +free for non-commercial use. I modified them signficantly, but they should +still retain the original artist's licensing. + +All *other* content of this repository is licensed under BSD-3. + diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/archetypes/posts.md b/archetypes/posts.md new file mode 100644 index 0000000..492239c --- /dev/null +++ b/archetypes/posts.md @@ -0,0 +1,7 @@ + +--- +title: "{{ replace .Name "_" " " }}" +date: {{ .Date }} +draft: true +--- + diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..059de6b --- /dev/null +++ b/config.toml @@ -0,0 +1,6 @@ +baseURL = "https://dominic-ricottone.com/" +languageCode = "en-us" +title = "Dominic Ricottone" +disableKinds = ["taxonomy", "taxonomyTerm"] +summaryLength = 20 + diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..42f3789 --- /dev/null +++ b/content/_index.md @@ -0,0 +1,10 @@ + +--- +title: Welcome! +--- + +This is the personal and professional website of Dominic Ricottone. I work in market research as a Data Management Analyst. +I have experience across multiple survey operations roles, including web survey programming, RIM weighting, and data entry. + +You can find my CV, code repositories, and other personal work here. Below are recent blog posts. + diff --git a/content/about.md b/content/about.md new file mode 100644 index 0000000..a2286a2 --- /dev/null +++ b/content/about.md @@ -0,0 +1,18 @@ + +--- +title: Who am I? Why am I here? +site_title: true +--- + +I was born in Buffalo, New York and spent the first two decades of my life in the Western New York region. I've relocated to the nation's capitol in search of work--my goal is to conduct survey research that informs policy decisions. + +I have a personal interest in internet technologies and automation through programming. This website and the webserver hosting it are both weekend DIY projects. My current projects are: + ++ converting this website to [Hugo](https://gohugo.io/) ++ a media player in the style of ncmpcpp that dispatches between mpd, spotifyd, and mpv ++ rewriting (a **subset** of) GNU coreutils in Python for my work laptop (running Windows 10) + +I'm also passionate about international history and culture. I studied Japanese for three years and spent a semester in Nagoya, Japan. This year I'm backpacking across Austria and Hungary. + +My career has taken me from political consultancy to pollsters to government contracting. I'm always looking for new experiences to add to that list. For details, see [my CV](/cv). + diff --git a/content/cv.md b/content/cv.md new file mode 100644 index 0000000..b274d23 --- /dev/null +++ b/content/cv.md @@ -0,0 +1,105 @@ + +--- +title: Dominic Ricottone +site_title: true +toc: true +--- + + +**Download:** [PDF](https://www.dominic-ricottone.com/files/dominic-ricottone.pdf) | [HTML](https://www.dominic-ricottone.com/files/dominic-ricottone.html) + +**Contact:** [me@dominic-ricottone.com](mailto:me@dominic-ricottone.com) + +Three years experience in survey research operations. Training in econometric analysis and quantitative methods. Self-trained programmer and systems administrator. Proficient in diverse set of programming languages and statistical software. + + +------ + + +Employment +===== + +## Fors Marsh Group +*A market research company primarily working federal contracts. A majority of the time, I'm working with the Department of Defense (ex. JAMRS' Youth Poll survey) and Department of Commerce (ex. NIST's Manufacturing Extension Partnership survey). I hold a Common Access Card (CAC) in service of my military contracts.* + + + ### Data Management Analyst + *February 2019 to present* + + + Cleaning and processing large (1M+) sample files, including international addresses + + Validating multi-modal survey instruments and data with SPSS, Stata, and Python + + Integrating web portals and backend databases through Python, R, SPSS, and Microsoft Access SQL + + Managing protection of Personally Identifiable Information (PII) and Protected Health Information (PHI) + + +## The Harris Poll +*Market research company specializing in brand evaluation and concept testing. A decades-old firm entering into public polling and political reporting in collaboration with Harvard CAPS and Yahoo News.* + + + ### Junior Survey Programmer + *November 2018 to February 2019* + + + Programming web surveys with the Decipher platform + + + ### Data Processing Programmer + *September 2017 to November 2018* + + + Validating web survey instruments and data with SPSS and Quantum + + Raking data to generate survey weights + + Development of automation, especially syntax generation, through Python and Perl + + Maintaining production software and Linux servers + + +## Chris Harris & Associates +*Political consultancy firm working with Democratic officials across Western New York. Specialties in campaign finance law and fundraising strategy.* + + + ### Campaign Finance Intern + *August 2017 to September 2017* + + + Aggregating data from internal operations and external databases into actionable samples + + Scraping contribution disclosures from government websites and PDF filings + + Organizing fundraisers for elected officials including Monroe and Erie County Democratic Committee Chairs, Monroe County Sheriff Todd Baxter, and the late Congresswoman Louise Slaughter + + +## University of Rochester +*Research university established in 1850. The largest single employer in the Rochester area. I worked under the Record Verification and Workers' Compensation teams.* + + + ### Human Resources Office Assistant + *May 2016 to May 2017* + + + Maintaining primary copies of all employment records + + Managing flow of protected files throughout HR department + + Administering multiple modernization and digitization projects + + +## Cancer Care of Western New York +*Cancer treatment facility based in Buffalo. I worked with Dr. Roehmholdt as he explored publishing a case report on penile melanoma.* + + + ### Research Assistant + *May 2013 to August 2013* + + + Researching the academic literature on penile melanoma + + Data entry of patient records + + Scrubbing Protected Health Information (PHI) from patient records in preparation for sharing with external principal researchers + + +------ + + +Education +===== + +## University of Rochester + + ### B.A. Political Science, Economics + *August 2013 to May 2017* + + + Overall GPA of 3.43 + + Represented the student body for three years in varying levels of student government, including multiple executive appointments + + Focuses in: + + Mathematical modeling (Econometrics, Game Theory) + + Interaction of government and the private sector (Public Finance, Political Economy, Health Economics, Economics of Globalization) + +## 南山大学 (Nanzan University) + + ### Intensive Japanese Language Studies Program + *January 2016 to May 2016* + + + Intensive study of the Japanese language in a Japanese university + diff --git a/content/posts/_index.md b/content/posts/_index.md new file mode 100644 index 0000000..bab2843 --- /dev/null +++ b/content/posts/_index.md @@ -0,0 +1,7 @@ + +--- +title: Personal Blog +--- + +A place for me to write about my weekend DIY projects. + diff --git a/content/posts/docker.md b/content/posts/docker.md new file mode 100644 index 0000000..7b10682 --- /dev/null +++ b/content/posts/docker.md @@ -0,0 +1,25 @@ +--- +title: "Docker" +date: 2020-07-10T17:12:12-04:00 +draft: false +--- + +I've been playing with Alpine Linux and Docker for the last few weeks. I've +decided that Docker with an immutable Alpine Linux installation achieves +everything I want from encapsulation without locking me into a vendor (i.e. +SnapCraft), and also allowing me room for scaling up (i.e. kubernetes). And +now I have severeal private web services and *this very web page* running +through this architecture. + +On the side I've been working on Golang as a Python replacement in my long- +term projects. That's been going swimmingly, and it can't have come at a better +time, seeing as the Python community is currently self-destructing. PEP 572 +convinced me two years ago that Python has no room for growth into the future, +and consequently I'm unsurprised with the reception of PEP 622. And then +there's that PR on PEP 8... + +And to top it all off, while I wasn't looking, +[Notable](https://github.com/notable/notable) went proprietary! So now I'm +teaching myself TypeScript and Electron towards the end of maintaining a +fork. + diff --git a/content/posts/ipsem_lorem.md b/content/posts/ipsem_lorem.md new file mode 100644 index 0000000..63ccbd4 --- /dev/null +++ b/content/posts/ipsem_lorem.md @@ -0,0 +1,9 @@ + +--- +title: "ipsem lorem" +date: 2020-01-11T08:42:51-05:00 +draft: true +--- + +dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum + diff --git a/content/posts/playing-with-web-services.md b/content/posts/playing-with-web-services.md new file mode 100644 index 0000000..6f761b5 --- /dev/null +++ b/content/posts/playing-with-web-services.md @@ -0,0 +1,32 @@ + +--- +title: "Playing with Web Services" +date: 2020-04-15T12:24:13-04:00 +draft: false +--- + +There's been very little movement on this website in the last couple +months. Not because I've dropped its development, and certainly not because +I've been lacking for free time. Rather, I've been playing with my private +network. + +I'm generally uncomfortable with standing up web services if I don't thoroughly +understand the risks and consequences. (That's the single biggest reason for +my selection of CGit over GitLab, gitea, etc.) And this posed a significant +challenge to running PHP. *The configuration file was thousands of lines long!* + +So I did the only reasonable thing and wrote my own `php.ini` while skimming +the entire PHP manual. + +By now, I've stood up a DNS server (via dnsmasq), a SQL server (including +MariaDB and phpMyAdmin), RainLoop, and NextCloud. I'm generally satisfied where +things stand now, so I'm moving on. + +Next steps? + +1. Encapsulation through Ubuntu Core and snaps. +2. Custom web APIs, probably using Flask. Namely, I want to build a bridge + between my SQL server and a FullCalendar-compatible JSON feed. +3. Document *everything* on my wiki, in *at least* two ways (system + configuration and snap configuration). + diff --git a/content/posts/setting-up-hugo.md b/content/posts/setting-up-hugo.md new file mode 100644 index 0000000..8d97d0d --- /dev/null +++ b/content/posts/setting-up-hugo.md @@ -0,0 +1,24 @@ + +--- +title: "Setting up Hugo" +date: 2020-01-24T19:32:43-05:00 +draft: false +--- + +This post-the first post, in fact-is to commemorate the launch of my new +website powered by Hugo. Prior to this moment, I was simply posting HTML files +to my server's webroot. It was appealing to be bare-bones and fast. + +But now, I'm able to play around with many more powerful features. I can test +my CSS and Javascript more quickly with development servers on localhost. The +parts of the site that never change (i.e., navigation) are included where +needed and never in the way of the content. + +And in case it wasn't obvious, I can also add a blog with relative ease. + +I didn't need to give up any degree of portability (as the static site can live +in any webroot) or my workflow (since Hugo is perfectly happy being called by +`make` and being versioned by `git`). + +All in all, very happy with this adoption of Hugo. + diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html new file mode 100644 index 0000000..9b9e3dc --- /dev/null +++ b/layouts/_default/baseof.html @@ -0,0 +1,28 @@ + + + + {{ partial "head.html" . }} + + + + +
+ + + + + + + + +
+ {{ block "main" . }}{{ end }} +
+ +
+ + + + diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 0000000..0f5b940 --- /dev/null +++ b/layouts/_default/list.html @@ -0,0 +1,30 @@ + +{{ define "main" }} + +
+ + {{.Content}} +
+ + + +{{ end }} + diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..6c7f698 --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,17 @@ + +{{ define "main" }} + +{{ if (.Params.toc) }} +
+

Table of Contents

+ {{.TableOfContents}} +
+{{ end }} + +
+ + {{.Content}} +
+ +{{ end }} + diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 0000000..fd5b723 --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,31 @@ + +{{ define "main" }} + +
+ +

Welcome!

+ {{.Content}} +
+ + + + +{{ end }} + diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..637cb02 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,38 @@ + + + + + {{ $title := print .Title " | " .Site.Title }} + {{ if or (.IsHome) (.Params.site_title) }}{{ $title = .Site.Title }}{{ end }} + {{ $title }} + + + + + + + + + + + + + + + + + + + diff --git a/layouts/partials/navi.html b/layouts/partials/navi.html new file mode 100644 index 0000000..ce3531e --- /dev/null +++ b/layouts/partials/navi.html @@ -0,0 +1,23 @@ + + + diff --git a/layouts/posts/single.html b/layouts/posts/single.html new file mode 100644 index 0000000..04c3187 --- /dev/null +++ b/layouts/posts/single.html @@ -0,0 +1,32 @@ + +{{ define "main" }} + +
+ +

{{.Title}}

+ + +

Date: {{.Date.Format "Mon 2006-01-02"}}

+

Permalink

+
+ + +
+ {{.Content}} +
+ +
+ +
+ +
+ {{ with .PrevInSection }} +

Previous article: {{.Title}}

+ {{ end }} + {{ with .NextInSection }} +

Next article: {{.Title}}

+ {{ end }} +
+ +{{ end }} + diff --git a/static/css/arrow_down.png b/static/css/arrow_down.png new file mode 100644 index 0000000000000000000000000000000000000000..fb4f3c70710107ecee9af0bbfa038a1df81d7c1b GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP_V|+ z#WBR9_w5B=uBHM3hr*>F_#Qfa3YfcWLI2wF4{mc6TK2gAiQ3}vzlZBx)4j51wlhv{ zvRB^Vym3Qtk}xk{#lyxdC%az-$IWE7?JLP-QBPiF60o>msj+7EF8wZ(&Kg&{?@Ofo w4W~y|3fyF$_<50p%dXH*3PB5ERR8nkXXm~?@9ueV8PFXJp00i_>zopr0DEpqZ2$lO literal 0 HcmV?d00001 diff --git a/static/css/arrow_up.png b/static/css/arrow_up.png new file mode 100644 index 0000000000000000000000000000000000000000..509e7fe083877c8aadac65346007c9930f8fcfc7 GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP_W9= z#WBR9_w9wfyiElHZG~?l8crQqKXZ3S(wxs|m)xChRQ=T}z}4cWt7o$f*DJdp v?MseY$%*WEY;xh^vg#5Uo#K;QY8Ym`cz0Rk&zUnoS1@?G`njxgN@xNACgMym literal 0 HcmV?d00001 diff --git a/static/css/blog.css b/static/css/blog.css new file mode 100644 index 0000000..2cf2909 --- /dev/null +++ b/static/css/blog.css @@ -0,0 +1,59 @@ +div#content { + margin: 0; + max-width: 800px; + padding-left: 10px; +} +ul#list-posts { + list-style-type: none; /* no bullets for post lists */ + margin: 0; + padding: 0; +} +ul#list-posts li { + margin: 0; + padding: 0; /* no indentation on list item--title should not be indented */ +} +div.post p { + line-height: 2em; /* increased line height for post content */ + text-indent: 2em; /* indentation for first lines (same as on lists) */ +} +div.post p.read-more { + font-style: italic; + margin: 0 0 0.25em 0; /* no top spacing on post link */ + text-indent: 0; /* do not indent post link */ +} + +/* Table of Contents */ +div#toc { + left: calc(900px + 2em); + margin: 5em 0 0 1em; + padding: 1em; + position: fixed; + top: 0; + width: 300px; +} +@media (max-width: 1200px) { + div#toc { + float: right; + margin: 0 0 0 2em; + padding: 0; + position: static; + } +} +@media (max-width: 800px) { + div#toc { + display: none; + margin: 0; + padding: 0; + position: static; + } +} +div#toc h2 { + margin: 0; +} +div#toc ul { + margin: 0; +} +div#toc li { + margin: 0.5em 0 0 0; +} + diff --git a/static/css/cgit.css b/static/css/cgit.css new file mode 100644 index 0000000..35db437 --- /dev/null +++ b/static/css/cgit.css @@ -0,0 +1,926 @@ +div#cgit { + padding: 0em; + margin: 0em; + font-family: sans-serif; + font-size: 10pt; + color: #333; + background: white; + padding: 4px; +} + +div#cgit a { + color: blue; + text-decoration: none; +} + +div#cgit a:hover { + text-decoration: underline; +} + +div#cgit table { + border-collapse: collapse; +} + +div#cgit table#header { + width: 100%; + margin-bottom: 1em; +} + +div#cgit table#header td.logo { + width: 96px; + vertical-align: top; +} + +div#cgit table#header td.main { + font-size: 250%; + padding-left: 10px; + white-space: nowrap; +} + +div#cgit table#header td.main a { + color: #000; +} + +div#cgit table#header td.form { + text-align: right; + vertical-align: bottom; + padding-right: 1em; + padding-bottom: 2px; + white-space: nowrap; +} + +div#cgit table#header td.form form, +div#cgit table#header td.form input, +div#cgit table#header td.form select { + font-size: 90%; +} + +div#cgit table#header td.sub { + color: #777; + border-top: solid 1px #ccc; + padding-left: 10px; +} + +div#cgit table.tabs { + border-bottom: solid 3px #ccc; + border-collapse: collapse; + margin-top: 2em; + margin-bottom: 0px; + width: 100%; +} + +div#cgit table.tabs td { + padding: 0px 1em; + vertical-align: bottom; +} + +div#cgit table.tabs td a { + padding: 2px 0.75em; + color: #777; + font-size: 110%; +} + +div#cgit table.tabs td a.active { + color: #000; + background-color: #ccc; +} + +div#cgit table.tabs a[href^="http://"]:after, div#cgit table.tabs a[href^="https://"]:after { + content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAQAAAAnOwc2AAAAAmJLR0QA/4ePzL8AAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfgAhcJDQY+gm2TAAAAHWlUWHRDb21tZW50AAAAAABDcmVhdGVkIHdpdGggR0lNUGQuZQcAAABbSURBVAhbY2BABs4MU4CwhYHBh2Erww4wrGFQZHjI8B8IgUIscJWyDHcggltQhI4zGDCcRwhChPggHIggP1QoAVmQkSETrGoHsiAEsACtBYN0oDAMbgU6EBcAAL2eHUt4XUU4AAAAAElFTkSuQmCC); + opacity: 0.5; + margin: 0 0 0 5px; +} + +div#cgit table.tabs td.form { + text-align: right; +} + +div#cgit table.tabs td.form form { + padding-bottom: 2px; + font-size: 90%; + white-space: nowrap; +} + +div#cgit table.tabs td.form input, +div#cgit table.tabs td.form select { + font-size: 90%; +} + +div#cgit div.path { + margin: 0px; + padding: 5px 2em 2px 2em; + color: #000; + background-color: #eee; +} + +div#cgit div.content { + margin: 0px; + padding: 2em; + border-bottom: solid 3px #ccc; +} + + +div#cgit table.list { + width: 100%; + border: none; + border-collapse: collapse; +} + +div#cgit table.list tr { + background: white; +} + +div#cgit table.list tr.logheader { + background: #eee; +} + +div#cgit table.list tr:nth-child(even) { + background: #f7f7f7; +} + +div#cgit table.list tr:nth-child(odd) { + background: white; +} + +div#cgit table.list tr:hover { + background: #eee; +} + +div#cgit table.list tr.nohover { + background: white; +} + +div#cgit table.list tr.nohover:hover { + background: white; +} + +div#cgit table.list tr.nohover-highlight:hover:nth-child(even) { + background: #f7f7f7; +} + +div#cgit table.list tr.nohover-highlight:hover:nth-child(odd) { + background: white; +} + +div#cgit table.list th { + font-weight: bold; + /* color: #888; + border-top: dashed 1px #888; + border-bottom: dashed 1px #888; + */ + padding: 0.1em 0.5em 0.05em 0.5em; + vertical-align: baseline; +} + +div#cgit table.list td { + border: none; + padding: 0.1em 0.5em 0.1em 0.5em; +} + +div#cgit table.list td.commitgraph { + font-family: monospace; + white-space: pre; +} + +div#cgit table.list td.commitgraph .column1 { + color: #a00; +} + +div#cgit table.list td.commitgraph .column2 { + color: #0a0; +} + +div#cgit table.list td.commitgraph .column3 { + color: #aa0; +} + +div#cgit table.list td.commitgraph .column4 { + color: #00a; +} + +div#cgit table.list td.commitgraph .column5 { + color: #a0a; +} + +div#cgit table.list td.commitgraph .column6 { + color: #0aa; +} + +div#cgit table.list td.logsubject { + font-family: monospace; + font-weight: bold; +} + +div#cgit table.list td.logmsg { + font-family: monospace; + white-space: pre; + padding: 0 0.5em; +} + +div#cgit table.list td a { + color: black; +} + +div#cgit table.list td a.ls-dir { + font-weight: bold; + color: #00f; +} + +div#cgit table.list td a:hover { + color: #00f; +} + +div#cgit img { + border: none; +} + +div#cgit input#switch-btn { + margin: 2px 0px 0px 0px; +} + +div#cgit td#sidebar input.txt { + width: 100%; + margin: 2px 0px 0px 0px; +} + +div#cgit table#grid { + margin: 0px; +} + +div#cgit td#content { + vertical-align: top; + padding: 1em 2em 1em 1em; + border: none; +} + +div#cgit div#summary { + vertical-align: top; + margin-bottom: 1em; +} + +div#cgit table#downloads { + float: right; + border-collapse: collapse; + border: solid 1px #777; + margin-left: 0.5em; + margin-bottom: 0.5em; +} + +div#cgit table#downloads th { + background-color: #ccc; +} + +div#cgit div#blob { + border: solid 1px black; +} + +div#cgit div.error { + color: red; + font-weight: bold; + margin: 1em 2em; +} + +div#cgit a.ls-blob, div#cgit a.ls-dir, div#cgit .ls-mod { + font-family: monospace; +} + +div#cgit td.ls-size { + text-align: right; + font-family: monospace; + width: 10em; +} + +div#cgit td.ls-mode { + font-family: monospace; + width: 10em; +} + +div#cgit table.blob { + margin-top: 0.5em; + border-top: solid 1px black; +} + +div#cgit table.blob td.lines { + margin: 0; padding: 0 0 0 0.5em; + vertical-align: top; + color: black; +} + +div#cgit table.blob td.linenumbers { + margin: 0; padding: 0 0.5em 0 0.5em; + vertical-align: top; + text-align: right; + border-right: 1px solid gray; +} + +div#cgit table.blob pre { + padding: 0; margin: 0; +} + +div#cgit table.blob td.linenumbers a, +div#cgit table.ssdiff td.lineno a { + color: gray; + text-align: right; + text-decoration: none; +} + +div#cgit table.blob td.linenumbers a:hover, +div#cgit table.ssdiff td.lineno a:hover { + color: black; +} + +div#cgit table.bin-blob { + margin-top: 0.5em; + border: solid 1px black; +} + +div#cgit table.bin-blob th { + font-family: monospace; + white-space: pre; + border: solid 1px #777; + padding: 0.5em 1em; +} + +div#cgit table.bin-blob td { + font-family: monospace; + white-space: pre; + border-left: solid 1px #777; + padding: 0em 1em; +} + +div#cgit table.nowrap td { + white-space: nowrap; +} + +div#cgit table.commit-info { + border-collapse: collapse; + margin-top: 1.5em; +} + +div#cgit div.cgit-panel { + float: right; + margin-top: 1.5em; +} + +div#cgit div.cgit-panel table { + border-collapse: collapse; + border: solid 1px #aaa; + background-color: #eee; +} + +div#cgit div.cgit-panel th { + text-align: center; +} + +div#cgit div.cgit-panel td { + padding: 0.25em 0.5em; +} + +div#cgit div.cgit-panel td.label { + padding-right: 0.5em; +} + +div#cgit div.cgit-panel td.ctrl { + padding-left: 0.5em; +} + +div#cgit table.commit-info th { + text-align: left; + font-weight: normal; + padding: 0.1em 1em 0.1em 0.1em; + vertical-align: top; +} + +div#cgit table.commit-info td { + font-weight: normal; + padding: 0.1em 1em 0.1em 0.1em; +} + +div#cgit div.commit-subject { + font-weight: bold; + font-size: 125%; + margin: 1.5em 0em 0.5em 0em; + padding: 0em; +} + +div#cgit div.commit-msg { + white-space: pre; + font-family: monospace; +} + +div#cgit div.notes-header { + font-weight: bold; + padding-top: 1.5em; +} + +div#cgit div.notes { + white-space: pre; + font-family: monospace; + border: solid 1px #ee9; + background-color: #ffd; + padding: 0.3em 2em 0.3em 1em; + float: left; +} + +div#cgit div.notes-footer { + clear: left; +} + +div#cgit div.diffstat-header { + font-weight: bold; + padding-top: 1.5em; +} + +div#cgit table.diffstat { + border-collapse: collapse; + border: solid 1px #aaa; + background-color: #eee; +} + +div#cgit table.diffstat th { + font-weight: normal; + text-align: left; + text-decoration: underline; + padding: 0.1em 1em 0.1em 0.1em; + font-size: 100%; +} + +div#cgit table.diffstat td { + padding: 0.2em 0.2em 0.1em 0.1em; + font-size: 100%; + border: none; +} + +div#cgit table.diffstat td.mode { + white-space: nowrap; +} + +div#cgit table.diffstat td span.modechange { + padding-left: 1em; + color: red; +} + +div#cgit table.diffstat td.add a { + color: green; +} + +div#cgit table.diffstat td.del a { + color: red; +} + +div#cgit table.diffstat td.upd a { + color: blue; +} + +div#cgit table.diffstat td.graph { + width: 500px; + vertical-align: middle; +} + +div#cgit table.diffstat td.graph table { + border: none; +} + +div#cgit table.diffstat td.graph td { + padding: 0px; + border: 0px; + height: 7pt; +} + +div#cgit table.diffstat td.graph td.add { + background-color: #5c5; +} + +div#cgit table.diffstat td.graph td.rem { + background-color: #c55; +} + +div#cgit div.diffstat-summary { + color: #888; + padding-top: 0.5em; +} + +div#cgit table.diff { + width: 100%; +} + +div#cgit table.diff td { + font-family: monospace; + white-space: pre; +} + +div#cgit table.diff td div.head { + font-weight: bold; + margin-top: 1em; + color: black; +} + +div#cgit table.diff td div.hunk { + color: #009; +} + +div#cgit table.diff td div.add { + color: green; +} + +div#cgit table.diff td div.del { + color: red; +} + +div#cgit .sha1 { + font-family: monospace; + font-size: 90%; +} + +div#cgit .left { + text-align: left; +} + +div#cgit .right { + text-align: right; +} + +div#cgit table.list td.reposection { + font-style: italic; + color: #888; +} + +div#cgit a.button { + font-size: 80%; + padding: 0em 0.5em; +} + +div#cgit a.primary { + font-size: 100%; +} + +div#cgit a.secondary { + font-size: 90%; +} + +div#cgit td.toplevel-repo { + +} + +div#cgit table.list td.sublevel-repo { + padding-left: 1.5em; +} + +div#cgit ul.pager { + list-style-type: none; + text-align: center; + margin: 1em 0em 0em 0em; + padding: 0; +} + +div#cgit ul.pager li { + display: inline-block; + margin: 0.25em 0.5em; +} + +div#cgit ul.pager a { + color: #777; +} + +div#cgit ul.pager .current { + font-weight: bold; +} + +div#cgit span.age-mins { + font-weight: bold; + color: #080; +} + +div#cgit span.age-hours { + color: #080; +} + +div#cgit span.age-days { + color: #040; +} + +div#cgit span.age-weeks { + color: #444; +} + +div#cgit span.age-months { + color: #888; +} + +div#cgit span.age-years { + color: #bbb; +} + +div#cgit span.insertions { + color: #080; +} + +div#cgit span.deletions { + color: #800; +} + +div#cgit div.footer { + margin-top: 0.5em; + text-align: center; + font-size: 80%; + color: #ccc; +} + +div#cgit div.footer a { + color: #ccc; + text-decoration: none; +} + +div#cgit div.footer a:hover { + text-decoration: underline; +} + +div#cgit a.branch-deco { + color: #000; + margin: 0px 0.5em; + padding: 0px 0.25em; + background-color: #88ff88; + border: solid 1px #007700; +} + +div#cgit a.tag-deco { + color: #000; + margin: 0px 0.5em; + padding: 0px 0.25em; + background-color: #ffff88; + border: solid 1px #777700; +} + +div#cgit a.remote-deco { + color: #000; + margin: 0px 0.5em; + padding: 0px 0.25em; + background-color: #ccccff; + border: solid 1px #000077; +} + +div#cgit a.deco { + color: #000; + margin: 0px 0.5em; + padding: 0px 0.25em; + background-color: #ff8888; + border: solid 1px #770000; +} + +div#cgit div.commit-subject a.branch-deco, +div#cgit div.commit-subject a.tag-deco, +div#cgit div.commit-subject a.remote-deco, +div#cgit div.commit-subject a.deco { + margin-left: 1em; + font-size: 75%; +} + +div#cgit table.stats { + border: solid 1px black; + border-collapse: collapse; +} + +div#cgit table.stats th { + text-align: left; + padding: 1px 0.5em; + background-color: #eee; + border: solid 1px black; +} + +div#cgit table.stats td { + text-align: right; + padding: 1px 0.5em; + border: solid 1px black; +} + +div#cgit table.stats td.total { + font-weight: bold; + text-align: left; +} + +div#cgit table.stats td.sum { + color: #c00; + font-weight: bold; +/* background-color: #eee; */ +} + +div#cgit table.stats td.left { + text-align: left; +} + +div#cgit table.vgraph { + border-collapse: separate; + border: solid 1px black; + height: 200px; +} + +div#cgit table.vgraph th { + background-color: #eee; + font-weight: bold; + border: solid 1px white; + padding: 1px 0.5em; +} + +div#cgit table.vgraph td { + vertical-align: bottom; + padding: 0px 10px; +} + +div#cgit table.vgraph div.bar { + background-color: #eee; +} + +div#cgit table.hgraph { + border: solid 1px black; + width: 800px; +} + +div#cgit table.hgraph th { + background-color: #eee; + font-weight: bold; + border: solid 1px black; + padding: 1px 0.5em; +} + +div#cgit table.hgraph td { + vertical-align: middle; + padding: 2px 2px; +} + +div#cgit table.hgraph div.bar { + background-color: #eee; + height: 1em; +} + +div#cgit table.ssdiff { + width: 100%; +} + +div#cgit table.ssdiff td { + font-size: 75%; + font-family: monospace; + white-space: pre; + padding: 1px 4px 1px 4px; + border-left: solid 1px #aaa; + border-right: solid 1px #aaa; +} + +div#cgit table.ssdiff td.add { + color: black; + background: #cfc; + min-width: 50%; +} + +div#cgit table.ssdiff td.add_dark { + color: black; + background: #aca; + min-width: 50%; +} + +div#cgit table.ssdiff span.add { + background: #cfc; + font-weight: bold; +} + +div#cgit table.ssdiff td.del { + color: black; + background: #fcc; + min-width: 50%; +} + +div#cgit table.ssdiff td.del_dark { + color: black; + background: #caa; + min-width: 50%; +} + +div#cgit table.ssdiff span.del { + background: #fcc; + font-weight: bold; +} + +div#cgit table.ssdiff td.changed { + color: black; + background: #ffc; + min-width: 50%; +} + +div#cgit table.ssdiff td.changed_dark { + color: black; + background: #cca; + min-width: 50%; +} + +div#cgit table.ssdiff td.lineno { + color: black; + background: #eee; + text-align: right; + width: 3em; + min-width: 3em; +} + +div#cgit table.ssdiff td.hunk { + color: black; + background: #ccf; + border-top: solid 1px #aaa; + border-bottom: solid 1px #aaa; +} + +div#cgit table.ssdiff td.head { + border-top: solid 1px #aaa; + border-bottom: solid 1px #aaa; +} + +div#cgit table.ssdiff td.head div.head { + font-weight: bold; + color: black; +} + +div#cgit table.ssdiff td.foot { + border-top: solid 1px #aaa; + border-left: none; + border-right: none; + border-bottom: none; +} + +div#cgit table.ssdiff td.space { + border: none; +} + +div#cgit table.ssdiff td.space div { + min-height: 3em; +} + +/* Style definition file generated by highlight 3.9, http://www.andre-simon.de/ */ +/* Highlighting theme: Kwrite Editor */ +/* adapted for cgit */ +div#cgit table.blob .num { color:#b07e00; } +div#cgit table.blob .esc { color:#ff00ff; } +div#cgit table.blob .str { color:#bf0303; } +div#cgit table.blob .pps { color:#818100; } +div#cgit table.blob .slc { color:#838183; font-style:italic; } +div#cgit table.blob .com { color:#838183; font-style:italic; } +div#cgit table.blob .ppc { color:#008200; } +div#cgit table.blob .opt { color:#000000; } +div#cgit table.blob .lin { color:#555555; } +div#cgit table.blob .kwa { color:#000000; font-weight:bold; } +div#cgit table.blob .kwb { color:#0057ae; } +div#cgit table.blob .kwc { color:#000000; font-weight:bold; } +div#cgit table.blob .kwd { color:#010181; } + + +table.blob .num { color:#2928ff; } +table.blob .esc { color:#ff00ff; } +table.blob .str { color:#ff0000; } +table.blob .dstr { color:#818100; } +table.blob .slc { color:#838183; font-style:italic; } +table.blob .com { color:#838183; font-style:italic; } +table.blob .dir { color:#008200; } +table.blob .sym { color:#000000; } +table.blob .kwa { color:#000000; font-weight:bold; } +table.blob .kwb { color:#830000; } +table.blob .kwc { color:#000000; font-weight:bold; } +table.blob .kwd { color:#010181; } + +body.hl { background-color:#e0eaee; } +pre.hl { color:#000000; background-color:#e0eaee; font-size:10pt; font-family:'Courier New',monospace;} +.hl.num { color:#b07e00; } +.hl.esc { color:#ff00ff; } +.hl.str { color:#bf0303; } +.hl.pps { color:#818100; } +.hl.slc { color:#838183; font-style:italic; } +.hl.com { color:#838183; font-style:italic; } +.hl.ppc { color:#008200; } +.hl.opt { color:#000000; } +.hl.ipl { color:#0057ae; } +.hl.lin { color:#555555; } +.hl.kwa { color:#000000; font-weight:bold; } +.hl.kwb { color:#0057ae; } +.hl.kwc { color:#000000; font-weight:bold; } +.hl.kwd { color:#010181; } + +@media (max-width: 800px) { + div#cgit table.list tr { + display: table; + width: 100%; + } + div#cgit table.list tr.nohover { + display: none; + } + div#cgit table.list td { + display: none; + } + div#cgit table.list td.toplevel-repo { + display: table-row; + } + div#cgit table.list td.reposection { + display: table-row; + } + div#cgit table.list td.sublevel-repo { + display: table-row; + } + div#cgit table.list td.sublevel-repo a { + padding-left: 1.5em; + } +} + diff --git a/static/css/common.css b/static/css/common.css new file mode 100644 index 0000000..b1869f2 --- /dev/null +++ b/static/css/common.css @@ -0,0 +1,44 @@ +body { + margin-bottom: 50vh; + padding: 0; +} +main { + margin: 0 0 0 calc(100px + 1em); + padding: 4px; + font-size: 10pt; + font-family: sans-serif; +} + +hr { + margin: 2em 0; +} +h1 { + font-size: 150%; +} +h2 { + font-size: 125%; +} +h3 { + font-size: 112%; +} +h4 { + font-size: 100%; +} +h5 { + font-size: 100%; +} +h6 { + font-size: 100%; +} +p { + font-size: 100%; + line-height: 1.5em; +} +ul { + margin-bottom: 2em; + padding-left: 2em; +} +li { + margin-bottom: 0.5em; +} + diff --git a/static/css/gallery.css b/static/css/gallery.css new file mode 100644 index 0000000..5f6e30e --- /dev/null +++ b/static/css/gallery.css @@ -0,0 +1,6 @@ +.gallery { + display: grid; + grid-gap: 0px; + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); +} + diff --git a/static/css/header.css b/static/css/header.css new file mode 100644 index 0000000..40ae9bb --- /dev/null +++ b/static/css/header.css @@ -0,0 +1,28 @@ +/* Header content */ +table#header { + width: 100%; + margin-bottom: 1em; + border-collapse: collapse; +} +table#header td.main { + font-size: 250%; + padding-left: 10px; + white-space: nowrap; +} +table#header td.main a { + color: #000; +} +table#header td.sub { + color: #777; + border-top: solid 1px #ccc; + padding-left: 10px; +} +table#header td.sub a { + color: #777; +} +/* Header logos */ +table#header td.logo { + width: 96px; + vertical-align: top; +} + diff --git a/static/css/lightbox-2.11.3.min.css b/static/css/lightbox-2.11.3.min.css new file mode 100644 index 0000000..adbaa83 --- /dev/null +++ b/static/css/lightbox-2.11.3.min.css @@ -0,0 +1 @@ +.lb-loader,.lightbox{text-align:center;line-height:0;position:absolute;left:0}body.lb-disable-scrolling{overflow:hidden}.lightboxOverlay{position:absolute;top:0;left:0;z-index:9999;background-color:#000;filter:alpha(Opacity=80);opacity:.8;display:none}.lightbox{width:100%;z-index:10000;font-weight:400;outline:0}.lightbox .lb-image{display:block;height:auto;max-width:inherit;max-height:none;border-radius:3px;border:4px solid #fff}.lightbox a img{border:none}.lb-outerContainer{position:relative;width:250px;height:250px;margin:0 auto;border-radius:4px;background-color:#fff}.lb-outerContainer:after{content:"";display:table;clear:both}.lb-loader{top:43%;height:25%;width:100%}.lb-cancel{display:block;width:32px;height:32px;margin:0 auto;background:url(../images/loading.gif) no-repeat}.lb-nav{position:absolute;top:0;left:0;height:100%;width:100%;z-index:10}.lb-container>.nav{left:0}.lb-nav a{outline:0;background-image:url(data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)}.lb-next,.lb-prev{height:100%;cursor:pointer;display:block}.lb-nav a.lb-prev{width:34%;left:0;float:left;background:url(../images/prev.png) left 48% no-repeat;filter:alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-prev:hover{filter:alpha(Opacity=100);opacity:1}.lb-nav a.lb-next{width:64%;right:0;float:right;background:url(../images/next.png) right 48% no-repeat;filter:alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-next:hover{filter:alpha(Opacity=100);opacity:1}.lb-dataContainer{margin:0 auto;padding-top:5px;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.lb-dataContainer:after{content:"";display:table;clear:both}.lb-data{padding:0 4px;color:#ccc}.lb-data .lb-details{width:85%;float:left;text-align:left;line-height:1.1em}.lb-data .lb-caption{font-size:13px;font-weight:700;line-height:1em}.lb-data .lb-caption a{color:#4ae}.lb-data .lb-number{display:block;clear:left;padding-bottom:1em;font-size:12px;color:#999}.lb-data .lb-close{display:block;float:right;width:30px;height:30px;background:url(../images/close.png) top right no-repeat;text-align:right;outline:0;filter:alpha(Opacity=70);opacity:.7;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;-o-transition:opacity .2s;transition:opacity .2s}.lb-data .lb-close:hover{cursor:pointer;filter:alpha(Opacity=100);opacity:1} \ No newline at end of file diff --git a/static/css/navi.css b/static/css/navi.css new file mode 100644 index 0000000..0eba16b --- /dev/null +++ b/static/css/navi.css @@ -0,0 +1,124 @@ +/* Navigation */ +div#navi { + height: 100%; + left: 0; + margin: 5em 0 0 0; + overflow-x: hidden; + padding: 0.5em; + position: fixed; + top: 0; +} +@media (max-width: 800px) { + div#navi { + height: auto; + margin: 0; + position: static; + width: 100%; + } +} + +/* Navigation - list-style (for desktop screens) */ +ul#list-navi { + list-style-type: none; + margin: 0; + padding: 0; + width: 100px; +} +@media (max-width: 800px) { + ul#list-navi { + display: none; + } +} +ul#list-navi li { + background-color: #000; + color: #fff; + display: block; + font-size: 1em; + height: 0; + line-height: 2em; + margin: 0; + opacity: 0; + padding: 0 0.5em 0 0; + text-align: center; + transition: all 0.4s ease-out; +} +ul#list-navi li a { + color: #fff; + display: none; + text-decoration: none; +} +ul#list-navi li.shown { + height: 2em; + margin: 0 0 0.5em 0; + opacity: 1; +} +ul#list-navi li.shown a { + display: block; +} +ul#list-navi li.shown:hover { + background-color: #333; +} +ul#list-navi li.shown.trigger { + background: url('/css/arrow_down.png') no-repeat right #000; + background-origin: content-box; + padding: 0 0.5em 0 0; +} +ul#list-navi li.shown.trigger.selection { + /* background-color: #999; */ + background: url('/css/arrow_up.png') no-repeat right #999; + background-origin: content-box; + color: #000; + padding: 0 0.5em 0 0; +} + +/* Navigation - menu-style (for mobile screens) */ +select#menu-navi { + -moz-appearance: none; + -webkit-appearance: none; + appearance: none; + background: url('arrow_down.png') no-repeat right #000; + background-origin: content-box; + border: 0; + color: #fff; + display: none; + font-size: 1em; + height: 2em; + margin: 0; + outline: 0; + padding: 0 0.5em 0 0; + width: 12em; +} +@media (max-width: 800px) { + select#menu-navi { + display: inline-block; + } +} +select#menu-navi:focus { + background: url('arrow_up.png') no-repeat right #000; + background-origin: content-box; + padding: 0 0.5em 0 0; +} +select#menu-navi option { + height: 2em; + margin: 0; + width: 12em; +} + +/* Content left margin */ +main { + margin-left: calc(100px + 1em); +} +@media (max-width: 800px) { + main { + margin-left: 0; + } +} +div#cgit { + margin-left: calc(100px + 1em); +} +@media (max-width: 800px) { + div#cgit { + margin-left: 0; + } +} + diff --git a/static/files/dominic-ricottone.html b/static/files/dominic-ricottone.html new file mode 100644 index 0000000..00b90b9 --- /dev/null +++ b/static/files/dominic-ricottone.html @@ -0,0 +1,119 @@ + + + + +CV | Dominic Ricottone + + +
+
+

Dominic Ricottone

+

Three years experience in survey research operations. Training in econometric analysis and quantitative methods. Self-trained programmer and systems administrator. Proficient in diverse set of programming languages and statistical software.

+
+

Employment

+

Fors Marsh Group

+

A market research company primarily working federal contracts. A majority of the time, I’m working with the Department of Defense (ex. JAMRS’ Youth Poll survey) and Department of Commerce (ex. NIST’s Manufacturing Extension Partnership survey). I hold a Common Access Card (CAC) in service of my military contracts.

+
    +
  • +

    Data Management Analyst

    +

    February 2019 to present

    +
      +
    • Cleaning and processing large (1M+) sample files, including international addresses
    • +
    • Validating multi-modal survey instruments and data with SPSS, Stata, and Python
    • +
    • Integrating web portals and backend databases through Python, R, SPSS, and Microsoft Access SQL
    • +
    • Managing protection of Personally Identifiable Information (PII) and Protected Health Information (PHI)
    • +
    +
  • +
+

The Harris Poll

+

Market research company specializing in brand evaluation and concept testing. A decades-old firm entering into public polling and political reporting in collaboration with Harvard CAPS and Yahoo News.

+
    +
  • +

    Junior Survey Programmer

    +

    November 2018 to February 2019

    +
      +
    • Programming web surveys with the Decipher platform
    • +
    +
  • +
  • +

    Data Processing Programmer

    +

    September 2017 to November 2018

    +
      +
    • Validating web survey instruments and data with SPSS and Quantum
    • +
    • Raking data to generate survey weights
    • +
    • Development of automation, especially syntax generation, through Python and Perl
    • +
    • Maintaining production software and Linux servers
    • +
    +
  • +
+

Chris Harris & Associates

+

Political consultancy firm working with Democratic officials across Western New York. Specialties in campaign finance law and fundraising strategy.

+
    +
  • +

    Campaign Finance Intern

    +

    August 2017 to September 2017

    +
      +
    • Aggregating data from internal operations and external databases into actionable samples
    • +
    • Scraping contribution disclosures from government websites and PDF filings
    • +
    • Organizing fundraisers for elected officials including Monroe and Erie County Democratic Committee Chairs, Monroe County Sheriff Todd Baxter, and the late Congresswoman Louise Slaughter
    • +
    +
  • +
+

University of Rochester

+

Research university established in 1850. The largest single employer in the Rochester area. I worked under the Record Verification and Workers’ Compensation teams.

+
    +
  • +

    Human Resources Office Assistant

    +

    May 2016 to May 2017

    +
      +
    • Maintaining primary copies of all employment records
    • +
    • Managing flow of protected files throughout HR department
    • +
    • Administering multiple modernization and digitization projects
    • +
    +
  • +
+

Cancer Care of Western New York

+

Cancer treatment facility based in Buffalo. I worked with Dr. Roehmholdt as he explored publishing a case report on penile melanoma.

+
    +
  • +

    Research Assistant

    +

    May 2013 to August 2013

    +
      +
    • Researching the academic literature on penile melanoma
    • +
    • Data entry of patient records
    • +
    • Scrubbing Protected Health Information (PHI) from patient records in preparation for sharing with external principal researchers
    • +
    +
  • +
+
+

Education

+

University of Rochester

+
    +
  • +

    B.A. Political Science, Economics

    +

    August 2013 to May 2017

    +
      +
    • Overall GPA of 3.43
    • +
    • Represented the student body for three years in varying levels of student government, including multiple executive appointments
    • +
    • Focuses in: +
        +
      • Mathematical modeling (Econometrics, Game Theory)
      • +
      • Interaction of government and the private sector (Public Finance, Political Economy, Health Economics, Economics of Globalization)
      • +
      +
    • +
    +
  • +
+

南山大学 (Nanzan University)

+
    +
  • +

    Intensive Japanese Language Studies Program

    +

    January 2016 to May 2016

    +
      +
    • Intensive study of the Japanese language in a Japanese university
    • +
    +
  • +
+
+
+ diff --git a/static/files/dominic-ricottone.pdf b/static/files/dominic-ricottone.pdf new file mode 100644 index 0000000000000000000000000000000000000000..97c7c208e3cad49feaceb3125d12ea63e3bc9c4f GIT binary patch literal 73883 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]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 00)){var b=this;a('
').appendTo(a("body")),this.$lightbox=a("#lightbox"),this.$overlay=a("#lightboxOverlay"),this.$outerContainer=this.$lightbox.find(".lb-outerContainer"),this.$container=this.$lightbox.find(".lb-container"),this.$image=this.$lightbox.find(".lb-image"),this.$nav=this.$lightbox.find(".lb-nav"),this.containerPadding={top:parseInt(this.$container.css("padding-top"),10),right:parseInt(this.$container.css("padding-right"),10),bottom:parseInt(this.$container.css("padding-bottom"),10),left:parseInt(this.$container.css("padding-left"),10)},this.imageBorderWidth={top:parseInt(this.$image.css("border-top-width"),10),right:parseInt(this.$image.css("border-right-width"),10),bottom:parseInt(this.$image.css("border-bottom-width"),10),left:parseInt(this.$image.css("border-left-width"),10)},this.$overlay.hide().on("click",function(){return b.end(),!1}),this.$lightbox.hide().on("click",function(c){"lightbox"===a(c.target).attr("id")&&b.end()}),this.$outerContainer.on("click",function(c){return"lightbox"===a(c.target).attr("id")&&b.end(),!1}),this.$lightbox.find(".lb-prev").on("click",function(){return 0===b.currentImageIndex?b.changeImage(b.album.length-1):b.changeImage(b.currentImageIndex-1),!1}),this.$lightbox.find(".lb-next").on("click",function(){return b.currentImageIndex===b.album.length-1?b.changeImage(0):b.changeImage(b.currentImageIndex+1),!1}),this.$nav.on("mousedown",function(a){3===a.which&&(b.$nav.css("pointer-events","none"),b.$lightbox.one("contextmenu",function(){setTimeout(function(){this.$nav.css("pointer-events","auto")}.bind(b),0)}))}),this.$lightbox.find(".lb-loader, .lb-close").on("click",function(){return b.end(),!1})}},b.prototype.start=function(b){function c(a){d.album.push({alt:a.attr("data-alt"),link:a.attr("href"),title:a.attr("data-title")||a.attr("title")})}var d=this,e=a(window);e.on("resize",a.proxy(this.sizeOverlay,this)),this.sizeOverlay(),this.album=[];var f,g=0,h=b.attr("data-lightbox");if(h){f=a(b.prop("tagName")+'[data-lightbox="'+h+'"]');for(var i=0;ik||g.height>j)&&(g.width/k>g.height/j?(i=k,h=parseInt(g.height/(g.width/i),10),f.width(i),f.height(h)):(h=j,i=parseInt(g.width/(g.height/h),10),f.width(i),f.height(h))),c.sizeContainer(f.width(),f.height())},g.src=this.album[b].link,this.currentImageIndex=b},b.prototype.sizeOverlay=function(){var b=this;setTimeout(function(){b.$overlay.width(a(document).width()).height(a(document).height())},0)},b.prototype.sizeContainer=function(a,b){function c(){d.$lightbox.find(".lb-dataContainer").width(g),d.$lightbox.find(".lb-prevLink").height(h),d.$lightbox.find(".lb-nextLink").height(h),d.$overlay.focus(),d.showImage()}var d=this,e=this.$outerContainer.outerWidth(),f=this.$outerContainer.outerHeight(),g=a+this.containerPadding.left+this.containerPadding.right+this.imageBorderWidth.left+this.imageBorderWidth.right,h=b+this.containerPadding.top+this.containerPadding.bottom+this.imageBorderWidth.top+this.imageBorderWidth.bottom;e!==g||f!==h?this.$outerContainer.animate({width:g,height:h},this.options.resizeDuration,"swing",function(){c()}):c()},b.prototype.showImage=function(){this.$lightbox.find(".lb-loader").stop(!0).hide(),this.$lightbox.find(".lb-image").fadeIn(this.options.imageFadeDuration),this.updateNav(),this.updateDetails(),this.preloadNeighboringImages(),this.enableKeyboardNav()},b.prototype.updateNav=function(){var a=!1;try{document.createEvent("TouchEvent"),a=!!this.options.alwaysShowNavOnTouchDevices}catch(a){}this.$lightbox.find(".lb-nav").show(),this.album.length>1&&(this.options.wrapAround?(a&&this.$lightbox.find(".lb-prev, .lb-next").css("opacity","1"),this.$lightbox.find(".lb-prev, .lb-next").show()):(this.currentImageIndex>0&&(this.$lightbox.find(".lb-prev").show(),a&&this.$lightbox.find(".lb-prev").css("opacity","1")),this.currentImageIndex1&&this.options.showImageNumberLabel){var c=this.imageCountLabel(this.currentImageIndex+1,this.album.length);this.$lightbox.find(".lb-number").text(c).fadeIn("fast")}else this.$lightbox.find(".lb-number").hide();this.$outerContainer.removeClass("animating"),this.$lightbox.find(".lb-dataContainer").fadeIn(this.options.resizeDuration,function(){return a.sizeOverlay()})},b.prototype.preloadNeighboringImages=function(){if(this.album.length>this.currentImageIndex+1){(new Image).src=this.album[this.currentImageIndex+1].link}if(this.currentImageIndex>0){(new Image).src=this.album[this.currentImageIndex-1].link}},b.prototype.enableKeyboardNav=function(){this.$lightbox.on("keyup.keyboard",a.proxy(this.keyboardAction,this)),this.$overlay.on("keyup.keyboard",a.proxy(this.keyboardAction,this))},b.prototype.disableKeyboardNav=function(){this.$lightbox.off(".keyboard"),this.$overlay.off(".keyboard")},b.prototype.keyboardAction=function(a){var b=a.keyCode;27===b?(a.stopPropagation(),this.end()):37===b?0!==this.currentImageIndex?this.changeImage(this.currentImageIndex-1):this.options.wrapAround&&this.album.length>1&&this.changeImage(this.album.length-1):39===b&&(this.currentImageIndex!==this.album.length-1?this.changeImage(this.currentImageIndex+1):this.options.wrapAround&&this.album.length>1&&this.changeImage(0))},b.prototype.end=function(){this.disableKeyboardNav(),a(window).off("resize",this.sizeOverlay),this.$lightbox.fadeOut(this.options.fadeDuration),this.$overlay.fadeOut(this.options.fadeDuration),this.options.disableScrolling&&a("body").removeClass("lb-disable-scrolling")},new b}); +//# sourceMappingURL=lightbox.min.map \ No newline at end of file -- 2.45.2