- {{post.created_timestamp | simpledate}}
+ {{post.created_timestamp | simpledate}} {{post.created_timestamp}}
{{getPostTitle()}}
diff --git a/src/app/components/posts/posts.component.ts b/src/app/components/posts/posts.component.ts
index 5bbb5f2..8fb1037 100644
--- a/src/app/components/posts/posts.component.ts
+++ b/src/app/components/posts/posts.component.ts
@@ -90,8 +90,13 @@ export class PostsComponent implements OnInit, OnDestroy {
}
}
// sort the posts
- res.sort((p1, p2) => p2.created_timestamp.getMilliseconds() - p1.created_timestamp.getMilliseconds());
+ console.log('sorting posts!');
+ res.sort((p1, p2) => {
+ console.log(p1.created_timestamp.getTime()+' '+p2.created_timestamp.getTime())
+ return p2.created_timestamp.getTime() - p1.created_timestamp.getTime();
+ });
+ //set the result! this will update the list of the /posts page
this.filteredPosts = res;
}
diff --git a/src/assets/embedded/phdpresentation/CHANGELOG.md b/src/assets/embedded/phdpresentation/CHANGELOG.md
new file mode 100644
index 0000000..06a515a
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/CHANGELOG.md
@@ -0,0 +1,151 @@
+
+VERSION HISTORY
+-----------------
+
+### 0.5.3 ([browse](http://github.com/bartaz/impress.js/tree/0.5.3), [zip](http://github.com/bartaz/impress.js/zipball/0.5.3), [tar](http://github.com/bartaz/impress.js/tarball/0.5.3))
+
+#### BUGFIX RELEASE
+
+Version 0.5 introduced events including `impress:stepenter`, but this event was not triggered properly in some
+specific transition types (for example when only scale was changing between steps). It was caused by the fact that
+in such cases expected `transitionend` event was not triggered.
+
+This version fixes this issue. Unfortunately modern `transitionend` event is no longer used to detect when the
+transition has finished, but old school (and more reliable) `setTimeout` is used.
+
+
+### 0.5.2 ([browse](http://github.com/bartaz/impress.js/tree/0.5.2), [zip](http://github.com/bartaz/impress.js/zipball/0.5.2), [tar](http://github.com/bartaz/impress.js/tarball/0.5.2))
+
+#### DOCUMENTATION RELEASE
+
+More descriptive comments added to demo CSS and impress.js source file, so now not only `index.html` is worth reading ;)
+
+
+### 0.5.1 ([browse](http://github.com/bartaz/impress.js/tree/0.5.1), [zip](http://github.com/bartaz/impress.js/zipball/0.5.1), [tar](http://github.com/bartaz/impress.js/tarball/0.5.1))
+
+#### BUGFIX RELEASE
+
+Changes in version 0.5 introduced a bug (#126) that was preventing clicks on links (or any clickable elements) on
+currently active step. This release fixes this issue.
+
+
+### 0.5 ([browse](http://github.com/bartaz/impress.js/tree/0.5), [zip](http://github.com/bartaz/impress.js/zipball/0.5), [tar](http://github.com/bartaz/impress.js/tarball/0.5))
+
+#### CHANGELOG
+
+* API changed, so that `impress()` function no longer automatically initialize presentation; new method called `init`
+ was added to API and it should be used to start the presentation
+* event `impress:init` is triggered on root presentation element (`#impress` by default) when presentation is initialized
+* new CSS classes were added: `impress-disabled` is added to body element by the impress.js script and it's changed to
+ `impress-enabled` when `init()` function is called
+* events added when step is entered and left - custom `impress:stepenter` and `impress:stepleave` events are triggered
+ on step elements and can be handled like any other DOM events (with `addEventListener`)
+* additional `past`, `present` and `future` classes are added to step elements
+ - `future` class appears on steps that were not yet visited
+ - `present` class appears on currently visible step - it's different from `active` class as `present` class
+ is added when transition finishes (step is entered)
+ - `past` class is added to already visited steps (when the step is left)
+* and good news, `goto()` API method is back! it seems that `goto` **was** a future reserved word but isn't anymore,
+ so we can use this short and pretty name instead of camelCassy `stepTo` - and yes, that means API changed again...
+* additionally `goto()` method now supports new types of parameters:
+ - you can give it a number of step you want to go to: `impress().goto(7)`
+ - or its id: `impress().goto("the-best-slide-ever")`
+ - of course DOM element is still acceptable: `impress().goto( document.getElementById("overview") )`
+* and if it's not enough, `goto()` also accepts second parameter to define the transition duration in ms, for example
+ `impress().goto("make-it-quick", 300)` or `impress().goto("now", 0)`
+
+#### UPGRADING FROM PREVIOUS VERSIONS
+
+In current version calling `impress()` doesn't automatically initialize the presentation. You need to call `init()`
+function from the API. So in a place were you called `impress()` to initialize impress.js simply change this call
+to `impress().init()`.
+
+Version 0.4 changed `goto` API method into `stepTo`. It turned out that `goto` is not a reserved word anymore, so it
+can be used in JavaScript. That's why version 0.5 brings it back and removes `stepTo`.
+
+So if you have been using version 0.4 and have any reference to `stepTo` API method make sure to change it to `goto`.
+
+
+### 0.4.1 ([browse](http://github.com/bartaz/impress.js/tree/0.4.1), [zip](http://github.com/bartaz/impress.js/zipball/0.4.1), [tar](http://github.com/bartaz/impress.js/tarball/0.4.1))
+
+#### BUGFIX RELEASE
+
+Changes is version 0.4 introduced a bug causing JavaScript errors being thrown all over the place in fallback mode.
+This release fixes this issue.
+
+It also adds a flag `impress.supported` that can be used in JavaScript to check if impress.js is supported in the browser.
+
+
+### 0.4 ([browse](http://github.com/bartaz/impress.js/tree/0.4), [zip](http://github.com/bartaz/impress.js/zipball/0.4), [tar](http://github.com/bartaz/impress.js/tarball/0.4))
+
+#### CHANGELOG
+
+* configuration options on `#impress` element: `data-perspective` (in px, defaults so 1000),
+ `data-transition-duration` (in ms, defaults to 1000)
+* automatic scaling to fit window size, with configuration options: `data-width` (in px, defaults to 1024),
+ `data-height` (in px, defaults to 768), `max-scale` (defaults to 1), `min-scale` (defaults to 0)
+* `goto` API function was renamed to `stepTo` because `goto` is a future reserved work in JavaScript,
+ so **please make sure to update your code**
+* fallback `impress-not-supported` class is now set on `body` element instead of `#impress` element and it's
+ replaced with `impress-supported` when browser supports all required features
+* classes `step-ID` used to indicate progress of the presentation are now renamed to `impress-on-ID` and are
+ set on `body` element, so **please make sure to update your code**
+* basic validation of configuration options
+* couple of typos and bugs fixed
+* favicon added ;)
+
+#### UPGRADING FROM PREVIOUS VERSIONS
+
+If in your custom JavaScript code you were using `goto()` function from impress.js API make sure to change it
+to `stepTo()`.
+
+If in your CSS you were using classes based on currently active step with `step-` prefix, such as `step-bored`
+(where `bored` is the id of the step element) make sure to change it to `impress-on-` prefix
+(for example `impress-on-bored`). Also in previous versions these classes were assigned to `#impress` element
+and now they are added to `body` element, so if your CSS code depends on this, it also should be updated.
+
+Same happened to `impress-not-supported` class name - it was moved from `#impress` element to `body`, so update
+your CSS if it's needed.
+
+#### NOTE ON BLACKBERRY PLAYBOOK
+
+Changes and fixes added in this version have broken the experience on Blackberry Playbook with OS in version 1.0.
+It happened due to a bug in the Playbook browser in this version. Fortunately in version 2.0 of Playbook OS this
+bug was fixed and impress.js works fine.
+
+So currently, on Blackberry Playbook, impress.js work only with latest OS. Fortunately, [it seems that most of the
+users](http://twitter.com/n_adam_stanley/status/178188611827679233) [are quite quick with updating their devices]
+(http://twitter.com/brcewane/status/178230406196379648)
+
+
+### 0.3 ([browse](http://github.com/bartaz/impress.js/tree/0.3), [zip](http://github.com/bartaz/impress.js/zipball/0.3), [tar](http://github.com/bartaz/impress.js/tarball/0.3))
+
+#### CHANGELOG
+
+* minor CSS 3D fixes
+* basic API to control the presentation flow from JavaScript
+* touch event support
+* basic support for iPad (iOS 5 and iOS 4 with polyfills) and Blackberry Playbook
+
+#### UPGRADING FROM PREVIOUS VERSIONS
+
+Because API was introduced the way impress.js script is initialized was changed a bit. You not only have to include
+`impress.js` script file, but also call `impress()` function.
+
+See the source of `index.html` for example and more details.
+
+
+### 0.2 ([browse](http://github.com/bartaz/impress.js/tree/0.2), [zip](http://github.com/bartaz/impress.js/zipball/0.2), [tar](http://github.com/bartaz/impress.js/tarball/0.2))
+
+* tutorial/documentation added to `index.html` source file
+* being even more strict with strict mode
+* code clean-up
+* couple of small bug-fixes
+
+
+### 0.1 ([browse](http://github.com/bartaz/impress.js/tree/0.1), [zip](http://github.com/bartaz/impress.js/zipball/0.1), [tar](http://github.com/bartaz/impress.js/tarball/0.1))
+
+First release.
+
+Contains basic functionality for step placement and transitions between them
+with simple fallback for non-supporting browsers.
diff --git a/src/assets/embedded/phdpresentation/DOCUMENTATION.md b/src/assets/embedded/phdpresentation/DOCUMENTATION.md
new file mode 100644
index 0000000..a26b1c3
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/DOCUMENTATION.md
@@ -0,0 +1,322 @@
+# Reference API
+
+## HTML
+
+### Root Element
+
+impress.js requires a Root Element. All the content of the presentation will be created inside that element. It is not recommended to manipulate any of the styles, attributes or classes that are created by impress.js inside the Root Element after initialization.
+
+**Example:**
+
+```html
+
+```
+
+### Step Element
+
+A Step Element is an element that contains metadata that defines how it is going to be presented in the screen.
+A Step Element should contain a `.step` class and an optional `id` attribute.
+The content represents an html fragment that will be positioned at the center of the camera.
+In the Step Element, you can define a specific set of default attributes and positioning, that are documented below.
+
+**Example:**
+
+```html
+"
+ ],
+ "homepage": "https://www.muicss.com",
+ "description": "MUI is a lightweight HTML/CSS/JS framework that follows Google's Material Design guidelines.",
+ "main": [
+ "packages/cdn/css/mui.css",
+ "packages/cdn/js/mui.js"
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/muicss/mui.git"
+ },
+ "keywords": [
+ "material design",
+ "frontend framework",
+ "html, css, and js framework",
+ "email css template"
+ ],
+ "dependencies": {},
+ "ignore": [
+ "**/.*",
+ "build-targets",
+ "e2e-tests",
+ "examples",
+ "gulpfile.js",
+ "node_modules",
+ "package.json",
+ "test"
+ ],
+ "_release": "0.9.9",
+ "_resolution": {
+ "type": "version",
+ "tag": "0.9.9",
+ "commit": "7206b589fe201447f4744a813b6c11e825b4d3f0"
+ },
+ "_source": "https://github.com/muicss/mui.git",
+ "_target": "^0.9.9",
+ "_originalSource": "mui",
+ "_direct": true
+}
\ No newline at end of file
diff --git a/src/assets/embedded/phdpresentation/bower_components/mui/AUTHORS.txt b/src/assets/embedded/phdpresentation/bower_components/mui/AUTHORS.txt
new file mode 100644
index 0000000..c9527f2
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/bower_components/mui/AUTHORS.txt
@@ -0,0 +1,10 @@
+Authors ordered by first contribution.
+
+Andres Morey
+Matt Bogado
+Michiel Schriever
+HjtHjtHjt
+Aron Jones
+Tushar Pokle
+pospi
+Arthur Kay <@arthurakay>
\ No newline at end of file
diff --git a/src/assets/embedded/phdpresentation/bower_components/mui/CHANGELOG.md b/src/assets/embedded/phdpresentation/bower_components/mui/CHANGELOG.md
new file mode 100644
index 0000000..7d54804
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/bower_components/mui/CHANGELOG.md
@@ -0,0 +1,569 @@
+# MUI Changelog
+
+## 0.9.9 - February 15, 2017
+
+* Bumped version number
+
+## 0.9.9-rc2 - January 22, 2017
+
+* Added more fine-grained CSS state classes to input and textfield controls
+ * `.mui--is-untouched` - Control instance has not lost focus
+ * `.mui--is-touched` - Control instance has lost focus
+ * `.mui--is-pristine` - User has not interacted with control instance
+ * `.mui--is-dirty` - User has interacted with control instance
+ * `.mui--is-empty` - Control instance is empty
+ * `.mui--is-not-empty` - Control instance is not empty
+* Skipping replacement of `untouched`/`touched` CSS states on window blur event
+* Removed hard coded anchor tag :hover color
+
+## 0.9.9-rc1 - January 16, 2017
+
+* Minimized global CSS footprint (mui.css)
+ * Includes Normalize.css
+ * Sets font styles for ``, `` tags
+ * Sets style for naked `` tags
+ * Sets style for `
+
+```
+
+#### 2D Coordinates Positioning (data-x, data-y)
+
+Define the pixel based position in which the **center** of the [Step Element](#step-element) will be positioned inside the infinite canvas.
+
+**Example:**
+
+```html
+Aren’t you just bored with all those slides-based presentations?+
+
+```
+
+#### 2D Scaling (data-scale)
+
+Defines the scaling multiplier of the [Step Element](#step-element) relative to other Step Elements. For example, `data-scale="4"` means that the element will appear to be 4 times larger than the others. From the presentation and transitions point of view, it means that it will have to be scaled down (4 times) to make it back to its correct size.
+
+**Example:**
+
+```html
+Aren’t you just bored with all those slides-based presentations?+
+ then you should try
+
+```
+
+#### 2D Rotation (data-rotate)
+
+Represents the amount of clockwise rotation of the element relative to 360 degrees.
+
+**Example:**
+
+```html
+impress.js*
+ * no rhyme intended +
+
+```
+
+
+#### 3D Coordinates Positioning (data-z)
+
+Define the pixel based position in which the **center** of the [Step Element](#step-element) will be positioned inside the infinite canvas on the third dimension (Z) axis. For example, if we use `data-z="-3000"`, it means that the [Step Element](#step-element) will be positioned far away from the camera (by 3000px).
+
+**Example:**
+
+```html
+
+ It’s a presentation tool
+ inspired by the idea behind prezi.com
+ and based on the power of CSS3 transforms and transitions in modern browsers.
+
+
+```
+
+#### 3D Rotation (data-rotate-x, data-rotate-y, data-rotate-z)
+
+You can not only position a [Step Element](#step-element) in 3D, but also rotate it around any axis.
+
+**Example:**
+
+The example below will get rotated by -40 degrees (40 degrees anticlockwise) around X axis and 10 degrees (clockwise) around Y axis.
+
+You can of course rotate it around Z axis with `data-rotate-z` - it has exactly the same effect as `data-rotate` (these two are basically aliases).
+
+```HTML
+and tiny ideas
+
+
+```
+
+## CSS
+
+### 4D States (.past, .present and .future classes)
+
+The `.future` class is added to all [Step Elements](#step-element) that haven't been visited yet.
+
+**Example:**
+
+```CSS
+.future {
+ display: none;
+}
+```
+
+The `.present` class is added to the [Step Element](#step-element) that is currently at the center of the camera. This is useful to create animations inside the step once the camera navigates to it.
+
+**Example:**
+
+```CSS
+.present .rotating {
+ transform: rotate(-10deg);
+ transition-delay: 0.25s;
+}
+```
+
+The `.past` class is added to all [Step Elements](#step-element) that have been visited at least once.
+
+**Example:**
+
+```CSS
+.past {
+ display: none;
+}
+```
+
+### Current Active Step (.active class)
+
+The `.active` class is added to the [Step Element](#step-element) that is currently visible at the center of the camera.
+
+**Example:**
+
+```CSS
+.step {
+ opacity: 0.3;
+ transition: opacity 1s;
+}
+.step.active {
+ opacity: 1
+}
+```
+
+At the same time, the `impress-on-*` class is added to the body element, the class name represents the active [Step Element](#step-element) id. This allows for custom global styling, since you can't match a CSS class backwards from the active [Step Element](#step-element) to the `body`.
+
+**Example:**
+
+```CSS
+.impress-on-overview .step {
+ opacity: 1;
+ cursor: pointer;
+}
+.impress-on-step-1,
+.impress-on-step-2,
+.impress-on-step-3 {
+ background: LightBlue;
+}
+```
+
+### Progressive Enhancement (.impress-not-supported class)
+
+The `.impress-not-supported` class is added to the `body` element if the browser doesn't support the features required by impress.js to work, it is useful to apply some fallback styles in the CSS.
+
+It's not necessary to add it manually on the `body` element. If the script detects that the browser lacks important features it will add this class.
+
+It is recommended to add the class manually to the `body` element though, because that means that users without JavaScript will also get fallback styles. When impress.js script detects that the browser supports all required features, the `.impress-not-support` class will be removed from the `body` element.
+
+**Example:**
+
+```CSS
+.impress-not-supported .step {
+ display: inline-block;
+}
+```
+
+## JavaScript
+
+### impress( [ id ] )
+
+A factory function that creates the [ImpressAPI](#impressapi).
+
+Accepts a [`String`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) that represents the id of the root element in the page. If omitted, impress.js will lookup for the element with the id "impress" by default.
+
+**Example:**
+
+```JavaScript
+var impressAPI = impress( "root" );
+```
+
+### ImpressAPI
+
+The main impress.js API that handles common operations of impress.js, listed below.
+
+#### .init()
+
+Initializes impress.js globally in the page. Only one instance of impress.js is supported per document.
+
+**Example:**
+
+```JavaScript
+impress().init();
+```
+
+Triggers the `impress:init` event in the [Root Element](#root-element) after the presentation is initialized.
+
+**Example:**
+
+```JavaScript
+var rootElement = document.getElementById( "impress" );
+rootElement.addEventListener( "impress:init", function() {
+ console.log( "Impress init" );
+});
+impress().init();
+```
+
+#### .next()
+
+Navigates to the next step of the presentation using the [`goto()` function](#impressgotostepindexstepelementidstepelement-duration).
+
+**Example:**
+
+```JavaScript
+var api = impress();
+api.init();
+api.next();
+```
+
+#### impress().prev()
+
+Navigates to the previous step of the presentation using the [`goto()` function](#impressgotostepindexstepelementidstepelement-duration).
+
+**Example:**
+
+```JavaScript
+var api = impress();
+api.init();
+api.prev();
+```
+
+#### impress().goto( stepIndex | stepElementId | stepElement, [ duration ] )
+
+Accepts a [`Number`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) that represents the step index.
+
+Navigates to the step given the provided step index.
+
+**Example:**
+
+```JavaScript
+var api = impress();
+api.init();
+api.goto(7);
+```
+
+Accepts a [`String`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) that represents the [Step Element](#step-element) id.
+
+Navigates to the step given the provided [Step Element](#step-element) id.
+
+**Example:**
+
+```JavaScript
+var api = impress();
+api.init();
+api.goto( "overview" );
+```
+
+Accepts an [`HTMLElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) that represents the [Step Element](#step-element).
+
+Navigates to the step given the provided [Step Element](#step-element).
+
+**Example:**
+
+```JavaScript
+var overview = document.getElementById( "overview" );
+var api = impress();
+api.init();
+api.goto( overview );
+```
+
+Accepts an optional [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) in the last argument that represents the duration of the transition in milliseconds. If not provided, the default transition duration for the presentation will be used.
+
+Triggers the `impress:stepenter` event in the [Root Element](#root-element) when the presentation navigates to the target [Step Element](#step-element).
+
+**Example:**
+
+```JavaScript
+var rootElement = document.getElementById( "impress" );
+rootElement.addEventListener( "impress:stepenter", function() {
+ var currentStep = document.querySelector( ".present" );
+ console.log( "Entered the Step Element '" + currentStep.id + "'" );
+});
+```
+
+Triggers the `impress:stepleave` event in the [Root Element](#root-element) when the presentation navigates away from the current [Step Element](#step-element).
+
+**Example:**
+```JavaScript
+var rootElement = document.getElementById( "impress" );
+rootElement.addEventListener( "impress:stepleave", function(event) {
+ var currentStep = event.target
+ console.log( "Left the Step Element '" + currentStep.id + "'" );
+});
+```
+
+# Improve The Docs
+
+Did you found something that can be improved? Then [create an issue](https://github.com/impress/impress.js/issues/new) so that we can discuss it!
\ No newline at end of file
diff --git a/src/assets/embedded/phdpresentation/LICENSE b/src/assets/embedded/phdpresentation/LICENSE
new file mode 100644
index 0000000..2d2b0e4
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2011-2016 Bartek Szopka
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/src/assets/embedded/phdpresentation/README.md b/src/assets/embedded/phdpresentation/README.md
new file mode 100644
index 0000000..4866f52
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/README.md
@@ -0,0 +1,76 @@
+impress.js
+============
+
+[](https://circleci.com/gh/impress/impress.js)
+
+It's a presentation framework based on the power of CSS3 transforms and
+transitions in modern browsers and inspired by the idea behind prezi.com.
+
+**WARNING**
+
+impress.js may not help you if you have nothing interesting to say ;)
+
+
+HOW TO USE IT
+---------------
+
+[Use the source](index.html), Luke ;)
+
+The [HTML source code](index.html) serves as a good example usage and contains comments explaning various features of impress.js. For more information about styling you can look into [CSS code](css/impress-demo.css) which shows how classes provided by impress.js can be used. Last but not least [JavaScript code of impress.js](js/impress.js) has some useful comments if you are interested in how everything works. Feel free to explore!
+
+If you want more straightforward reference documentation of all impress.js features and API you can find it in [DOCUMENTATION.md](DOCUMENTATION.md).
+
+
+EXAMPLES AND OTHER LEARNING RESOURCES
+---------------------------------------
+
+### Official demo
+
+[impress.js demo](http://impress.github.io/impress.js/) by [@bartaz](http://twitter.com/bartaz)
+
+### Examples and demos
+
+More examples and demos can be found on [Examples and demos wiki page](http://github.com/impress/impress.js/wiki/Examples-and-demos).
+
+Feel free to add your own example presentations (or websites) there.
+
+### Other tutorials and learning resources
+
+If you want to learn even more there is a [list of tutorials and other learning resources](https://github.com/impress/impress.js/wiki/impress.js-tutorials-and-other-learning-resources)
+on the wiki, too.
+
+There is also a book available about [Building impressive presentations with impress.js](http://www.packtpub.com/building-impressive-presentations-with-impressjs/book) by Rakhitha Nimesh Ratnayake.
+
+
+WANT TO CONTRIBUTE?
+---------------------
+
+Please, read the [contributing guidelines](.github/CONTRIBUTING.md) on how to create [Issues](.github/CONTRIBUTING.md#issues) and [Pull Requests](.github/CONTRIBUTING.md#pull-requests).
+
+**Note:** The team has changed, so there will be many changes in the upcoming versions.
+If you need informations about versions, check the [changelog](CHANGELOG.md).
+
+
+ABOUT THE NAME
+----------------
+
+impress.js name in [courtesy of @skuzniak](http://twitter.com/skuzniak/status/143627215165333504).
+
+It's an (un)fortunate coincidence that a Open/LibreOffice presentation tool is called Impress ;)
+
+Reference API
+--------------
+
+See the [Reference API](DOCUMENTATION.md)
+
+BROWSER SUPPORT
+-----------------
+
+This project supports only the major [evergreen](http://eisenbergeffect.bluespire.com/evergreen-browsers/) desktop browsers that have implemented:
+
+* [DataSet API](http://caniuse.com/#search=dataset)
+* [ClassList API](http://caniuse.com/#search=classlist)
+* [CSS 3D Transforms](http://caniuse.com/#search=css%203d)
+* [CSS Transitions](http://caniuse.com/#search=css%20transition)
+
+Copyright 2011-2016 Bartek Szopka - Released under the MIT [License](LICENSE)
diff --git a/src/assets/embedded/phdpresentation/apple-touch-icon.png b/src/assets/embedded/phdpresentation/apple-touch-icon.png
new file mode 100644
index 0000000..f610016
Binary files /dev/null and b/src/assets/embedded/phdpresentation/apple-touch-icon.png differ
diff --git a/src/assets/embedded/phdpresentation/bower.json b/src/assets/embedded/phdpresentation/bower.json
new file mode 100644
index 0000000..34ae420
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/bower.json
@@ -0,0 +1,17 @@
+{
+ "name": "impress-js",
+ "description": "It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com",
+ "homepage": "https://github.com/bartaz/impress.js",
+ "license" : ["http://bartaz.mit-license.org/", "http://www.gnu.org/licenses/"],
+ "main": [
+ "./js/impress.js"
+ ],
+ "keywords": [
+ "slideshow",
+ "css3"
+ ],
+ "author": {
+ "name": "Bartek Szopka",
+ "web": "http://bartaz.github.com"
+ }
+}
diff --git a/src/assets/embedded/phdpresentation/bower_components/mui/.bower.json b/src/assets/embedded/phdpresentation/bower_components/mui/.bower.json
new file mode 100644
index 0000000..2e8a99d
--- /dev/null
+++ b/src/assets/embedded/phdpresentation/bower_components/mui/.bower.json
@@ -0,0 +1,45 @@
+{
+ "name": "mui",
+ "version": "0.9.9",
+ "license": "MIT",
+ "authors": [
+ "Andres Morey + have + you + noticed + it’s + in + 3D*? +
+ * beat that, prezi ;) +`, `
- `, `
- `, ``, ``, `
`, `
`,
+ ``, etc.
+ * No longer sets `box-sizing: border-box` CSS property globally
+ * No longer modifies styles for ``, `
`, `
`, `
`, `