Compare commits
143 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fe254ea99f | |||
| 4054ed9c30 | |||
| 1c63409ce5 | |||
| 7ba2060238 | |||
| b3b01021d7 | |||
| e8565650e4 | |||
| fd12775e86 | |||
| d11559a25c | |||
| 589ef5856d | |||
| d4a4c43383 | |||
| edde33de47 | |||
| 705b8ec6a6 | |||
| a9435022d5 | |||
| 3db55ad139 | |||
| d140fa49c1 | |||
| e45b66fb80 | |||
| 3507f37d74 | |||
| b029976f54 | |||
| 17c9e49341 | |||
| 620e047b6f | |||
| f680cdcee2 | |||
| 13bfa46c01 | |||
| f8be8641f7 | |||
| 01a33d883c | |||
| e3eaff1edf | |||
| 1c71708c5f | |||
| 1b12cb345b | |||
| 19ffe50215 | |||
| 30add3077b | |||
| 9ef5c88bfa | |||
| dd00a5d202 | |||
| 4b49b0d52d | |||
| c50775d788 | |||
| 3160a81b68 | |||
| b5dcb8704f | |||
| 070e26f984 | |||
| 77fff6978f | |||
| 57613b8a75 | |||
| b0c15d2841 | |||
| 229a1a5d91 | |||
| 6dab6dc9ca | |||
| a79b55e66b | |||
| fe8242c26b | |||
| bc739d8b44 | |||
| 42b7d25838 | |||
| 885f4ff836 | |||
| 6e1797537f | |||
| d5761dbcd1 | |||
| 9707c06d1b | |||
| 8040e55a87 | |||
| 755281570b | |||
| 78c327e3f3 | |||
| 1e5a959f25 | |||
| e1529e7f8f | |||
| 47123a7d0a | |||
| a0f27739b7 | |||
| c806b10f95 | |||
| a66a6e2f63 | |||
| 1b362dd1cb | |||
| 93474811f1 | |||
| 6f50fad596 | |||
| 538834dcc3 | |||
| 389ddaabb7 | |||
| c7d2d53902 | |||
| 367a98be56 | |||
| 2128fb883a | |||
| efa0659742 | |||
| 729da39c87 | |||
| 7e82ea86ec | |||
| ddac31b8bc | |||
| 491b5527ae | |||
| e63a9d4b16 | |||
| 6dac0ad4e8 | |||
| 19a737a770 | |||
| c083576ef3 | |||
| 82ba42b1aa | |||
| f39bbc2979 | |||
| f04cf5bb40 | |||
| 12727c7a50 | |||
| 22a382ddad | |||
| 4e00102bad | |||
| 75039c5198 | |||
| cf048ebc01 | |||
| ec6df31b0c | |||
| 9a36eea042 | |||
| e933ea81d7 | |||
| 7ffb0286e3 | |||
| 100fa68a15 | |||
| 612de0e016 | |||
| 427e5b91af | |||
| 3299aee2bd | |||
| 39c1df41a7 | |||
| 0208dd0d30 | |||
| 3f218e2a57 | |||
| d9b3c061f0 | |||
| 18540e1c63 | |||
| b3386c1048 | |||
| 205daf1d15 | |||
| 34a328174c | |||
| f7878c3e18 | |||
| 8e1c62059d | |||
| d1d10ff585 | |||
| 6c5d2ff92f | |||
| b0a3b770e3 | |||
| a077481678 | |||
| ea0cf71d2c | |||
| 26e2c56424 | |||
| 8accc7b73d | |||
| e0bea19825 | |||
| c8aa24964e | |||
| 8268cfb10c | |||
| 862be4bb14 | |||
| 6222b47b9b | |||
| 81105a6707 | |||
| 47dd314ef3 | |||
| 3332d80796 | |||
| d7e52fb645 | |||
| 2d9d5d6072 | |||
| 20c4d973eb | |||
| f66d032ddd | |||
| dda814805e | |||
| da9fb277ce | |||
| 1b22054b4c | |||
| 0b42afa893 | |||
| ed7ef6bf07 | |||
| f1d37c0407 | |||
| fb0bb7f3ec | |||
| a37e33c9c2 | |||
| b78d28244c | |||
| d16e35922a | |||
| 204ccc28a5 | |||
| f87caab388 | |||
| 985b02c49c | |||
| c9eedfcd56 | |||
| e8bce6ab10 | |||
| eca5122d1c | |||
| b2880f2b28 | |||
| b76dfce24e | |||
| 117c2936cf | |||
| c736e9553b | |||
| ac80ebd124 | |||
| 0b950089f0 | |||
| dcd1917189 |
@@ -55,7 +55,7 @@ OurUmbraco.Site/usercontrols/Deli/
|
||||
OurUmbraco.Site/App_Data/mail/
|
||||
OurUmbraco.Client/build/assets/
|
||||
OurUmbraco.Client/node_modules/
|
||||
npm-debug.log
|
||||
npm-debug.log
|
||||
OurUmbraco.Site/[Ww]eb.config
|
||||
OurUmbraco.Site/[Aa]ssets/css/style.min.css
|
||||
OurUmbraco.Site/[Aa]ssets/js/app.min.js
|
||||
@@ -63,4 +63,6 @@ OurUmbraco.Site/[Aa]ssets/js/app.min.js
|
||||
OurUmbraco.Site/App_Data/migrations/*.txt
|
||||
OurUmbraco.Site/apidocs/
|
||||
OurUmbraco.Site/App_Data/Documentation/
|
||||
OurUmbraco.Site/App_Data/NotificationTest/
|
||||
build/tools/node*
|
||||
wwwcache/
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<!doctype html>
|
||||
<!doctype html>
|
||||
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
|
||||
@@ -1104,8 +1104,8 @@ namespace TestProject.Controllers
|
||||
<option class="features" value="1150">our.umb dev forum - Features</option>
|
||||
<option class="general" value="5668">Core - General</option>
|
||||
<option class="4.1feedback" value="5669">Core - 4.1 feedback</option>
|
||||
<option class="generalquestions" value="73967">Umbraco as a Service - General Questions</option>
|
||||
<option class="issues" value="73968">Umbraco as a Service - Issues</option>
|
||||
<option class="generalquestions" value="73967">Umbraco Cloud - General Questions</option>
|
||||
<option class="issues" value="73968">Umbraco Cloud - Issues</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<!doctype html>
|
||||
<!doctype html>
|
||||
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
|
||||
@@ -624,8 +624,8 @@ grunt</pre>
|
||||
<div class="package-compatibility-versions">
|
||||
|
||||
<div class="versions">
|
||||
<span class="smiley joyous">Umbraco as a Service (Works)</span>
|
||||
<span class="smiley untested">Umbraco as a Service (Not working yet)</span>
|
||||
<span class="smiley joyous">Umbraco Cloud (Works)</span>
|
||||
<span class="smiley untested">Umbraco Cloud (Not working yet)</span>
|
||||
<span class="smiley untested"> 7.2.x (untested)</span>
|
||||
<span class="smiley happy"> 7.1.x (91%)</span>
|
||||
<span class="smiley joyous"> 7.0.x (100%)</span>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var gulp = require('gulp'),
|
||||
var gulp = require('gulp'),
|
||||
gutil = require('gulp-util'),
|
||||
sass = require('gulp-sass'),
|
||||
jshint = require('gulp-jshint'),
|
||||
@@ -10,7 +10,7 @@ var gulp = require('gulp'),
|
||||
imageMin = require('gulp-imagemin'),
|
||||
clean = require('gulp-clean'),
|
||||
svgmin = require('gulp-svgmin'),
|
||||
cmq = require('gulp-group-css-media-queries');
|
||||
cmq = require('gulp-combine-media-queries');
|
||||
rename = require('gulp-rename');
|
||||
|
||||
var settings = {
|
||||
@@ -57,7 +57,7 @@ gulp.task('css', function () {
|
||||
.pipe(sass())
|
||||
.on('error', gutil.log)
|
||||
.pipe(autoprefixer('last 1 version', 'ie 9', 'ios 7'))
|
||||
.pipe(cmq({log: true}))
|
||||
// .pipe(cmq({log: true}))
|
||||
.pipe(rename({suffix: '.min'}))
|
||||
.pipe(minifyCss())
|
||||
.pipe(gulp.dest(settings.build + '/assets/css'))
|
||||
|
||||
@@ -4,33 +4,28 @@
|
||||
"description": "Umbraco Our gulpjs config",
|
||||
"main": "gulpfile.js",
|
||||
"private": true,
|
||||
"dependencies": {},
|
||||
"dependencies": {
|
||||
},
|
||||
"devDependencies": {
|
||||
"gulp": "^3.9.1",
|
||||
"gulp-util": "3.0.x",
|
||||
"gulp-watch": "0.6.x",
|
||||
"gulp-minify-css": "1.1.x",
|
||||
"gulp-sass": "^2.2.0",
|
||||
"gulp-combine-media-queries": "0.2.x",
|
||||
"gulp-imagemin": "0.6.x",
|
||||
"gulp-autoprefixer": "^3.1.0",
|
||||
"gulp-clean": "*",
|
||||
"gulp-concat": "^2.6.0",
|
||||
"gulp-group-css-media-queries": "^1.1.0",
|
||||
"gulp-imagemin": "^3.0.2",
|
||||
"gulp-jshint": "^2.0.1",
|
||||
"gulp-minify-css": "^1.2.4",
|
||||
"gulp-rename": "*",
|
||||
"gulp-sass": "^2.3.2",
|
||||
"gulp-svgmin": "^1.2.2",
|
||||
"gulp-uglify": "^2.0.0",
|
||||
"gulp-util": "^3.0.7",
|
||||
"gulp-watch": "^4.3.9",
|
||||
"jshint": "^2.9.2",
|
||||
"jshint-stylish": "^2.2.0",
|
||||
"node-sass": "^3.8.0"
|
||||
"gulp-uglify": "^1.5.3",
|
||||
"gulp-jshint": "2.0.0",
|
||||
"gulp-concat": "2.2.x",
|
||||
"jshint-stylish": "0.2.x",
|
||||
"gulp-clean": "0.3.x",
|
||||
"gulp-svgmin": "0.4.x",
|
||||
"gulp-rename": "1.2.x"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "gulp build --verbose"
|
||||
},
|
||||
"author": "umbraco",
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "http://github.com/devdk/gulp-workflow.git"
|
||||
}
|
||||
"license": "MIT"
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
border: none !important;
|
||||
|
||||
padding: 20px;
|
||||
line-height: 1.5;
|
||||
|
||||
@include colorset(alertbar);
|
||||
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
button.button, .button, a.button {
|
||||
background: $color-blue;
|
||||
padding: 14px 40px;
|
||||
display: inline-block;
|
||||
padding: 12px 40px;
|
||||
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
text-decoration: none;
|
||||
border: none;
|
||||
border-radius: 36px;
|
||||
@@ -11,8 +15,7 @@ button.button, .button, a.button {
|
||||
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
font-size: 1rem;
|
||||
line-height: 1;
|
||||
font-size: 14px;
|
||||
|
||||
margin: 0;
|
||||
|
||||
@@ -103,7 +106,7 @@ button.button, .button, a.button {
|
||||
|
||||
|
||||
&.large {
|
||||
font-size: 1.2rem;
|
||||
font-size: 1.175rem;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,475 +1,476 @@
|
||||
.markdown-editor {
|
||||
position: fixed;
|
||||
bottom: -100%;
|
||||
max-height: 100%;
|
||||
width: 100%;
|
||||
padding: .2rem;
|
||||
background-color: rgba(darken(#fff, 1%), .94);
|
||||
box-shadow: 0px -2px 6px 0px rgba(0, 0, 0, 0.08);
|
||||
transition: bottom .6s $cubicSearch, top .6s $cubicSearch;
|
||||
z-index: 800;
|
||||
|
||||
@media (max-width: $xs) {
|
||||
top: 100%;
|
||||
padding: 20px 0 0;
|
||||
}
|
||||
|
||||
&.write {
|
||||
bottom:0px;
|
||||
overflow-y: scroll;
|
||||
visibility: visible;
|
||||
@media (max-width: $xs) {
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
&.mobile-preview {
|
||||
@media (max-width: $md) {
|
||||
#input-container {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#preview-container {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#preview-container {
|
||||
@media (max-width: $md) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
input, textarea, select{
|
||||
border: 2px solid #E4E8E9;
|
||||
color: #000;
|
||||
|
||||
&:focus, &:active{
|
||||
outline: none;
|
||||
border-color: $color-green;
|
||||
}
|
||||
|
||||
&.warning {
|
||||
border-color: $color-red !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.wmd-button {
|
||||
position: relative;
|
||||
margin-right: 15px;
|
||||
left: 0 !important;
|
||||
font-size: 1.4em;
|
||||
top: 10px;
|
||||
cursor: pointer;
|
||||
float: left;
|
||||
border-radius: 20px;
|
||||
transition: top 300ms $cubicSearch, opacity 300ms $cubicSearch;
|
||||
|
||||
}
|
||||
|
||||
.show {
|
||||
.wmd-button {
|
||||
@media (min-width: $md){
|
||||
top: 10px;
|
||||
opacity: .9;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.reply-to {
|
||||
p {
|
||||
font-size: 1rem;
|
||||
overflow: hidden;
|
||||
color: darken($color-space, 25%);
|
||||
background: transparent;
|
||||
}
|
||||
span {
|
||||
font-weight: 800;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-button-bar {
|
||||
position:relative;
|
||||
height: 30px;
|
||||
@media (max-width: $xs) {
|
||||
display:none;
|
||||
}
|
||||
}
|
||||
|
||||
.input-row {
|
||||
label {
|
||||
display: block;
|
||||
margin-bottom: 5px;
|
||||
color: darken($color-space, 10%);
|
||||
font-size: .9rem;
|
||||
}
|
||||
}
|
||||
.wmd-button-row {
|
||||
list-style: none;
|
||||
li {
|
||||
&:hover {
|
||||
span {
|
||||
color:black;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
background-image: none;
|
||||
color: #727272;
|
||||
transition: color .2s ease-in;
|
||||
&:before {
|
||||
font-family: "our-umbraco" !important;
|
||||
content: attr(data-icon);
|
||||
font-style: normal !important;
|
||||
font-weight: normal !important;
|
||||
font-variant: normal !important;
|
||||
text-transform: none !important;
|
||||
speak: none;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-bold-button {
|
||||
span {
|
||||
@extend .our-icon-bold;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-italic-button {
|
||||
span {
|
||||
@extend .our-icon-italic;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-bold-button {
|
||||
span {
|
||||
@extend .our-icon-bold;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-link-button {
|
||||
span {
|
||||
@extend .our-icon-hyperlink;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-quote-button {
|
||||
span {
|
||||
@extend .our-icon-quote;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-quote-button {
|
||||
span {
|
||||
@extend .our-icon-quote;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-code-button {
|
||||
span {
|
||||
@extend .our-icon-code;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-image-button {
|
||||
span {
|
||||
@extend .our-icon-picture;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-olist-button {
|
||||
span {
|
||||
@extend .our-icon-ol;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-ulist-button {
|
||||
span {
|
||||
@extend .our-icon-ul;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-heading-button {
|
||||
span {
|
||||
@extend .our-icon-header;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-hr-button {
|
||||
span {
|
||||
@extend .our-icon-hr;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-undo-button {
|
||||
span {
|
||||
@extend .our-icon-undo;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-redo-button {
|
||||
span {
|
||||
@extend .our-icon-redo;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.wmd-spacer {
|
||||
float: left;
|
||||
position: relative;
|
||||
width: 27px;
|
||||
display: block;
|
||||
opacity: 0;
|
||||
height: 20px;
|
||||
@media (max-width:$md) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-input {
|
||||
height: 300px;
|
||||
width: 100%;
|
||||
padding: .5rem;
|
||||
font-size: 1rem;
|
||||
color: $color-text;
|
||||
background: white;
|
||||
border: 2px solid #E4E8E9;
|
||||
@include transition(border-color, .2s);
|
||||
|
||||
@media (max-width: $xs) {
|
||||
height: 152px;
|
||||
}
|
||||
|
||||
&:focus {
|
||||
border-color: $color-green;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-preview {
|
||||
width: 100%;
|
||||
min-height: 300px;
|
||||
max-height: 300px;
|
||||
overflow-y: scroll;
|
||||
padding: .5rem 20px;
|
||||
font-size: .8rem;
|
||||
color: #000;
|
||||
background: darken(#F5F7F7, 5%);
|
||||
@media (max-width: $xs) {
|
||||
max-height: 150px;
|
||||
min-height: 150px;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.markdown-close {
|
||||
position: absolute;
|
||||
right: 1.5rem;
|
||||
top: 2rem;
|
||||
font-size: 28px;
|
||||
cursor: pointer;
|
||||
opacity: .6;
|
||||
@include transition(opacity, .3s);
|
||||
|
||||
@media (min-width: $md) {
|
||||
top: 1.5rem;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.draft {
|
||||
position: fixed;
|
||||
bottom: -40px;
|
||||
right: 30px;
|
||||
background-color: $color-green;
|
||||
color:white;
|
||||
padding: 12px 20px;
|
||||
cursor: pointer;
|
||||
opacity: 0;
|
||||
font-size: .9rem;
|
||||
font-weight: bold;
|
||||
transition: opacity .3s $cubicSearch, bottom .6s $cubicSearch, box-shadow .2s ease-in-out;
|
||||
|
||||
&.show {
|
||||
bottom: 30px;
|
||||
opacity: 1;
|
||||
|
||||
&:hover {
|
||||
background: lighten($color-green, 5%);
|
||||
@extend .BoxShadow;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.markdown-control {
|
||||
font-family: $font-family;
|
||||
font-size: .8rem;
|
||||
-webkit-appearance: none;
|
||||
@media (max-width: $xs) {
|
||||
padding: 5px !important;
|
||||
}
|
||||
}
|
||||
|
||||
#topic-title {
|
||||
padding: .5rem;
|
||||
font-size: .8rem;
|
||||
overflow: hidden;
|
||||
color: #000;
|
||||
background: #fff;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
select {
|
||||
position: relative;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
padding: .5rem;
|
||||
font-size: .8rem;
|
||||
overflow: hidden;
|
||||
color: #000;
|
||||
background: #fff;
|
||||
width: 100%;
|
||||
|
||||
border: 2px solid #E4E8E9;
|
||||
|
||||
@media (max-width: $xs) {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
&::after {
|
||||
position: absolute;
|
||||
display: block;
|
||||
top: 0;
|
||||
right: 0;
|
||||
content: "<";
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
|
||||
#topic-category {
|
||||
|
||||
option.frontend {
|
||||
background: #4ea7ff;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
option.core {
|
||||
background: #ff661b;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
option.azure {
|
||||
background: #1ed45c;
|
||||
color: #fff;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#topic-submit {
|
||||
border: none;
|
||||
background: $color-green;
|
||||
color: white;
|
||||
padding: 10px;
|
||||
width: 100%;
|
||||
max-width: 140px;
|
||||
font-family: $font-family;
|
||||
cursor: pointer;
|
||||
|
||||
font-size: 1rem;
|
||||
|
||||
&:hover {
|
||||
background: lighten($color-green, 5%);
|
||||
}
|
||||
}
|
||||
|
||||
#mobile-preview {
|
||||
border: none;
|
||||
background: none;
|
||||
-webkit-appearance:none;
|
||||
text-align: right;
|
||||
float: right;
|
||||
opacity: .4;
|
||||
cursor: pointer;
|
||||
@include transition(opacity, .3s);
|
||||
|
||||
i {
|
||||
font-size: 24px;
|
||||
display: inline-block;
|
||||
transform: translate(-3px, 5px);
|
||||
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
@media (max-width: $xs) {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
&.mobile-preview {
|
||||
|
||||
#wmd-preview {
|
||||
@media (max-width: $md) {
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
#mobile-preview {
|
||||
color: $color-our;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.wmd-prompt-background {
|
||||
background-color: black;
|
||||
}
|
||||
|
||||
#insert-image-dialog {
|
||||
position: fixed;
|
||||
z-index: 1001;
|
||||
@extend .copy-link-wrapper;
|
||||
&.show {
|
||||
clip: auto;
|
||||
opacity: 1;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.wmd-prompt-dialog {
|
||||
@extend .copy-link-wrapper;
|
||||
opacity: 1;
|
||||
clip: auto;
|
||||
margin: 0 !important;
|
||||
input[type="text"] {
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
|
||||
.markdown-spacer {
|
||||
position: relative;
|
||||
height: 0px;
|
||||
transition: height .6s $cubicSearch;
|
||||
&.write {
|
||||
height: 500px;
|
||||
}
|
||||
.markdown-editor {
|
||||
position: fixed;
|
||||
bottom: -100%;
|
||||
max-height: 100%;
|
||||
width: 100%;
|
||||
padding: .2rem;
|
||||
background-color: rgba(darken(#fff, 1%), .94);
|
||||
box-shadow: 0px -2px 6px 0px rgba(0, 0, 0, 0.08);
|
||||
transition: bottom .6s $cubicSearch, top .6s $cubicSearch;
|
||||
z-index: 800;
|
||||
|
||||
@media (max-width: $xs) {
|
||||
top: 100%;
|
||||
padding: 20px 0 0;
|
||||
}
|
||||
|
||||
&.write {
|
||||
bottom:0px;
|
||||
overflow-y: scroll;
|
||||
visibility: visible;
|
||||
@media (max-width: $xs) {
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
&.mobile-preview {
|
||||
@media (max-width: $md) {
|
||||
#input-container {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#preview-container {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#preview-container {
|
||||
@media (max-width: $md) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
input, textarea, select{
|
||||
border: 2px solid #E4E8E9;
|
||||
color: #000;
|
||||
|
||||
&:focus, &:active{
|
||||
outline: none;
|
||||
border-color: $color-green;
|
||||
}
|
||||
|
||||
&.warning {
|
||||
border-color: $color-red !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.wmd-button {
|
||||
position: relative;
|
||||
margin-right: 15px;
|
||||
left: 0 !important;
|
||||
font-size: 1.4em;
|
||||
top: 10px;
|
||||
cursor: pointer;
|
||||
float: left;
|
||||
border-radius: 20px;
|
||||
transition: top 300ms $cubicSearch, opacity 300ms $cubicSearch;
|
||||
|
||||
}
|
||||
|
||||
.show {
|
||||
.wmd-button {
|
||||
@media (min-width: $md){
|
||||
top: 10px;
|
||||
opacity: .9;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.reply-to {
|
||||
p {
|
||||
font-size: 1rem;
|
||||
overflow: hidden;
|
||||
color: darken($color-space, 25%);
|
||||
background: transparent;
|
||||
}
|
||||
span {
|
||||
font-weight: 800;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-button-bar {
|
||||
position:relative;
|
||||
height: 30px;
|
||||
@media (max-width: $xs) {
|
||||
display:none;
|
||||
}
|
||||
}
|
||||
|
||||
.input-row {
|
||||
label {
|
||||
display: block;
|
||||
margin-bottom: 5px;
|
||||
color: darken($color-space, 10%);
|
||||
font-size: .9rem;
|
||||
}
|
||||
}
|
||||
.wmd-button-row {
|
||||
list-style: none;
|
||||
li {
|
||||
&:hover {
|
||||
span {
|
||||
color:black;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
background-image: none;
|
||||
color: #727272;
|
||||
transition: color .2s ease-in;
|
||||
&:before {
|
||||
font-family: "our-umbraco" !important;
|
||||
content: attr(data-icon);
|
||||
font-style: normal !important;
|
||||
font-weight: normal !important;
|
||||
font-variant: normal !important;
|
||||
text-transform: none !important;
|
||||
speak: none;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-bold-button {
|
||||
span {
|
||||
@extend .our-icon-bold;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-italic-button {
|
||||
span {
|
||||
@extend .our-icon-italic;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-bold-button {
|
||||
span {
|
||||
@extend .our-icon-bold;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-link-button {
|
||||
span {
|
||||
@extend .our-icon-hyperlink;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-quote-button {
|
||||
span {
|
||||
@extend .our-icon-quote;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-quote-button {
|
||||
span {
|
||||
@extend .our-icon-quote;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-code-button {
|
||||
span {
|
||||
@extend .our-icon-code;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-image-button {
|
||||
span {
|
||||
@extend .our-icon-picture;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-olist-button {
|
||||
span {
|
||||
@extend .our-icon-ol;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-ulist-button {
|
||||
span {
|
||||
@extend .our-icon-ul;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-heading-button {
|
||||
span {
|
||||
@extend .our-icon-header;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-hr-button {
|
||||
span {
|
||||
@extend .our-icon-hr;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-undo-button {
|
||||
span {
|
||||
@extend .our-icon-undo;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-redo-button {
|
||||
span {
|
||||
@extend .our-icon-redo;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.wmd-spacer {
|
||||
float: left;
|
||||
position: relative;
|
||||
width: 27px;
|
||||
display: block;
|
||||
opacity: 0;
|
||||
height: 20px;
|
||||
@media (max-width:$md) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-input {
|
||||
height: 300px;
|
||||
width: 100%;
|
||||
padding: .5rem;
|
||||
font-size: 1rem;
|
||||
color: $color-text;
|
||||
background: white;
|
||||
border: 2px solid #E4E8E9;
|
||||
@include transition(border-color, .2s);
|
||||
|
||||
@media (max-width: $xs) {
|
||||
height: 152px;
|
||||
}
|
||||
|
||||
&:focus {
|
||||
border-color: $color-green;
|
||||
}
|
||||
}
|
||||
|
||||
#wmd-preview {
|
||||
width: 100%;
|
||||
min-height: 300px;
|
||||
max-height: 300px;
|
||||
overflow-y: scroll;
|
||||
padding: .5rem 20px;
|
||||
font-size: .8rem;
|
||||
color: #000;
|
||||
background: darken(#F5F7F7, 5%);
|
||||
@media (max-width: $xs) {
|
||||
max-height: 150px;
|
||||
min-height: 150px;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.markdown-close {
|
||||
position: absolute;
|
||||
right: 1.5rem;
|
||||
top: 2rem;
|
||||
font-size: 28px;
|
||||
cursor: pointer;
|
||||
opacity: .6;
|
||||
@include transition(opacity, .3s);
|
||||
|
||||
@media (min-width: $md) {
|
||||
top: 1.5rem;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.draft {
|
||||
position: fixed;
|
||||
bottom: -40px;
|
||||
right: 30px;
|
||||
background-color: $color-green;
|
||||
color:white;
|
||||
padding: 12px 20px;
|
||||
cursor: pointer;
|
||||
opacity: 0;
|
||||
font-size: .9rem;
|
||||
font-weight: bold;
|
||||
transition: opacity .3s $cubicSearch, bottom .6s $cubicSearch, box-shadow .2s ease-in-out;
|
||||
|
||||
&.show {
|
||||
bottom: 30px;
|
||||
opacity: 1;
|
||||
|
||||
&:hover {
|
||||
background: lighten($color-green, 5%);
|
||||
@extend .BoxShadow;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.markdown-control {
|
||||
font-family: $font-family;
|
||||
font-size: .8rem;
|
||||
-webkit-appearance: none;
|
||||
@media (max-width: $xs) {
|
||||
padding: 5px !important;
|
||||
}
|
||||
}
|
||||
|
||||
#topic-title {
|
||||
padding: .5rem;
|
||||
font-size: .8rem;
|
||||
overflow: hidden;
|
||||
color: #000;
|
||||
background: #fff;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
select {
|
||||
position: relative;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
padding: .5rem;
|
||||
font-size: .8rem;
|
||||
overflow: hidden;
|
||||
color: #000;
|
||||
background: #fff;
|
||||
width: 100%;
|
||||
|
||||
border: 2px solid #E4E8E9;
|
||||
|
||||
@media (max-width: $xs) {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
&::after {
|
||||
position: absolute;
|
||||
display: block;
|
||||
top: 0;
|
||||
right: 0;
|
||||
content: "<";
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
|
||||
#topic-category {
|
||||
|
||||
option.frontend {
|
||||
background: #4ea7ff;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
option.core {
|
||||
background: #ff661b;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
option.azure {
|
||||
background: #1ed45c;
|
||||
color: #fff;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#topic-submit {
|
||||
border: none;
|
||||
background: $color-green;
|
||||
color: white;
|
||||
padding: 10px !important;
|
||||
padding-left: 32px;
|
||||
width: 100%;
|
||||
max-width: 140px;
|
||||
font-family: $font-family;
|
||||
cursor: pointer;
|
||||
|
||||
font-size: 1rem;
|
||||
|
||||
&:hover {
|
||||
background: lighten($color-green, 5%);
|
||||
}
|
||||
}
|
||||
|
||||
#mobile-preview {
|
||||
border: none;
|
||||
background: none;
|
||||
-webkit-appearance:none;
|
||||
text-align: right;
|
||||
float: right;
|
||||
opacity: .4;
|
||||
cursor: pointer;
|
||||
@include transition(opacity, .3s);
|
||||
|
||||
i {
|
||||
font-size: 24px;
|
||||
display: inline-block;
|
||||
transform: translate(-3px, 5px);
|
||||
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
@media (max-width: $xs) {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
&.mobile-preview {
|
||||
|
||||
#wmd-preview {
|
||||
@media (max-width: $md) {
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
#mobile-preview {
|
||||
color: $color-our;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.wmd-prompt-background {
|
||||
background-color: black;
|
||||
}
|
||||
|
||||
#insert-image-dialog {
|
||||
position: fixed;
|
||||
z-index: 1001;
|
||||
@extend .copy-link-wrapper;
|
||||
&.show {
|
||||
clip: auto;
|
||||
opacity: 1;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.wmd-prompt-dialog {
|
||||
@extend .copy-link-wrapper;
|
||||
opacity: 1;
|
||||
clip: auto;
|
||||
margin: 0 !important;
|
||||
input[type="text"] {
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
|
||||
.markdown-spacer {
|
||||
position: relative;
|
||||
height: 0px;
|
||||
transition: height .6s $cubicSearch;
|
||||
&.write {
|
||||
height: 500px;
|
||||
}
|
||||
}
|
||||
@@ -7,9 +7,9 @@
|
||||
input {
|
||||
-webkit-appearance: none;
|
||||
border-radius: 0;
|
||||
|
||||
|
||||
border: 1px solid darken(whitesmoke, 15%);
|
||||
padding: 20px 6px 20px 6px;
|
||||
padding: 20px 10px 20px 10px;
|
||||
outline: none;
|
||||
display: block;
|
||||
width: 100%;
|
||||
|
||||
@@ -529,6 +529,8 @@
|
||||
font-size: .7rem;
|
||||
letter-spacing: .5px;
|
||||
|
||||
text-align: center;
|
||||
|
||||
transform: translate(-50%, -50%);
|
||||
|
||||
cursor: pointer;
|
||||
|
||||
@@ -63,11 +63,11 @@ html {
|
||||
display: inline-block;
|
||||
overflow: hidden;
|
||||
width: 100%;
|
||||
max-width: $sb-desktop / 100% * $sb-width;
|
||||
text-align: center;
|
||||
|
||||
@media (min-width: $md) {
|
||||
float: right;
|
||||
max-width: $sb-desktop / 100% * $sb-width;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -80,7 +80,7 @@ html {
|
||||
padding-bottom: 200px;
|
||||
|
||||
@media (max-width:992px) {
|
||||
|
||||
|
||||
display: block;
|
||||
width: 100%;
|
||||
|
||||
@@ -96,10 +96,10 @@ html {
|
||||
@media (min-width: 2100px) {
|
||||
width:100% - $sb-retina-width;
|
||||
}
|
||||
|
||||
|
||||
.main-content {
|
||||
display: block;
|
||||
width: 100%;
|
||||
width: 100%;
|
||||
padding-left: 20px;
|
||||
padding-right: 20px;
|
||||
padding-top: 20px;
|
||||
@@ -173,7 +173,7 @@ html {
|
||||
cursor: pointer;
|
||||
}
|
||||
@media (max-width: 992px) {
|
||||
border-left: none;
|
||||
border-left: none;
|
||||
background-color: lighten($color-our,10%);
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
|
||||
@@ -50,6 +50,11 @@
|
||||
@media (min-width: $md) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
span {
|
||||
padding-top: 5px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -91,16 +91,20 @@
|
||||
|
||||
|
||||
&-head {
|
||||
flex-direction: row;
|
||||
display: none;
|
||||
|
||||
padding: 20px 15px;
|
||||
border-bottom: 1px solid whitesmoke;
|
||||
@media (min-width: $md) {
|
||||
display: flex;
|
||||
|
||||
font-size: .8rem;
|
||||
text-transform: uppercase;
|
||||
font-weight: bold;
|
||||
padding: 20px 15px;
|
||||
border-bottom: 1px solid whitesmoke;
|
||||
|
||||
letter-spacing: .5px;
|
||||
font-size: .8rem;
|
||||
text-transform: uppercase;
|
||||
font-weight: bold;
|
||||
|
||||
letter-spacing: .5px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -112,19 +116,6 @@
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
small {
|
||||
color: darken($color-space, 25%);
|
||||
font-size: 1rem;
|
||||
|
||||
margin-bottom: .2rem;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: .8rem;
|
||||
color: $color-space;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -135,18 +126,25 @@
|
||||
padding: 25px 15px;
|
||||
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
|
||||
border-bottom: 1px solid rgba($color-space, .11);
|
||||
|
||||
@media (min-width: $md) {
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
|
||||
.topic {
|
||||
font-size: .95rem;
|
||||
font-size: 1.15rem;
|
||||
line-height: 1.3;
|
||||
|
||||
order: 2;
|
||||
|
||||
h3 {
|
||||
word-break: break-all;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
a {
|
||||
@@ -181,8 +179,9 @@
|
||||
|
||||
|
||||
@media (min-width: $md) {
|
||||
font-size: 1.15rem;
|
||||
line-height: 1.3;
|
||||
h3 {
|
||||
font-weight: 100;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: .9rem;
|
||||
@@ -220,35 +219,62 @@
|
||||
|
||||
|
||||
.topic {
|
||||
flex: 0 0 50%;
|
||||
margin-right: 5%;
|
||||
order: 2;
|
||||
|
||||
margin: 10px 0;
|
||||
|
||||
@media (min-width: $md) {
|
||||
flex: 0 0 50%;
|
||||
margin-right: 10%;
|
||||
margin: 0 10% 0 0;
|
||||
|
||||
order: 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.category {
|
||||
flex: 0 0 30%;
|
||||
margin-right: 5%;
|
||||
order: 1;
|
||||
|
||||
@media (min-width: $md) {
|
||||
flex: 0 0 28%;
|
||||
margin-right: 2%;
|
||||
|
||||
order: 2;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.posts {
|
||||
flex: 0 0 10%;
|
||||
text-align: center;
|
||||
order: 3;
|
||||
|
||||
@media (max-width: $md) {
|
||||
transform: translate(-6px, 0);
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
font-size: .8rem;
|
||||
|
||||
small {
|
||||
margin-right: 3px;
|
||||
margin-bottom: 0;
|
||||
font-weight: normal;
|
||||
font-size: .8rem;
|
||||
color: $color-black;
|
||||
}
|
||||
|
||||
@media (min-width: $md) {
|
||||
text-align: center;
|
||||
|
||||
flex-direction: column;
|
||||
|
||||
small {
|
||||
margin-right: 0px;
|
||||
margin-bottom: 5px;
|
||||
font-weight: bold;
|
||||
font-size: 1rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -295,10 +321,14 @@
|
||||
color: #4f5f63;
|
||||
text-transform: uppercase;
|
||||
font-weight: 700;
|
||||
letter-spacing: .2px;
|
||||
display: block;
|
||||
margin-bottom: .5rem;
|
||||
text-align: left;
|
||||
line-height: 1.2;
|
||||
|
||||
@media (min-width: $md) {
|
||||
letter-spacing: .2px;
|
||||
}
|
||||
}
|
||||
|
||||
.options {
|
||||
@@ -352,7 +382,6 @@
|
||||
span {
|
||||
position: relative;
|
||||
flex: 1 1 auto;
|
||||
margin-right: 20px;
|
||||
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
@@ -373,6 +402,8 @@
|
||||
transition: color 150ms ease;
|
||||
font-size: .7rem;
|
||||
|
||||
text-align: center;
|
||||
|
||||
@media(min-width: $md) {
|
||||
font-size: .9rem;
|
||||
}
|
||||
|
||||
@@ -1,39 +1,31 @@
|
||||
.download {
|
||||
.download.latest .dot {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
|
||||
.dot.progress {
|
||||
.download .dot.progress {
|
||||
text-indent: .3rem;
|
||||
text-align: center;
|
||||
line-height: 2.8rem;
|
||||
}
|
||||
|
||||
|
||||
.counter {
|
||||
font-size: 1.1rem;;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
&.latest {
|
||||
|
||||
|
||||
.dot {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
}
|
||||
.download .dot.progress .counter {
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.explain {
|
||||
flex-direction: column;
|
||||
|
||||
|
||||
.changes {
|
||||
small {
|
||||
line-height: .5rem;
|
||||
}
|
||||
@media (min-width: 768px) {
|
||||
flex-direction: row;
|
||||
}
|
||||
}
|
||||
|
||||
.explain .changes small {
|
||||
line-height: .5rem;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.chart {
|
||||
@@ -41,171 +33,100 @@
|
||||
top: -4px;
|
||||
left: -8px;
|
||||
z-index: 1;
|
||||
|
||||
|
||||
.percentage {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
top: 9px;
|
||||
left: 16px;
|
||||
font-size: 1.1rem;
|
||||
color: darken($color-our, 30%);
|
||||
}
|
||||
|
||||
|
||||
canvas {
|
||||
top: 1px;
|
||||
position: absolute;
|
||||
left: 5px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.chart .percentage {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
top: 9px;
|
||||
left: 16px;
|
||||
font-size: 1.1rem;
|
||||
color: darken($color-our, 30%);
|
||||
}
|
||||
|
||||
.chart canvas {
|
||||
top: 1px;
|
||||
position: absolute;
|
||||
left: 5px;
|
||||
}
|
||||
|
||||
.get-release {
|
||||
|
||||
|
||||
i {
|
||||
font-size: 2.5rem;
|
||||
line-height: 5rem;
|
||||
}
|
||||
.chart {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
left: -8px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.get-release {
|
||||
line-height: 1.5;
|
||||
padding: 2.5rem 0;
|
||||
margin: 2.5rem 0;
|
||||
padding: 3rem 0;
|
||||
margin: 0 0 3.5rem ;
|
||||
border-bottom: 1px solid darken(whitesmoke, 5%);
|
||||
border-top: 1px solid darken(whitesmoke, 5%);
|
||||
}
|
||||
|
||||
.get-release i {
|
||||
font-size: 2.5rem;
|
||||
line-height: 5rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.1rem;
|
||||
margin-bottom: .3rem;
|
||||
color: $color-headline;
|
||||
.get-release h3 {
|
||||
font-size: 1.1rem;
|
||||
margin-bottom: .3rem;
|
||||
color: $color-headline;
|
||||
}
|
||||
|
||||
.get-release h3 a {
|
||||
text-decoration: none;
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
|
||||
|
||||
&:hover {
|
||||
color: $color-our;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
color: $color-headline;
|
||||
font-size: .95rem;
|
||||
line-height: 1.3;
|
||||
margin-bottom: .5rem;
|
||||
}
|
||||
|
||||
|
||||
small {
|
||||
font-size: .7rem;
|
||||
color: $color-text;
|
||||
&:hover {
|
||||
color: $color-our;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.release {
|
||||
min-height: 160px;
|
||||
|
||||
|
||||
&.zip {
|
||||
|
||||
|
||||
i {
|
||||
color: $color-headline;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
&.bin {
|
||||
|
||||
|
||||
i {
|
||||
color: rgba(#000, .4);
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
|
||||
h4 {
|
||||
font-size: .9rem;
|
||||
margin-bottom: .3rem;
|
||||
color: $color-headline;
|
||||
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
|
||||
|
||||
&:hover {
|
||||
color: $color-our;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
&.col-sm-5 {
|
||||
padding-top: 18px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
&.col-sm-1 {
|
||||
text-align: center;
|
||||
}
|
||||
.get-release p {
|
||||
color: $color-headline;
|
||||
font-size: .95rem;
|
||||
line-height: 1.3;
|
||||
margin-bottom: .5rem;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.latest {
|
||||
|
||||
|
||||
.dot.big {
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
|
||||
.explain {
|
||||
|
||||
|
||||
h4 {
|
||||
font-size: 2.5rem;
|
||||
}
|
||||
|
||||
|
||||
p {
|
||||
font-size: 1.1rem;
|
||||
color: $color-text
|
||||
;
|
||||
}
|
||||
|
||||
.col-xs-12 {
|
||||
min-height: 0;
|
||||
}
|
||||
}
|
||||
.get-release small {
|
||||
font-size: .8rem;
|
||||
color: rgba($color-text, .6);
|
||||
}
|
||||
|
||||
|
||||
.latest .dot.big {
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
|
||||
.latest .explain h4 {
|
||||
font-size: 2.5rem;
|
||||
}
|
||||
|
||||
|
||||
.latest .explain p {
|
||||
font-size: 1.1rem;
|
||||
color: $color-text;
|
||||
}
|
||||
|
||||
.latest .explain .col-xs-12 {
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// Single release page
|
||||
.release{
|
||||
|
||||
.release {
|
||||
|
||||
.markdown-syntax {
|
||||
|
||||
|
||||
p, li, ul, a {
|
||||
p, li, ul {
|
||||
color: $color-headline;
|
||||
font-size: .95rem;
|
||||
}
|
||||
@@ -216,7 +137,7 @@
|
||||
}
|
||||
|
||||
|
||||
a {
|
||||
a {
|
||||
text-decoration: underline;
|
||||
font-family: $font-family;
|
||||
}
|
||||
@@ -253,12 +174,12 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.releaseTable {
|
||||
|
||||
|
||||
.col-xs-3 {
|
||||
|
||||
|
||||
&:first-child {
|
||||
.progress {
|
||||
.top {
|
||||
@@ -282,6 +203,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Progress page
|
||||
.inprogress {
|
||||
|
||||
@@ -324,11 +246,12 @@
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Roadmap page
|
||||
.plannedreleases {
|
||||
.dot.big {
|
||||
text-indent: 0;
|
||||
line-height: 3rem;
|
||||
line-height: 3rem;
|
||||
}
|
||||
.chart {
|
||||
top: 0px;
|
||||
@@ -342,3 +265,194 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.release-page .explain h2 {
|
||||
margin: 0;
|
||||
font-size: 2em;
|
||||
color: rgba(0,0,0,.8);
|
||||
}
|
||||
|
||||
.release-page .explain small {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.release-page .dot {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.release-page .dot.big {
|
||||
position: relative;
|
||||
text-indent: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.release-page .chart {
|
||||
height: 60px;
|
||||
width: 60px;
|
||||
top: initial;
|
||||
left: initial;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.release-page .chart p {
|
||||
vertical-align: middle;
|
||||
line-height: 3.7rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.release-page .chart canvas {
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
.statuses ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
.statuses ul li {
|
||||
position: relative;
|
||||
margin-bottom: 10px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
.statuses li:before {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
left: -25px;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.release-progress-indicator {
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
.release-progress-action {
|
||||
flex: 1 1 auto;
|
||||
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.release-progress-version {
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
|
||||
.release-section-group {
|
||||
flex: 1 1 100%;
|
||||
padding: 0;
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
|
||||
@media (min-width: 768px) {
|
||||
flex: 1 1 47%;
|
||||
padding: 0 3% 0 0;
|
||||
align-items: flex-start;
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
|
||||
.release-section-group:nth-child(even) {
|
||||
flex: 1 1 100%;
|
||||
padding: 0;
|
||||
|
||||
@media (min-width: 768px) {
|
||||
flex: 1 1 47%;
|
||||
padding: 0 0 0 3%;
|
||||
}
|
||||
}
|
||||
|
||||
.release-section-action {
|
||||
height: 80px;
|
||||
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
|
||||
.release-section code {
|
||||
overflow: auto;
|
||||
|
||||
background-color: #333;
|
||||
background-clip: padding-box;
|
||||
|
||||
color: #fff;
|
||||
font-size: 12px;
|
||||
line-height: 1.4em;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
|
||||
|
||||
padding: 14px 16px 14px 16px;
|
||||
|
||||
width: auto;
|
||||
border-radius: 5px;
|
||||
border: none;
|
||||
}
|
||||
.release-section code a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.release-section + .release-section {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.release-section-group + .release-section-group {
|
||||
margin-top: 30px;
|
||||
|
||||
@media (min-width: 768px) {
|
||||
margin-top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.release-page h2 {
|
||||
font-size: 1.4rem;
|
||||
font-weight: bold;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.release-page h3 {
|
||||
font-size: 1.1rem;
|
||||
font-weight: bold;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Other files
|
||||
.release-other-files {
|
||||
margin-top: 3rem;
|
||||
}
|
||||
|
||||
.release-other-files h3 {
|
||||
font-size: 1.1rem;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.release-other-files small {
|
||||
font-size: .8rem;
|
||||
color: rgba($color-text, .5);
|
||||
}
|
||||
|
||||
|
||||
.release-other-files .release {
|
||||
min-height: auto;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.release-other-files .release a {
|
||||
display: inline-block;
|
||||
margin-bottom: 10px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.release-other-files .release p {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
@@ -45,6 +45,7 @@ section.forum {
|
||||
.forum-thread {
|
||||
flex: 0 0 100%;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
|
||||
@media (min-width: $md) {
|
||||
flex: 1 0 49%;
|
||||
@@ -77,6 +78,8 @@ section.forum {
|
||||
flex-direction: column;
|
||||
flex: 1 0 75%;
|
||||
|
||||
overflow: hidden;
|
||||
|
||||
padding: 0 10px 0 0;
|
||||
|
||||
@media (min-width: $md) {
|
||||
@@ -89,6 +92,7 @@ section.forum {
|
||||
|
||||
.category {
|
||||
margin: .5rem 0 0;
|
||||
max-width: 95%;
|
||||
|
||||
span {
|
||||
font-size: .75rem;
|
||||
@@ -132,14 +136,14 @@ section.forum {
|
||||
padding: 25px;
|
||||
margin-bottom: 30px;
|
||||
border: 1px solid darken(#f6f6f6, 5%);
|
||||
transition: box-shadow .2s;
|
||||
transition: box-shadow .2s ease, border-color .2s ease;
|
||||
text-decoration: none;
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
&:hover {
|
||||
border-color: transparent;
|
||||
border-color: white;
|
||||
@include box_shadow(2);
|
||||
}
|
||||
|
||||
@@ -182,7 +186,6 @@ section.forum {
|
||||
color: #000;
|
||||
line-height: 1.3;
|
||||
font-size: 1rem;
|
||||
word-break: break-all;
|
||||
|
||||
@media (min-width: $md) {
|
||||
font-size: 1.1rem;
|
||||
|
||||
@@ -15,6 +15,11 @@
|
||||
@import 'playground';
|
||||
|
||||
|
||||
/**
|
||||
/* Utilities
|
||||
**/
|
||||
@import 'utilities/flexbox';
|
||||
|
||||
/**
|
||||
/* Elements
|
||||
**/
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
/*
|
||||
|
||||
Flexbox
|
||||
|
||||
*/
|
||||
|
||||
.flex { display: flex; }
|
||||
.flex-inline { display: inline-flex; }
|
||||
|
||||
.flex-column { flex-direction: column; }
|
||||
.flex-wrap { flex-wrap: wrap; }
|
||||
|
||||
.items-start { align-items: flex-start; }
|
||||
.items-end { align-items: flex-end; }
|
||||
.items-center { align-items: center; }
|
||||
.items-baseline { align-items: baseline; }
|
||||
.items-stretch { align-items: stretch; }
|
||||
|
||||
.self-start { align-self: flex-start; }
|
||||
.self-end { align-self: flex-end; }
|
||||
.self-center { align-self: center; }
|
||||
.self-baseline { align-self: baseline; }
|
||||
.self-stretch { align-self: stretch; }
|
||||
|
||||
.justify-start { justify-content: flex-start; }
|
||||
.justify-end { justify-content: flex-end; }
|
||||
.justify-center { justify-content: center; }
|
||||
.justify-between { justify-content: space-between; }
|
||||
.justify-around { justify-content: space-around; }
|
||||
|
||||
.content-start { align-content: flex-start; }
|
||||
.content-end { align-content: flex-end; }
|
||||
.content-center { align-content: center; }
|
||||
.content-between { align-content: space-between; }
|
||||
.content-around { align-content: space-around; }
|
||||
.content-stretch { align-content: stretch; }
|
||||
|
||||
.flx-i {
|
||||
flex: 1;
|
||||
}
|
||||
.flx-g0 {
|
||||
flex-grow: 0;
|
||||
}
|
||||
.flx-s0 {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
.flx-b0 {
|
||||
flex-basis: 0%;
|
||||
}
|
||||
.flx-g1 {
|
||||
flex-grow: 1;
|
||||
}
|
||||
.flx-s1 {
|
||||
flex-shrink: 1;
|
||||
}
|
||||
.flx-b1 {
|
||||
flex-basis: 100%;
|
||||
}
|
||||
|
||||
/* 1. Fix for Chrome 44 bug. https://code.google.com/p/chromium/issues/detail?id=506893 */
|
||||
.flex-auto {
|
||||
flex: 1 1 auto;
|
||||
min-width: 0; /* 1 */
|
||||
min-height: 0; /* 1 */
|
||||
}
|
||||
|
||||
.flex-none { flex: none; }
|
||||
@@ -1,31 +1,31 @@
|
||||
function modelsBuilderController($scope, umbRequestHelper, $log, $http, modelsBuilderResource) {
|
||||
|
||||
$scope.generate = function() {
|
||||
$scope.generating = true;
|
||||
umbRequestHelper.resourcePromise(
|
||||
$http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
|
||||
'Failed to generate.')
|
||||
.then(function (result) {
|
||||
$scope.generating = false;
|
||||
$scope.dashboard = result;
|
||||
});
|
||||
};
|
||||
|
||||
$scope.reload = function () {
|
||||
$scope.ready = false;
|
||||
modelsBuilderResource.getDashboard().then(function (result) {
|
||||
$scope.dashboard = result;
|
||||
$scope.ready = true;
|
||||
});
|
||||
};
|
||||
|
||||
function init() {
|
||||
modelsBuilderResource.getDashboard().then(function(result) {
|
||||
$scope.dashboard = result;
|
||||
$scope.ready = true;
|
||||
});
|
||||
}
|
||||
|
||||
init();
|
||||
}
|
||||
function modelsBuilderController($scope, umbRequestHelper, $log, $http, modelsBuilderResource) {
|
||||
|
||||
$scope.generate = function() {
|
||||
$scope.generating = true;
|
||||
umbRequestHelper.resourcePromise(
|
||||
$http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
|
||||
'Failed to generate.')
|
||||
.then(function (result) {
|
||||
$scope.generating = false;
|
||||
$scope.dashboard = result;
|
||||
});
|
||||
};
|
||||
|
||||
$scope.reload = function () {
|
||||
$scope.ready = false;
|
||||
modelsBuilderResource.getDashboard().then(function (result) {
|
||||
$scope.dashboard = result;
|
||||
$scope.ready = true;
|
||||
});
|
||||
};
|
||||
|
||||
function init() {
|
||||
modelsBuilderResource.getDashboard().then(function(result) {
|
||||
$scope.dashboard = result;
|
||||
$scope.ready = true;
|
||||
});
|
||||
}
|
||||
|
||||
init();
|
||||
}
|
||||
angular.module("umbraco").controller("Umbraco.Dashboard.ModelsBuilderController", modelsBuilderController);
|
||||
@@ -1,41 +1,41 @@
|
||||
<div id="modelsBuilder" ng-controller="Umbraco.Dashboard.ModelsBuilderController">
|
||||
|
||||
<div ng-show="ready" style="float: right;">
|
||||
<button type="button" class="btn" ng-click="reload()"><span>Reload</span></button>
|
||||
</div>
|
||||
|
||||
<h3>Models Builder</h3>
|
||||
|
||||
<div ng-show="!ready">
|
||||
Loading...
|
||||
</div>
|
||||
|
||||
<div ng-show="ready">
|
||||
<div ng-bind-html-unsafe="dashboard.text"></div>
|
||||
|
||||
<div ng-if="dashboard.outOfDateModels">
|
||||
<p>Models are <strong>out-of-date</strong>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div ng-if="dashboard.canGenerate">
|
||||
<div ng-if="dashboard.generateCausesRestart">
|
||||
<p style="color: red; font-weight: bold;">Generating models will restart the application.</p>
|
||||
</div>
|
||||
<div ng-show="!generating">
|
||||
<button type="button" ng-click="generate()" class="btn btn-danger">
|
||||
<span>Generate models</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="umb-loader-wrapper" ng-show="generating">
|
||||
<div class="umb-loader"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="dashboard.lastError" style="margin-top: 32px;" ng-show="!generating">
|
||||
<span style="color: red; font-weight: bold;">Last generation failed with the following error:</span>
|
||||
<pre style="width: 80%; white-space: pre-line; background: #f8f8f8; padding: 4px; font-size: small;">{{dashboard.lastError}}</pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="modelsBuilder" ng-controller="Umbraco.Dashboard.ModelsBuilderController">
|
||||
|
||||
<div ng-show="ready" style="float: right;">
|
||||
<button type="button" class="btn" ng-click="reload()"><span>Reload</span></button>
|
||||
</div>
|
||||
|
||||
<h3>Models Builder</h3>
|
||||
|
||||
<div ng-show="!ready">
|
||||
Loading...
|
||||
</div>
|
||||
|
||||
<div ng-show="ready">
|
||||
<div ng-bind-html-unsafe="dashboard.text"></div>
|
||||
|
||||
<div ng-if="dashboard.outOfDateModels">
|
||||
<p>Models are <strong>out-of-date</strong>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div ng-if="dashboard.canGenerate">
|
||||
<div ng-if="dashboard.generateCausesRestart">
|
||||
<p style="color: red; font-weight: bold;">Generating models will restart the application.</p>
|
||||
</div>
|
||||
<div ng-show="!generating">
|
||||
<button type="button" ng-click="generate()" class="btn btn-danger">
|
||||
<span>Generate models</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="umb-loader-wrapper" ng-show="generating">
|
||||
<div class="umb-loader"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="dashboard.lastError" style="margin-top: 32px;" ng-show="!generating">
|
||||
<span style="color: red; font-weight: bold;">Last generation failed with the following error:</span>
|
||||
<pre style="width: 80%; white-space: pre-line; background: #f8f8f8; padding: 4px; font-size: small;">{{dashboard.lastError}}</pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
function modelsBuilderResource($q, $http, umbRequestHelper) {
|
||||
|
||||
return {
|
||||
getModelsOutOfDateStatus: function () {
|
||||
return umbRequestHelper.resourcePromise(
|
||||
$http.get(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "GetModelsOutOfDateStatus")),
|
||||
"Failed to get models out-of-date status");
|
||||
},
|
||||
|
||||
buildModels: function () {
|
||||
return umbRequestHelper.resourcePromise(
|
||||
$http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
|
||||
"Failed to build models");
|
||||
},
|
||||
|
||||
getDashboard: function () {
|
||||
return umbRequestHelper.resourcePromise(
|
||||
$http.get(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "GetDashboard")),
|
||||
"Failed to get dashboard");
|
||||
}
|
||||
};
|
||||
}
|
||||
angular.module("umbraco.resources").factory("modelsBuilderResource", modelsBuilderResource);
|
||||
function modelsBuilderResource($q, $http, umbRequestHelper) {
|
||||
|
||||
return {
|
||||
getModelsOutOfDateStatus: function () {
|
||||
return umbRequestHelper.resourcePromise(
|
||||
$http.get(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "GetModelsOutOfDateStatus")),
|
||||
"Failed to get models out-of-date status");
|
||||
},
|
||||
|
||||
buildModels: function () {
|
||||
return umbRequestHelper.resourcePromise(
|
||||
$http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
|
||||
"Failed to build models");
|
||||
},
|
||||
|
||||
getDashboard: function () {
|
||||
return umbRequestHelper.resourcePromise(
|
||||
$http.get(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "GetDashboard")),
|
||||
"Failed to get dashboard");
|
||||
}
|
||||
};
|
||||
}
|
||||
angular.module("umbraco.resources").factory("modelsBuilderResource", modelsBuilderResource);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
//array of files we want to inject into the application on app_start
|
||||
javascript: [
|
||||
'~/App_Plugins/ModelsBuilder/modelsbuilder.controller.js',
|
||||
'~/App_Plugins/ModelsBuilder/modelsbuilder.resource.js'
|
||||
]
|
||||
{
|
||||
//array of files we want to inject into the application on app_start
|
||||
javascript: [
|
||||
'~/App_Plugins/ModelsBuilder/modelsbuilder.controller.js',
|
||||
'~/App_Plugins/ModelsBuilder/modelsbuilder.resource.js'
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
angular.module("umbraco").controller("ourManagementController", function ($scope, $http, notificationsService) {
|
||||
$scope.downloadDocumentation = function () {
|
||||
notificationsService.success("Downloading and indexing documentation, hold on");
|
||||
var downloadUrl = "/html/githubpulltrigger";
|
||||
$http.get(downloadUrl)
|
||||
.success(function () {
|
||||
notificationsService.success("Documentation all downloaded and indexed!");
|
||||
})
|
||||
.error(function () {
|
||||
notificationsService.error("Problem with the documentation download/indexing");
|
||||
});
|
||||
};
|
||||
|
||||
$scope.downloadYoutrackData = function () {
|
||||
notificationsService.success("Downloading YouTrack data, hold on");
|
||||
var youtrackUrl = "backoffice/API/YouTrackApi/GetData";
|
||||
$http.get(youtrackUrl)
|
||||
.success(function () {
|
||||
notificationsService.success("YouTrack data all downloaded!");
|
||||
})
|
||||
.error(function () {
|
||||
notificationsService.error("Problem with the YouTrack data downloading");
|
||||
});
|
||||
};
|
||||
});
|
||||
@@ -0,0 +1,11 @@
|
||||
<div class="ourManagementDashboard" ng-controller="ourManagementController">
|
||||
<h3>Documentation</h3>
|
||||
<button ng-click="downloadDocumentation()">
|
||||
Download documentation
|
||||
</button>
|
||||
|
||||
<h3>YouTrack</h3>
|
||||
<button ng-click="downloadYoutrackData()">
|
||||
Download YouTrack data
|
||||
</button>
|
||||
</div>
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"$schema": "/App_Plugins/manifestSchema.json",
|
||||
"javascript": [
|
||||
"/App_Plugins/OurManagement/ourmanagement.controller.js"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ApplicationInsights xmlns="http://schemas.microsoft.com/ApplicationInsights/2013/Settings">
|
||||
<TelemetryInitializers>
|
||||
<Add Type="Microsoft.ApplicationInsights.DependencyCollector.HttpDependenciesParsingTelemetryInitializer, Microsoft.AI.DependencyCollector" />
|
||||
<Add Type="Microsoft.ApplicationInsights.WindowsServer.AzureRoleEnvironmentTelemetryInitializer, Microsoft.AI.WindowsServer" />
|
||||
<Add Type="Microsoft.ApplicationInsights.WindowsServer.AzureWebAppRoleEnvironmentTelemetryInitializer, Microsoft.AI.WindowsServer" />
|
||||
<Add Type="Microsoft.ApplicationInsights.WindowsServer.BuildInfoConfigComponentVersionTelemetryInitializer, Microsoft.AI.WindowsServer" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.WebTestTelemetryInitializer, Microsoft.AI.Web" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.SyntheticUserAgentTelemetryInitializer, Microsoft.AI.Web">
|
||||
<!-- Extended list of bots:
|
||||
search|spider|crawl|Bot|Monitor|BrowserMob|BingPreview|PagePeeker|WebThumb|URL2PNG|ZooShot|GomezA|Google SketchUp|Read Later|KTXN|KHTE|Keynote|Pingdom|AlwaysOn|zao|borg|oegp|silk|Xenu|zeal|NING|htdig|lycos|slurp|teoma|voila|yahoo|Sogou|CiBra|Nutch|Java|JNLP|Daumoa|Genieo|ichiro|larbin|pompos|Scrapy|snappy|speedy|vortex|favicon|indexer|Riddler|scooter|scraper|scrubby|WhatWeb|WinHTTP|voyager|archiver|Icarus6j|mogimogi|Netvibes|altavista|charlotte|findlinks|Retreiver|TLSProber|WordPress|wsr-agent|http client|Python-urllib|AppEngine-Google|semanticdiscovery|facebookexternalhit|web/snippet|Google-HTTP-Java-Client-->
|
||||
<Filters>search|spider|crawl|Bot|Monitor|AlwaysOn</Filters>
|
||||
</Add>
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.ClientIpHeaderTelemetryInitializer, Microsoft.AI.Web" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.OperationNameTelemetryInitializer, Microsoft.AI.Web" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.OperationCorrelationTelemetryInitializer, Microsoft.AI.Web" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.UserTelemetryInitializer, Microsoft.AI.Web" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.AuthenticatedUserIdTelemetryInitializer, Microsoft.AI.Web" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.AccountIdTelemetryInitializer, Microsoft.AI.Web" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.SessionTelemetryInitializer, Microsoft.AI.Web" />
|
||||
</TelemetryInitializers>
|
||||
<TelemetryModules>
|
||||
<Add Type="Microsoft.ApplicationInsights.DependencyCollector.DependencyTrackingTelemetryModule, Microsoft.AI.DependencyCollector" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.PerformanceCollectorModule, Microsoft.AI.PerfCounterCollector">
|
||||
<!--
|
||||
Use the following syntax here to collect additional performance counters:
|
||||
|
||||
<Counters>
|
||||
<Add PerformanceCounter="\Process(??APP_WIN32_PROC??)\Handle Count" ReportAs="Process handle count" />
|
||||
...
|
||||
</Counters>
|
||||
|
||||
PerformanceCounter must be either \CategoryName(InstanceName)\CounterName or \CategoryName\CounterName
|
||||
|
||||
NOTE: performance counters configuration will be lost upon NuGet upgrade.
|
||||
|
||||
The following placeholders are supported as InstanceName:
|
||||
??APP_WIN32_PROC?? - instance name of the application process for Win32 counters.
|
||||
??APP_W3SVC_PROC?? - instance name of the application IIS worker process for IIS/ASP.NET counters.
|
||||
??APP_CLR_PROC?? - instance name of the application CLR process for .NET counters.
|
||||
-->
|
||||
</Add>
|
||||
<Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryModule, Microsoft.AI.PerfCounterCollector" />
|
||||
<Add Type="Microsoft.ApplicationInsights.WindowsServer.DeveloperModeWithDebuggerAttachedTelemetryModule, Microsoft.AI.WindowsServer" />
|
||||
<Add Type="Microsoft.ApplicationInsights.WindowsServer.UnhandledExceptionTelemetryModule, Microsoft.AI.WindowsServer" />
|
||||
<Add Type="Microsoft.ApplicationInsights.WindowsServer.UnobservedExceptionTelemetryModule, Microsoft.AI.WindowsServer" />
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.RequestTrackingTelemetryModule, Microsoft.AI.Web">
|
||||
<Handlers>
|
||||
<!--
|
||||
Add entries here to filter out additional handlers:
|
||||
|
||||
NOTE: handler configuration will be lost upon NuGet upgrade.
|
||||
-->
|
||||
<Add>System.Web.Handlers.TransferRequestHandler</Add>
|
||||
<Add>Microsoft.VisualStudio.Web.PageInspector.Runtime.Tracing.RequestDataHttpHandler</Add>
|
||||
<Add>System.Web.StaticFileHandler</Add>
|
||||
<Add>System.Web.Handlers.AssemblyResourceLoader</Add>
|
||||
<Add>System.Web.Optimization.BundleHandler</Add>
|
||||
<Add>System.Web.Script.Services.ScriptHandlerFactory</Add>
|
||||
<Add>System.Web.Handlers.TraceHandler</Add>
|
||||
<Add>System.Web.Services.Discovery.DiscoveryRequestHandler</Add>
|
||||
<Add>System.Web.HttpDebugHandler</Add>
|
||||
</Handlers>
|
||||
</Add>
|
||||
<Add Type="Microsoft.ApplicationInsights.Web.ExceptionTrackingTelemetryModule, Microsoft.AI.Web" />
|
||||
</TelemetryModules>
|
||||
<TelemetryProcessors>
|
||||
<Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryProcessor, Microsoft.AI.PerfCounterCollector" />
|
||||
<Add Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.AdaptiveSamplingTelemetryProcessor, Microsoft.AI.ServerTelemetryChannel">
|
||||
<MaxTelemetryItemsPerSecond>5</MaxTelemetryItemsPerSecond>
|
||||
</Add>
|
||||
</TelemetryProcessors>
|
||||
<TelemetryChannel Type="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.ServerTelemetryChannel, Microsoft.AI.ServerTelemetryChannel" />
|
||||
<!--
|
||||
Learn more about Application Insights configuration with ApplicationInsights.config here:
|
||||
http://go.microsoft.com/fwlink/?LinkID=513840
|
||||
|
||||
Note: If not present, please add <InstrumentationKey>Your Key</InstrumentationKey> to the top of this file.
|
||||
-->
|
||||
<InstrumentationKey>lalalala-not-telling-you</InstrumentationKey>
|
||||
</ApplicationInsights>
|
||||
@@ -1 +1 @@
|
||||
<svg height="50" viewBox="0 0 50 50" width="50" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h50v50H0z"/><path fill="none" stroke="#000" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M35.891 30.054L25 40.943l-10.89-10.89M25 9v31.445"/></svg>
|
||||
<svg height="50" viewBox="0 0 50 50" width="50" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h50v50H0z"/><path fill="none" stroke="#000" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M35.89 30.054L25 40.944l-10.89-10.89M25 9v31.445"/></svg>
|
||||
|
Before Width: | Height: | Size: 276 B After Width: | Height: | Size: 275 B |
@@ -1 +1 @@
|
||||
<svg height="512" viewBox="0 0 512 512" width="512" xmlns="http://www.w3.org/2000/svg"><path d="M396.6 160l19.4 20.7L256 352 96 180.7l19.3-20.7L256 310.5z"/></svg>
|
||||
<svg height="512" viewBox="0 0 512 512" width="512" xmlns="http://www.w3.org/2000/svg"><path d="M396.6 160l19.4 20.7L256 352 96 180.7l19.3-20.7L256 310.5"/></svg>
|
||||
|
Before Width: | Height: | Size: 163 B After Width: | Height: | Size: 162 B |
@@ -1 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-281 286 36 30"><path fill="#98D768" d="M-267 316l8-5v-8l14-17h-36l14 17z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-281 286 36 30"><path fill="#98D768" d="M-267 316l8-5v-8l14-17h-36l14 17"/></svg>
|
||||
|
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 130 B |
@@ -1 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-281 286 36 30"><path fill="#191919" d="M-267 316l8-5v-8l14-17h-36l14 17z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-281 286 36 30"><path fill="#191919" d="M-267 316l8-5v-8l14-17h-36l14 17"/></svg>
|
||||
|
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 130 B |
@@ -1,2 +1,2 @@
|
||||
<%@ Application Inherits="Umbraco.Web.UmbracoApplication" Language="C#" %>
|
||||
<%@ Application Inherits="Umbraco.Web.UmbracoApplication" Language="C#" %>
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
<%@ WebHandler Language="c#" Class="RequestHandler" %>
|
||||
|
||||
public class RequestHandler : System.Web.IHttpHandler
|
||||
{
|
||||
public bool IsReusable
|
||||
{
|
||||
get { return false; }
|
||||
}
|
||||
|
||||
public void ProcessRequest(System.Web.HttpContext context)
|
||||
{
|
||||
ImageGen.ImageGenQueryStringParser parser = new ImageGen.ImageGenQueryStringParser();
|
||||
parser.Process(context);
|
||||
parser = null;
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\UmbracoCms.7.5.3\build\UmbracoCms.props" Condition="Exists('..\packages\UmbracoCms.7.5.3\build\UmbracoCms.props')" />
|
||||
<Import Project="..\packages\UmbracoCms.7.5.7\build\UmbracoCms.props" Condition="Exists('..\packages\UmbracoCms.7.5.7\build\UmbracoCms.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@@ -26,6 +26,8 @@
|
||||
<UseGlobalApplicationHostFile />
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
<ApplicationInsightsResourceId>/subscriptions/76a04863-9a92-45d6-9801-b26d74a625c4/resourcegroups/Default-ApplicationInsights-EastUS/providers/microsoft.insights/components/OurUmbraco.Site</ApplicationInsightsResourceId>
|
||||
<ApplicationInsightsAnnotationResourceId>/subscriptions/76a04863-9a92-45d6-9801-b26d74a625c4/resourcegroups/Default-ApplicationInsights-EastUS/providers/microsoft.insights/components/OurUmbraco.Site</ApplicationInsightsAnnotationResourceId>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@@ -47,32 +49,36 @@
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="AutoMapper, Version=3.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\AutoMapper.3.0.0\lib\net40\AutoMapper.dll</HintPath>
|
||||
<Reference Include="Autofac, Version=3.5.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Autofac.3.5.2\lib\net40\Autofac.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="AutoMapper.Net4, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\AutoMapper.3.0.0\lib\net40\AutoMapper.Net4.dll</HintPath>
|
||||
<Reference Include="AutoMapper, Version=3.3.1.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\AutoMapper.3.3.1\lib\net40\AutoMapper.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="businesslogic, Version=1.0.6092.24022, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\businesslogic.dll</HintPath>
|
||||
<Reference Include="AutoMapper.Net4, Version=3.3.1.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\AutoMapper.3.3.1\lib\net40\AutoMapper.Net4.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="ClientDependency.Core, Version=1.9.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ClientDependency.1.9.1\lib\net45\ClientDependency.Core.dll</HintPath>
|
||||
<Reference Include="businesslogic, Version=1.0.6219.11993, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\businesslogic.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="ClientDependency.Core, Version=1.9.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ClientDependency.1.9.2\lib\net45\ClientDependency.Core.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="ClientDependency.Core.Mvc, Version=1.8.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ClientDependency-Mvc5.1.8.0.0\lib\net45\ClientDependency.Core.Mvc.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="cms, Version=1.0.6092.24022, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\cms.dll</HintPath>
|
||||
<Reference Include="cms, Version=1.0.6219.11994, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\cms.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="controls, Version=1.0.6092.24024, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\controls.dll</HintPath>
|
||||
<Reference Include="controls, Version=1.0.6219.11996, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\controls.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="CookComputing.XmlRpcV2, Version=2.5.0.0, Culture=neutral, PublicKeyToken=a7d6e17aa302004d, processorArchitecture=MSIL">
|
||||
@@ -83,32 +89,28 @@
|
||||
<HintPath>..\packages\EasyHttp.1.6.29.0\lib\net40\EasyHttp.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Examine, Version=0.1.69.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Examine.0.1.69.0\lib\Examine.dll</HintPath>
|
||||
<Reference Include="Examine, Version=0.1.80.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Examine.0.1.80\lib\net45\Examine.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="HtmlAgilityPack, Version=1.4.9.0, Culture=neutral, PublicKeyToken=bd319b19eaf3b43a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\HtmlAgilityPack.1.4.9\lib\Net45\HtmlAgilityPack.dll</HintPath>
|
||||
<Reference Include="HtmlAgilityPack, Version=1.4.9.5, Culture=neutral, PublicKeyToken=bd319b19eaf3b43a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\HtmlAgilityPack.1.4.9.5\lib\Net45\HtmlAgilityPack.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="ICSharpCode.SharpZipLib, Version=0.86.0.518, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="ImageProcessor, Version=2.4.4.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ImageProcessor.2.4.4.0\lib\net45\ImageProcessor.dll</HintPath>
|
||||
<Reference Include="ImageProcessor, Version=2.5.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ImageProcessor.2.5.1\lib\net45\ImageProcessor.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="ImageProcessor.Web, Version=4.6.4.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ImageProcessor.Web.4.6.4.0\lib\net45\ImageProcessor.Web.dll</HintPath>
|
||||
<Reference Include="ImageProcessor.Web, Version=4.8.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\ImageProcessor.Web.4.8.0\lib\net45\ImageProcessor.Web.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="InfoCaster.Umbraco.UrlTracker, Version=3.11.5900.30099, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UrlTracker.3.11\lib\InfoCaster.Umbraco.UrlTracker.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="interfaces, Version=1.0.6092.24017, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\interfaces.dll</HintPath>
|
||||
<Reference Include="interfaces, Version=1.0.6219.11988, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\interfaces.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="JsonFx, Version=2.0.1209.2802, Culture=neutral, PublicKeyToken=315052dd637f8a52, processorArchitecture=MSIL">
|
||||
@@ -116,7 +118,7 @@
|
||||
<HintPath>..\packages\JsonFx.2.0.1209.2802\lib\net40\JsonFx.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="log4net, Version=1.2.11.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\log4net.dll</HintPath>
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\log4net.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Lucene.Net, Version=2.9.4.1, Culture=neutral, PublicKeyToken=85089178b9ac3181, processorArchitecture=MSIL">
|
||||
@@ -127,8 +129,40 @@
|
||||
<HintPath>..\packages\Markdown.1.14.4\lib\net45\MarkdownSharp.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AI.Agent.Intercept, Version=2.0.6.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.Agent.Intercept.2.0.6\lib\net45\Microsoft.AI.Agent.Intercept.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AI.DependencyCollector, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.DependencyCollector.2.2.0\lib\net45\Microsoft.AI.DependencyCollector.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AI.PerfCounterCollector, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.PerfCounterCollector.2.2.0\lib\net45\Microsoft.AI.PerfCounterCollector.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AI.ServerTelemetryChannel, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.2.2.0\lib\net45\Microsoft.AI.ServerTelemetryChannel.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AI.Web, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.Web.2.2.0\lib\net45\Microsoft.AI.Web.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AI.WindowsServer, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.WindowsServer.2.2.0\lib\net45\Microsoft.AI.WindowsServer.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.ApplicationBlocks.Data, Version=1.0.1559.20655, Culture=neutral">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\Microsoft.ApplicationBlocks.Data.dll</HintPath>
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\Microsoft.ApplicationBlocks.Data.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.ApplicationInsights, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.2.2.0\lib\net45\Microsoft.ApplicationInsights.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.ApplicationInsights.TraceListener, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.ApplicationInsights.TraceListener.2.2.0\lib\net45\Microsoft.ApplicationInsights.TraceListener.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AspNet.Identity.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
@@ -148,6 +182,10 @@
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Microsoft.IO.RecyclableMemoryStream, Version=1.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.IO.RecyclableMemoryStream.1.2.0\lib\net45\Microsoft.IO.RecyclableMemoryStream.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Owin, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Owin.3.0.1\lib\net45\Microsoft.Owin.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@@ -172,6 +210,18 @@
|
||||
<HintPath>..\packages\Microsoft.Owin.Security.OAuth.3.0.1\lib\net45\Microsoft.Owin.Security.OAuth.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Threading.Tasks, Version=1.0.12.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Threading.Tasks.Extensions, Version=1.0.12.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Threading.Tasks.Extensions.Desktop, Version=1.0.168.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.Desktop.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.AspNet.WebHelpers.3.2.3\lib\net45\Microsoft.Web.Helpers.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@@ -188,14 +238,18 @@
|
||||
<HintPath>..\packages\MySql.Data.6.9.8\lib\net45\MySql.Data.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.8\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="reCAPTCHA.MVC, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\reCAPTCH.MVC.1.0.1\lib\net45\reCAPTCHA.MVC.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="RestSharp, Version=104.1.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\RestSharp.104.1\lib\net4\RestSharp.dll</HintPath>
|
||||
@@ -204,8 +258,8 @@
|
||||
<HintPath>..\packages\semver.1.1.2\lib\net451\Semver.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="SQLCE4Umbraco, Version=1.0.6092.24023, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\SQLCE4Umbraco.dll</HintPath>
|
||||
<Reference Include="SQLCE4Umbraco, Version=1.0.6219.11995, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\SQLCE4Umbraco.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Collections.Immutable, Version=1.1.36.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
@@ -214,18 +268,27 @@
|
||||
</Reference>
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="System.Data.SqlServerCe, Version=4.0.0.1, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\System.Data.SqlServerCe.dll</HintPath>
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\System.Data.SqlServerCe.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Data.SqlServerCe.Entity, Version=4.0.0.1, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\System.Data.SqlServerCe.Entity.dll</HintPath>
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\System.Data.SqlServerCe.Entity.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Net" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Net.Http.Extensions, Version=2.2.29.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Extensions.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Net.Http.Primitives, Version=4.2.29.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Primitives.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Net.Http.WebRequest" />
|
||||
<Reference Include="System.Reflection.Metadata, Version=1.0.21.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Reflection.Metadata.1.0.21\lib\portable-net45+win8\System.Reflection.Metadata.dll</HintPath>
|
||||
@@ -282,47 +345,51 @@
|
||||
<Reference Include="System.EnterpriseServices" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="TidyNet, Version=1.0.0.0, Culture=neutral">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\TidyNet.dll</HintPath>
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\TidyNet.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="umbraco, Version=1.0.6092.24026, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\umbraco.dll</HintPath>
|
||||
<Reference Include="Tweetinvi, Version=1.2.0.0, Culture=neutral, PublicKeyToken=7247f14397bf67b9, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\TweetinviAPI.1.2.0\lib\net45\Tweetinvi.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Umbraco.Core, Version=1.0.6092.24019, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\Umbraco.Core.dll</HintPath>
|
||||
<Reference Include="umbraco, Version=1.0.6219.11997, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\umbraco.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="umbraco.DataLayer, Version=1.0.6092.24022, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\umbraco.DataLayer.dll</HintPath>
|
||||
<Reference Include="Umbraco.Core, Version=1.0.6219.11990, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\Umbraco.Core.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="umbraco.editorControls, Version=1.0.6092.24028, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\umbraco.editorControls.dll</HintPath>
|
||||
<Reference Include="umbraco.DataLayer, Version=1.0.6219.11993, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\umbraco.DataLayer.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="umbraco.editorControls, Version=1.0.6219.11999, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\umbraco.editorControls.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Umbraco.IdentityExtensions, Version=1.0.5779.34109, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.IdentityExtensions.1.0.0\lib\net45\Umbraco.IdentityExtensions.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="umbraco.MacroEngines, Version=1.0.6092.24028, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\umbraco.MacroEngines.dll</HintPath>
|
||||
<Reference Include="umbraco.MacroEngines, Version=1.0.6219.12000, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\umbraco.MacroEngines.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Umbraco.ModelsBuilder, Version=3.0.4.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Umbraco.ModelsBuilder.3.0.4\lib\Umbraco.ModelsBuilder.dll</HintPath>
|
||||
<Reference Include="Umbraco.ModelsBuilder, Version=3.0.5.96, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Umbraco.ModelsBuilder.3.0.5\lib\Umbraco.ModelsBuilder.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="umbraco.providers, Version=1.0.6092.24024, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\umbraco.providers.dll</HintPath>
|
||||
<Reference Include="umbraco.providers, Version=1.0.6219.11996, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\umbraco.providers.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Umbraco.Web.UI, Version=1.0.6092.24029, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\Umbraco.Web.UI.dll</HintPath>
|
||||
<Reference Include="Umbraco.Web.UI, Version=1.0.6219.12001, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\Umbraco.Web.UI.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="UmbracoExamine, Version=0.7.0.24023, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.3\lib\UmbracoExamine.dll</HintPath>
|
||||
<Reference Include="UmbracoExamine, Version=0.7.0.11994, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\UmbracoCms.Core.7.5.7\lib\UmbracoExamine.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="UrlRewritingNet.UrlRewriter, Version=2.0.7.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
@@ -344,13 +411,6 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Views\Search\Search.aspx.cs">
|
||||
<DependentUpon>Search.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Views\Search\Search.aspx.designer.cs">
|
||||
<DependentUpon>Search.aspx</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="App_Browsers\Form.browser" />
|
||||
@@ -359,6 +419,8 @@
|
||||
<Content Include="App_Plugins\ModelsBuilder\modelsbuilder.controller.js" />
|
||||
<Content Include="App_Plugins\ModelsBuilder\modelsbuilder.htm" />
|
||||
<Content Include="App_Plugins\ModelsBuilder\modelsbuilder.resource.js" />
|
||||
<Content Include="App_Plugins\OurManagement\ourmanagement.controller.js" />
|
||||
<Content Include="App_Plugins\OurManagement\ourmanagement.html" />
|
||||
<Content Include="Assets\css\fonts\icomoon\icomoon.svg" />
|
||||
<Content Include="Assets\css\style.min.css" />
|
||||
<Content Include="Assets\images\app-icons\acme-tile-large.png" />
|
||||
@@ -498,75 +560,6 @@
|
||||
<Content Include="macroScripts\Releases-GetAllReleases.cshtml" />
|
||||
<Content Include="macroScripts\Releases-ReleaseList.cshtml" />
|
||||
<Content Include="macroScripts\testWikiFile.cshtml" />
|
||||
<Content Include="masterpages\AttachFile.master" />
|
||||
<Content Include="masterpages\Authentication.master" />
|
||||
<Content Include="masterpages\blank.master" />
|
||||
<Content Include="masterpages\Community.master" />
|
||||
<Content Include="masterpages\ConfigureProjectLicenses.master" />
|
||||
<Content Include="masterpages\ContentLanding.master" />
|
||||
<Content Include="masterpages\CreateWikiPage.master" />
|
||||
<Content Include="masterpages\Deli.master" />
|
||||
<Content Include="masterpages\DeliCart.master" />
|
||||
<Content Include="masterpages\DeliCartDetails.master" />
|
||||
<Content Include="masterpages\Dialogs.master" />
|
||||
<Content Include="masterpages\DisplayTopic.master" />
|
||||
<Content Include="masterpages\DocumentationMainpage.master" />
|
||||
<Content Include="masterpages\DocumentationSubpage.master" />
|
||||
<Content Include="masterpages\EditProject.master" />
|
||||
<Content Include="masterpages\Event.master" />
|
||||
<Content Include="masterpages\Eventnews.master" />
|
||||
<Content Include="masterpages\Events.master" />
|
||||
<Content Include="masterpages\FileDownload.master" />
|
||||
<Content Include="masterpages\Forum.master" />
|
||||
<Content Include="masterpages\HelpPage.master" />
|
||||
<Content Include="masterpages\InsertImage.master" />
|
||||
<Content Include="masterpages\Locatorpage.master" />
|
||||
<Content Include="masterpages\Master.master" />
|
||||
<Content Include="masterpages\Mobile.master" />
|
||||
<Content Include="masterpages\MobileTextPage.master" />
|
||||
<Content Include="masterpages\newest.master" />
|
||||
<Content Include="masterpages\Nothing.master" />
|
||||
<Content Include="masterpages\Notifications.master" />
|
||||
<Content Include="masterpages\PayPalRedirect.master" />
|
||||
<Content Include="masterpages\People.master" />
|
||||
<Content Include="masterpages\popular.master" />
|
||||
<Content Include="masterpages\Profilepage.master" />
|
||||
<Content Include="masterpages\Project.master" />
|
||||
<Content Include="masterpages\ProjectGroup.master" />
|
||||
<Content Include="masterpages\Projects.master" />
|
||||
<Content Include="masterpages\ProjectsTags.master" />
|
||||
<Content Include="masterpages\PublicMemberProfile.master" />
|
||||
<Content Include="masterpages\Release.master" />
|
||||
<Content Include="masterpages\ReleaseLanding-bak.master" />
|
||||
<Content Include="masterpages\ReleaseLanding.master" />
|
||||
<Content Include="masterpages\Repository.master" />
|
||||
<Content Include="masterpages\RepositoryFrontpage.master" />
|
||||
<Content Include="masterpages\RepositoryMaster.master" />
|
||||
<Content Include="masterpages\repositoryPage.master" />
|
||||
<Content Include="masterpages\Repository\blank.master" />
|
||||
<Content Include="masterpages\Repository\Community.master" />
|
||||
<Content Include="masterpages\Repository\Deli.master" />
|
||||
<Content Include="masterpages\Repository\DeliRepoNET.master" />
|
||||
<Content Include="masterpages\Repository\FileDownload.master" />
|
||||
<Content Include="masterpages\Repository\Master.master" />
|
||||
<Content Include="masterpages\Repository\Nothing.master" />
|
||||
<Content Include="masterpages\Repository\Project.master" />
|
||||
<Content Include="masterpages\Repository\ProjectGroup.master" />
|
||||
<Content Include="masterpages\Repository\Projects.master" />
|
||||
<Content Include="masterpages\Repository\ProjectsTags.master" />
|
||||
<Content Include="masterpages\Repository\Repository.master" />
|
||||
<Content Include="masterpages\Repository\Textpage.master" />
|
||||
<Content Include="masterpages\RoadMap.master" />
|
||||
<Content Include="masterpages\simplr.master" />
|
||||
<Content Include="masterpages\termsofservice.master" />
|
||||
<Content Include="masterpages\Textpage.master" />
|
||||
<Content Include="masterpages\UmbracoMVP2011.master" />
|
||||
<Content Include="masterpages\Wiki.master" />
|
||||
<Content Include="masterpages\WikiMoveDialog.master" />
|
||||
<Content Include="masterpages\WikiPage.master" />
|
||||
<Content Include="masterpages\WikiPageAttachments.master" />
|
||||
<Content Include="masterpages\WikiPageHistory.master" />
|
||||
<Content Include="masterpages\WikipagewithTOC.master" />
|
||||
<Content Include="projects\umbraco-pro\contour\Documentation\Editor\Attaching-Workflows\WorkFlowButton.png" />
|
||||
<Content Include="projects\umbraco-pro\contour\Documentation\Editor\Attaching-Workflows\Workflownode.png" />
|
||||
<Content Include="projects\umbraco-pro\contour\Documentation\Editor\Attaching-Workflows\WorkflowOverview.png" />
|
||||
@@ -669,8 +662,14 @@
|
||||
<Content Include="scripts\forum\select2\select2-new.js" />
|
||||
<Content Include="scripts\forum\tags.js" />
|
||||
<Content Include="config\IISRewriteMaps.config" />
|
||||
<Content Include="masterpages\ReleaseCompare.master" />
|
||||
<Content Include="App_Plugins\ModelsBuilder\package.manifest" />
|
||||
<None Include="App_Plugins\OurManagement\package.manifest" />
|
||||
<Content Include="config\imageprocessor\security.config" />
|
||||
<Content Include="config\imageprocessor\processing.config" />
|
||||
<Content Include="config\imageprocessor\cache.config" />
|
||||
<Content Include="ApplicationInsights.config">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="config\tinyMceConfig.config" />
|
||||
<Content Include="config\scripting.config" />
|
||||
<Content Include="config\metablogConfig.config" />
|
||||
@@ -1683,16 +1682,9 @@
|
||||
<Content Include="umbraco_client\tablesorting\jquery.tablesorter.min.js" />
|
||||
<Content Include="umbraco_client\tinymce3\langs\en_us.js" />
|
||||
<Content Include="umbraco_client\tinymce3\langs\ru.js" />
|
||||
<Content Include="usercontrols\dashboard\ForceYouTrackDownload.ascx" />
|
||||
<Content Include="usercontrols\dashboard\ForceDocumentationDownload.ascx" />
|
||||
<Content Include="usercontrols\IndexStatus.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ForumSpamCleaner.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ForumSpamListComments.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ForumSpamListTopics.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\SignupSimple.ascx" />
|
||||
<Content Include="usercontrols\umbracoContour\EditForm.ascx" />
|
||||
<Content Include="usercontrols\umbracoContour\Installer.ascx" />
|
||||
<Content Include="usercontrols\umbracoContour\RenderForm.ascx" />
|
||||
<Content Include="Views\ContentLanding.cshtml" />
|
||||
<Content Include="Views\Blank.cshtml" />
|
||||
<Content Include="Views\DisplayTopic.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Forum\TopicForm.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\HeaderProfile.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\QuickMenu.cshtml" />
|
||||
@@ -1705,10 +1697,6 @@
|
||||
<Content Include="Assets\images\logo.svg" />
|
||||
<Content Include="Assets\images\magnifier.svg" />
|
||||
<Content Include="Views\MacroPartials\Navigation\TopNavigation.cshtml" />
|
||||
<Content Include="masterpages\ForumMaster.master" />
|
||||
<Content Include="masterpages\DocumentationMaster.master" />
|
||||
<Content Include="masterpages\AddMarkdownProp.master" />
|
||||
<Content Include="masterpages\ComRepositoryFrontpage.master" />
|
||||
<Content Include="Assets\css\fonts\icomoon\icomoon.eot" />
|
||||
<Content Include="Assets\css\fonts\icomoon\icomoon.ttf" />
|
||||
<Content Include="Assets\css\fonts\icomoon\icomoon.woff" />
|
||||
@@ -1724,19 +1712,13 @@
|
||||
<Content Include="Views\MacroPartials\Projects\ListProjects.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\ProfileNavigation.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Search\GlobalSearchPage.cshtml" />
|
||||
<Content Include="masterpages\Download.master" />
|
||||
<Content Include="Views\MacroPartials\Members\ProfileProjectTeam.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Releases\AllReleases.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Projects\ProjectDetails.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\Register.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Forum\LatestActivity.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\ProfileProjectForums.cshtml" />
|
||||
<Content Include="masterpages\ReleaseProgress.master" />
|
||||
<Content Include="Views\MacroPartials\Global\AlertBar.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\PublicProfile.cshtml" />
|
||||
<Content Include="masterpages\ProfileLogin.master" />
|
||||
<Content Include="masterpages\ProfileRegister.master" />
|
||||
<Content Include="masterpages\Sidebar.master" />
|
||||
<Content Include="Views\MacroPartials\Rss\Forum.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Rss\LatestTopics.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Rss\Packages.cshtml" />
|
||||
@@ -1754,12 +1736,28 @@
|
||||
<Content Include="Views\MacroPartials\RedirectProjectCategory.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Community\Home.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Project\Edit.cshtml" />
|
||||
<Content Include="masterpages\ProjectPage.master" />
|
||||
<Content Include="umbraco\lib\bootstrap-tabdrop\README.md" />
|
||||
<Content Include="Views\MacroPartials\Releases\ReleasesDropdown.cshtml" />
|
||||
<Content Include="Views\Partials\Community\TermsAndConditions.cshtml" />
|
||||
<Content Include="Views\Master.cshtml" />
|
||||
<Content Include="Views\Community.cshtml" />
|
||||
<Content Include="Views\Forum.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\Login.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\ForgotPassword.cshtml" />
|
||||
<Content Include="Views\Partials\Projects\MyProjects.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Projects\MyProjects.cshtml" />
|
||||
<Content Include="Views\EditProject.cshtml" />
|
||||
<Content Include="Views\FileDownload.cshtml" />
|
||||
<Content Include="Views\DocumentationSubpage.cshtml" />
|
||||
<Content Include="Views\Download.cshtml" />
|
||||
<None Include="Views\Partials\Forum\MemberBadge.cshtml" />
|
||||
<Content Include="Views\Search\Search.aspx" />
|
||||
<Content Include="Views\Partials\Project\EditFiles.cshtml" />
|
||||
<Content Include="Views\Partials\Project\PackageEditNavigation.cshtml" />
|
||||
<Content Include="Views\Partials\Project\EditScreenshots.cshtml" />
|
||||
<Content Include="Views\Partials\Project\Complete.cshtml" />
|
||||
<Content Include="Views\Partials\Home\LatestForumActivity.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Community\Scripts.cshtml" />
|
||||
<Content Include="Service References\Application Insights\ConnectedService.json" />
|
||||
<Content Include="Views\Web.config" />
|
||||
<Content Include="web.config">
|
||||
<SubType>Designer</SubType>
|
||||
@@ -4081,65 +4079,6 @@
|
||||
<Content Include="umbraco_client\ui\ui-lightness\images\ui-icons_ffd27a_256x240.png" />
|
||||
<Content Include="umbraco_client\ui\ui-lightness\images\ui-icons_ffffff_256x240.png" />
|
||||
<Content Include="umbraco_client\ui\ui-lightness\jquery-ui.custom.css" />
|
||||
<Content Include="usercontrols\dashboard\getMembersFromGroup.ascx" />
|
||||
<Content Include="usercontrols\dashboard\memberSearch.ascx" />
|
||||
<Content Include="usercontrols\Deli\Cart\Cart.ascx" />
|
||||
<Content Include="usercontrols\Deli\Cart\CartDetails.ascx" />
|
||||
<Content Include="usercontrols\Deli\Cart\CartProgress.ascx" />
|
||||
<Content Include="usercontrols\Deli\Cart\CartReview.ascx" />
|
||||
<Content Include="usercontrols\Deli\Cart\MicroCart.ascx" />
|
||||
<Content Include="usercontrols\Deli\Customers\VendorCustomers.ascx" />
|
||||
<Content Include="usercontrols\Deli\Dashboard\VendorBIOverview.ascx" />
|
||||
<Content Include="usercontrols\Deli\Dashboard\VendorProjectBI.ascx" />
|
||||
<Content Include="usercontrols\Deli\EditPackage.ascx" />
|
||||
<Content Include="usercontrols\Deli\HQStaffPickProjects.ascx" />
|
||||
<Content Include="usercontrols\Deli\License\Member\MyLicenses.ascx" />
|
||||
<Content Include="usercontrols\Deli\License\Vendor\ProjectLicenses.ascx" />
|
||||
<Content Include="usercontrols\Deli\ListPagination.ascx" />
|
||||
<Content Include="usercontrols\Deli\Package\Editor.ascx" />
|
||||
<Content Include="usercontrols\Deli\Package\Steps\Complete.ascx" />
|
||||
<Content Include="usercontrols\Deli\Package\Steps\Details.ascx" />
|
||||
<Content Include="usercontrols\Deli\Package\Steps\Files.ascx" />
|
||||
<Content Include="usercontrols\Deli\Package\Steps\Screenshots.ascx" />
|
||||
<Content Include="usercontrols\Deli\Payout\VendorPayout.ascx" />
|
||||
<Content Include="usercontrols\Deli\Payout\VendorPayoutHistory.ascx" />
|
||||
<Content Include="usercontrols\Deli\Profile\MemberDataLookup.ascx" />
|
||||
<Content Include="usercontrols\Deli\Profile\MyProjects.ascx" />
|
||||
<Content Include="usercontrols\Deli\Profile\Signup.ascx" />
|
||||
<Content Include="usercontrols\Deli\ProjectView.ascx" />
|
||||
<Content Include="usercontrols\Deli\Purchase\PayPalConfirm.ascx" />
|
||||
<Content Include="usercontrols\Deli\Purchase\PayPalPayment.ascx" />
|
||||
<Content Include="usercontrols\Deli\Repository\RepoProjectView.ascx" />
|
||||
<Content Include="usercontrols\Deli\Support\Member\RefundRequest.ascx" />
|
||||
<Content Include="usercontrols\Deli\Support\VendorSupportRequest.ascx" />
|
||||
<Content Include="usercontrols\Deli\Support\Vendor\VendorSupportRequest.ascx" />
|
||||
<Content Include="usercontrols\Deli\TopPaidProjectsList.ascx" />
|
||||
<Content Include="usercontrols\FergusonMoriyama\FeedCache\PostInstall.ascx" />
|
||||
<Content Include="usercontrols\ImageGenInstaller.ascx" />
|
||||
<Content Include="usercontrols\MemberLocator.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\acceptTos.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\EventEditor.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\EventMailer.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\FileDownloadProxy.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\Forgotpassword.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\HeaderLogin.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\InsertImage.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\Login.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\Login_novalidationscript.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ProjectCollabRequest.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ProjectContributors.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ProjectEditor.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ProjectFileUpload.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\ProjectForums.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\Signup.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\testoptimize.ascx" />
|
||||
<Content Include="usercontrols\our.umbraco.org\YAF_MemberImport.ascx" />
|
||||
<Content Include="usercontrols\poll\Poll.ascx" />
|
||||
<Content Include="usercontrols\umbracoMemberControls\umbLogin.ascx" />
|
||||
<Content Include="usercontrols\umbracoMemberControls\umbPasswordForgot.ascx" />
|
||||
<Content Include="usercontrols\umbracoMemberControls\umbRegister.ascx" />
|
||||
<Content Include="usercontrols\Umbraco\ExamineIndexAdmin.ascx" />
|
||||
<Content Include="usercontrols\uWiki\FileUpload.ascx" />
|
||||
<Content Include="w3c\p3p.xml" />
|
||||
<Content Include="webservices\Licensing.asmx" />
|
||||
<Content Include="webservices\MarketPlace.asmx" />
|
||||
@@ -4241,8 +4180,6 @@
|
||||
<Content Include="packages.config" />
|
||||
<Content Include="App_Data\packages\installed\installedPackages.config" />
|
||||
<Content Include="config\FileIndexerConfig.config" />
|
||||
<Content Include="masterpages\ArchivedRelease.master" />
|
||||
<Content Include="masterpages\ReleaseDownload.master" />
|
||||
<Content Include="macroScripts\Releases-ListDownloads.cshtml">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
@@ -4277,14 +4214,9 @@
|
||||
<Content Include="projects\umbraco-pro\contour\Documentation\readme.md" />
|
||||
<Content Include="macroScripts\Rss-CommunityBlogs.cshtml" />
|
||||
<Content Include="macroScripts\TwitterSearch.cshtml" />
|
||||
<Content Include="masterpages\SwitchForumEditor.master" />
|
||||
<Content Include="macroScripts\SwitchForumEditor.cshtml" />
|
||||
<Content Include="masterpages\ManageSpam.master" />
|
||||
<Content Include="macroScripts\ManageSpam.cshtml" />
|
||||
<Content Include="masterpages\ProjectsVersioned.master" />
|
||||
<Content Include="macroScripts\ProjectsVersioned.cshtml" />
|
||||
<Content Include="macroScripts\ProjectsVersionList.cshtml" />
|
||||
<Content Include="masterpages\ProjectCompatibility.master" />
|
||||
<Content Include="macroScripts\EditProjectCompatibility.cshtml" />
|
||||
<Content Include="macroScripts\EventsOverview.cshtml" />
|
||||
<Content Include="umbraco\assets\fonts\helveticons\helveticons.eot" />
|
||||
@@ -4401,7 +4333,30 @@
|
||||
<Content Include="Views\Partials\Projects\CompatibilityReport.cshtml" />
|
||||
<Content Include="Views\Partials\Project\Edit.cshtml" />
|
||||
<Content Include="Views\Partials\Home\Documentation.cshtml" />
|
||||
<Content Include="Views\Partials\Home\ForumActivity.cshtml" />
|
||||
<Content Include="Views\Partials\Members\Login.cshtml" />
|
||||
<Content Include="Views\Partials\Members\ForgotPassword.cshtml" />
|
||||
<Content Include="Views\Partials\Home\TwitterSearchUmbraco.cshtml" />
|
||||
<Content Include="Views\Projects.cshtml" />
|
||||
<Content Include="Views\Project.cshtml" />
|
||||
<Content Include="Views\DocumentationMainpage.cshtml" />
|
||||
<Content Include="Views\Search.cshtml" />
|
||||
<Content Include="Views\Partials\SearchResults.cshtml" />
|
||||
<Content Include="Views\ReleaseLanding.cshtml" />
|
||||
<Content Include="Views\ReleaseProgress.cshtml" />
|
||||
<Content Include="Views\Release.cshtml" />
|
||||
<Content Include="Views\Textpage.cshtml" />
|
||||
<Content Include="Views\RoadMap.cshtml" />
|
||||
<Content Include="Views\Partials\Members\Login.cshtml" />
|
||||
<Content Include="Views\Partials\Members\ForgotPassword.cshtml" />
|
||||
<Content Include="Views\Profilepage.cshtml" />
|
||||
<Content Include="Views\ProjectPage.cshtml" />
|
||||
<Content Include="Views\ReleaseDownload.cshtml" />
|
||||
<Content Include="Views\PublicMemberProfile.cshtml" />
|
||||
<Content Include="Views\ReleaseCompare.cshtml" />
|
||||
<Content Include="Views\Repository.cshtml" />
|
||||
<Content Include="Views\RepositoryFrontpage.cshtml" />
|
||||
<Content Include="Views\RepositoryPage.cshtml" />
|
||||
<Content Include="Views\RepositoryMaster.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Editors\Textstring.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Editors\Rte.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Editors\Media.cshtml" />
|
||||
@@ -4409,7 +4364,9 @@
|
||||
<Content Include="Views\Partials\Grid\Editors\Embed.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Editors\Base.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Bootstrap3.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Bootstrap3-Fluid.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Bootstrap2.cshtml" />
|
||||
<Content Include="Views\Partials\Grid\Bootstrap2-Fluid.cshtml" />
|
||||
<None Include="web.Debug.config">
|
||||
<DependentUpon>web.config</DependentUpon>
|
||||
</None>
|
||||
@@ -4429,12 +4386,14 @@
|
||||
<Folder Include="css\img\Cached\" />
|
||||
<Folder Include="umbraco\lib\datetimepicker\langs\" />
|
||||
<Folder Include="umbraco\Views\directives\" />
|
||||
<Folder Include="usercontrols\Deli\Admin\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.1.0.0\analyzers\dotnet\cs\Microsoft.CodeAnalysis.Analyzers.dll" />
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.1.0.0\analyzers\dotnet\cs\Microsoft.CodeAnalysis.CSharp.Analyzers.dll" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<WCFMetadata Include="Service References\" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">11.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets')">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v11.0</VSToolsPath>
|
||||
@@ -4482,14 +4441,16 @@
|
||||
<!-- Only runs if the ClientFiles build folder doesn't yet exist -->
|
||||
<CallTarget Targets="ClientFilesBuild" Condition="!Exists('$(ProjectDir)\..\OurUmbraco.Client\build\assets')" />
|
||||
</Target>
|
||||
<Import Project="..\packages\AutoMapper.3.3.1\tools\AutoMapper.targets" Condition="Exists('..\packages\AutoMapper.3.3.1\tools\AutoMapper.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\UmbracoCms.7.5.3\build\UmbracoCms.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\UmbracoCms.7.5.3\build\UmbracoCms.props'))" />
|
||||
<Error Condition="!Exists('..\packages\UmbracoCms.7.5.3\build\UmbracoCms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\UmbracoCms.7.5.3\build\UmbracoCms.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\UmbracoCms.7.5.7\build\UmbracoCms.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\UmbracoCms.7.5.7\build\UmbracoCms.props'))" />
|
||||
<Error Condition="!Exists('..\packages\UmbracoCms.7.5.7\build\UmbracoCms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\UmbracoCms.7.5.7\build\UmbracoCms.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\packages\UmbracoCms.7.5.3\build\UmbracoCms.targets" Condition="Exists('..\packages\UmbracoCms.7.5.3\build\UmbracoCms.targets')" />
|
||||
<Import Project="..\packages\UmbracoCms.7.5.7\build\UmbracoCms.targets" Condition="Exists('..\packages\UmbracoCms.7.5.7\build\UmbracoCms.targets')" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="AfterBuild">
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"ProviderId": "Microsoft.ApplicationInsights.ConnectedService.ConnectedServiceProvider",
|
||||
"Version": "7.16.109.2",
|
||||
"GettingStartedDocument": {
|
||||
"Uri": "https://go.microsoft.com/fwlink/?LinkID=613413"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@Umbraco.RenderMacro(Model.Content.GetPropertyValue<string>("macro"))
|
||||
@@ -0,0 +1,29 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
|
||||
@Umbraco.RenderMacro("CommunityHome")
|
||||
|
||||
@section Search {
|
||||
<script type="text/template" class="search-item-template">
|
||||
<li>
|
||||
<a href="{{ url }}">
|
||||
<div class="type-icon">
|
||||
<i class="{{ icon }}"></i>
|
||||
</div>
|
||||
|
||||
<div class="type-context">
|
||||
<div class="type-name">
|
||||
{{ name }}
|
||||
</div>
|
||||
<div class="type-description">
|
||||
{{ description }}
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
</script>
|
||||
}
|
||||
|
||||
@Umbraco.RenderMacro("CommunityHomeScripts")
|
||||
@@ -0,0 +1,19 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
|
||||
<div id="contribute" class="subpage">
|
||||
<div id="body" class="markdown-syntax">
|
||||
<div>
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "0" })
|
||||
</div>
|
||||
<h1>Contribute to the Umbraco Project</h1>
|
||||
<div>
|
||||
@Html.Raw(Model.Content.GetPropertyValue<string>("bodyText"))
|
||||
</div>
|
||||
<div class="options">
|
||||
@Umbraco.RenderMacro("ContentLanding-Summary")
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,22 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<!-- FORUM OVERVIEW START -->
|
||||
<section class="forum-overview">
|
||||
<div class="forum-single-thread">
|
||||
<!-- FORUM HEADER START -->
|
||||
<div class="utilities">
|
||||
<!-- FORUM BREADCRUMB START -->
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
<!-- FORUM BREADCRUMB END -->
|
||||
<!-- THREAD ACTIONS START -->
|
||||
@Umbraco.RenderMacro("ForumTopicActions")
|
||||
<!-- THREAD ACTIONS END -->
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<!-- FORUM HEADER END -->
|
||||
@Umbraco.RenderMacro("ForumThread")
|
||||
</div>
|
||||
</section>
|
||||
@Umbraco.RenderMacro("ForumForm")
|
||||
@@ -0,0 +1,22 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="has-sidebar">
|
||||
<div class="documentation">
|
||||
<div id="wiki" class="subpage">
|
||||
<div id="body">
|
||||
<div style="margin-top: 25px;">
|
||||
@Umbraco.RenderMacro("DocsBreadcrumb")
|
||||
</div>
|
||||
|
||||
<div id="markdown-docs" class="markdown-syntax">
|
||||
@Umbraco.RenderMacro("DocsDisplayMarkdown")
|
||||
</div>
|
||||
|
||||
<br style="clear: both" />
|
||||
<div class="divider"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,58 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="has-sidebar">
|
||||
<div class="documentation">
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
@Umbraco.RenderMacro("DocsNavigation")
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div><!-- .sidebar-area-->
|
||||
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
<div>
|
||||
@Umbraco.RenderMacro("DocsBreadcrumb")
|
||||
</div>
|
||||
|
||||
<div class="search-big">
|
||||
<input type="search" class="docs-search-input" required placeholder="Search for documentation">
|
||||
<label for="search">Search for documentation</label>
|
||||
</div>
|
||||
|
||||
<ul class="search-all-results docs-search-listing"></ul>
|
||||
|
||||
<div id="markdown-docs" class="docs-default-listing markdown-syntax">
|
||||
@Umbraco.RenderMacro("DocsDisplayMarkdown")
|
||||
</div>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
|
||||
</div><!-- .page-content -->
|
||||
|
||||
<script type="text/template" class="search-item-docs">
|
||||
<li>
|
||||
<a href="{{ url }}">
|
||||
<div class="type-icon">
|
||||
<i class="icon-Book-alt"></i>
|
||||
</div>
|
||||
|
||||
<div class="type-context">
|
||||
<div class="type-name">
|
||||
{{ name }}
|
||||
</div>
|
||||
<div class="type-description">
|
||||
{{ body }}
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,77 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@using ClientDependency.Core.Mvc
|
||||
@using OurUmbraco.Release
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
Html.RequiresCss("~/css/releases.css");
|
||||
var latestRelease = Download.GetCurrentReleaseFromFile();
|
||||
}
|
||||
|
||||
<section id="download" class="download-umbraco">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<div class="dl-content">
|
||||
<h1>Download Umbraco</h1>
|
||||
<p>If you're new to Umbraco you might want to start your install with the versions on the <a href="/documentation/getting-started/installation/">Web Platform Installer or WebMatrix</a>. These tools will automatically download and install any dependencies to give you a flying start.</p>
|
||||
<a id="downloadButton" class="button white" href="/contribute/releases/@(latestRelease.version.Replace(".", string.Empty))?fromdownload=true">
|
||||
<i class="icon-Download-alt"></i>
|
||||
<span>Download Umbraco v@(latestRelease.version)</span>
|
||||
</a>
|
||||
<p class="small">or, install via nuget</p>
|
||||
<span class="pm-nuget">
|
||||
<input class="pre nuget" value="Install-Package UmbracoCms" readonly="">
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="archive">
|
||||
<a href="/contribute/releases/">See releases</a>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
|
||||
<section id="install" class="download-umbraco" style="display: none">
|
||||
<div class="mac-notice">
|
||||
You're running MacOS, follow <a href="">this guide.</a>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<div class="dl-content steps">
|
||||
<h2>Almost there</h2>
|
||||
<div class="guide">
|
||||
<div class="step step-one">
|
||||
<span>1</span>
|
||||
<div>Unzip</div>
|
||||
</div>
|
||||
<div class="step step-two">
|
||||
<span>2</span>
|
||||
<div>Run with WebMatrix</div>
|
||||
</div>
|
||||
<div class="step step-three">
|
||||
<span>3</span>
|
||||
<div>Follow the installer</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<!-- insert gif here -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="archive">
|
||||
See detailed instructions in the <a href="/documentation/Getting-Started/Setup/Install/">documentation</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
$('.dl-content').on('click', '#downloadButton', function (e) {
|
||||
$('section#download').fadeOut();
|
||||
$('section#install').fadeIn();
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
@Umbraco.RenderMacro("MemberProfileNavigation", new { source = "1057" })
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div><!-- .sidebar-area -->
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
@if (Request.QueryString["editorStep"] == "files")
|
||||
{
|
||||
@Html.Action("RenderFiles", "Project")
|
||||
}
|
||||
@if (Request.QueryString["editorStep"] == "screenshots")
|
||||
{
|
||||
@Html.Action("RenderScreenshots", "Project")
|
||||
}
|
||||
@if (Request.QueryString["editorStep"] == "complete")
|
||||
{
|
||||
@Html.Action("RenderComplete", "Project")
|
||||
}
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
</div><!-- .page-content -->
|
||||
@@ -0,0 +1,81 @@
|
||||
@using OurUmbraco.Wiki.BusinessLogic
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
if (Request["id"] == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
int fileId;
|
||||
if (int.TryParse(Request["id"], out fileId) == false)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (fileId == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var wikiFile = new WikiFile(fileId);
|
||||
|
||||
wikiFile.UpdateDownloadCounter(false, wikiFile.FileType == "package");
|
||||
using (var sqlHelper = umbraco.BusinessLogic.Application.SqlHelper)
|
||||
{
|
||||
var path = sqlHelper.ExecuteScalar<string>(
|
||||
"Select path from wikiFiles where id = @id;",
|
||||
sqlHelper.CreateParameter("@id", fileId));
|
||||
|
||||
var file = sqlHelper.ExecuteScalar<string>(
|
||||
"Select name from wikiFiles where id = @id;",
|
||||
sqlHelper.CreateParameter("@id", fileId));
|
||||
|
||||
var fileinfo = new System.IO.FileInfo(Server.MapPath(path));
|
||||
|
||||
var extension = System.IO.Path.GetExtension(Server.MapPath(path));
|
||||
var type = "";
|
||||
// set known types based on file extension
|
||||
if (extension != null)
|
||||
{
|
||||
switch (extension.ToLower())
|
||||
{
|
||||
case ".tif":
|
||||
case ".tiff":
|
||||
type = "image/tiff";
|
||||
break;
|
||||
case ".jpg":
|
||||
case ".jpeg":
|
||||
type = "image/jpeg";
|
||||
break;
|
||||
case ".gif":
|
||||
type = "image/gif";
|
||||
break;
|
||||
case ".docx":
|
||||
case ".doc":
|
||||
case ".rtf":
|
||||
type = "Application/msword";
|
||||
break;
|
||||
case ".pdf":
|
||||
type = "Application/pdf";
|
||||
break;
|
||||
case ".png":
|
||||
type = "image/png";
|
||||
break;
|
||||
case ".bmp":
|
||||
type = "image/bmp";
|
||||
break;
|
||||
default:
|
||||
type = "application/octet-stream";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Response.Clear();
|
||||
|
||||
Response.AddHeader("Content-Disposition", "attachment; filename= " + file.Replace(" ", "-"));
|
||||
Response.AddHeader("Content-Length", fileinfo.Length.ToString());
|
||||
Response.ContentType = type;
|
||||
Response.WriteFile(path);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
|
||||
<!-- FORUM OVERVIEW START -->
|
||||
<section class="forum-overview">
|
||||
<div class="forum-archive">
|
||||
@Umbraco.RenderMacro("ForumForum")
|
||||
</div>
|
||||
</section>
|
||||
@Umbraco.RenderMacro("ForumForm")
|
||||
|
||||
@section EndScripts {
|
||||
@{
|
||||
var cat = -1;
|
||||
if (Model.Content.Level > 3)
|
||||
{
|
||||
cat = Model.Content.Id;
|
||||
}
|
||||
|
||||
var page = 1;
|
||||
if (Request["page"] != null)
|
||||
{
|
||||
int.TryParse(Request["page"], out page);
|
||||
}
|
||||
}
|
||||
<script type="text/javascript">
|
||||
|
||||
$('table')
|
||||
.scrolly({
|
||||
page: @page,
|
||||
dataUrl: '/umbraco/api/PublicForum/LatestPaged/?cat=@cat',
|
||||
template: '#forum-template',
|
||||
loadingHtml: '<div class="span"><div class=" loader"></div></div>'
|
||||
});
|
||||
|
||||
</script>
|
||||
}
|
||||
@@ -57,11 +57,71 @@
|
||||
|
||||
@if (Members.IsLoggedIn())
|
||||
{
|
||||
@Html.Partial("home/forumactivity")
|
||||
@ForumActivity()
|
||||
@TwitterSearch()
|
||||
@Html.Partial("home/documentation")
|
||||
}
|
||||
else
|
||||
{
|
||||
@Html.Partial("home/documentation")
|
||||
@Html.Partial("home/forumactivity")
|
||||
@ForumActivity()
|
||||
@TwitterSearch()
|
||||
}
|
||||
|
||||
@helper ForumActivity()
|
||||
{
|
||||
<section class="forum">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-12">
|
||||
<h1 class="text-center">Forum Activity</h1>
|
||||
<p>
|
||||
Recent activity in the forums, where people are helping each other with current problems.
|
||||
</p>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<small>Recent posts</small>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12 flex" id="forum-activity">
|
||||
<h2>Loading latest forum activity...</h2>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12 goto-forum">
|
||||
<a class="button green" href="/forum">Go to Forum →</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
}
|
||||
|
||||
@helper TwitterSearch()
|
||||
{
|
||||
<section class="forum">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-12">
|
||||
<h1 class="text-center">Twitter Activity</h1>
|
||||
<p>
|
||||
Recent activity on twitter, where people are talking about Umbraco.
|
||||
</p>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<small>Recent tweets</small>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12 flex" id="twitter-search">
|
||||
<h2>Loading twitter search results...</h2>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12 goto-forum">
|
||||
<a class="button green" href="https://twitter.com/search?f=tweets&vertical=default&q=umbraco&src=typd">Join the conversation on Twitter →</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
@inherits Umbraco.Web.Macros.PartialViewMacroPage
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
try {
|
||||
$("#twitter-search").load("@Url.Action("TwitterSearchResult", "TwitterSearch", new { numberOfResults = 6 })");
|
||||
}
|
||||
catch (errTwitter) {
|
||||
console.log("Couldn't load Twitter feed", errTwitter.message);
|
||||
}
|
||||
|
||||
try {
|
||||
$("#forum-activity").load("@Url.Action("LatestActivity", "LatestActivity", new { numberOfTopics = 6 })");
|
||||
}
|
||||
catch (errForum) {
|
||||
console.log("Couldn't load latest forum activity", errForum.message);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
@@ -1,54 +0,0 @@
|
||||
@using OurUmbraco.Forum.Extensions
|
||||
@using OurUmbraco.Forum.Models
|
||||
@using OurUmbraco.Forum.Services
|
||||
@using OurUmbraco.Our
|
||||
@inherits Umbraco.Web.Macros.PartialViewMacroPage
|
||||
|
||||
@{
|
||||
var ts = new TopicService(ApplicationContext.DatabaseContext);
|
||||
}
|
||||
|
||||
<div class="col-md-12 flex">
|
||||
@Column(ts.GetLatestTopics(6, 1))
|
||||
</div>
|
||||
|
||||
@helper Column(IEnumerable<ReadOnlyTopic> topics)
|
||||
{
|
||||
foreach (var topic in topics.ToArray())
|
||||
{
|
||||
var cat = Umbraco.TypedContent(topic.ParentId);
|
||||
var mem = Members.GetById(topic.LatestReplyAuthor) ?? Members.GetById(topic.MemberId);
|
||||
|
||||
<a href="@topic.GetUrl()" class="forum-thread @Umbraco.If(topic.Answer > 0, " solved")">
|
||||
|
||||
<div class="avatar">
|
||||
@if(mem != null)
|
||||
{
|
||||
@Html.Raw(Utils.GetMemberAvatar(mem, 100))
|
||||
}
|
||||
</div>
|
||||
|
||||
<div class="meta">
|
||||
<div class="forum-thread-text">
|
||||
<h3>@topic.Title</h3>
|
||||
<p>
|
||||
@if (topic.Replies != 0 && !string.IsNullOrEmpty(topic.LastReplyAuthorName))
|
||||
{
|
||||
<text>last edited by @topic.LastReplyAuthorName</text>
|
||||
}
|
||||
else
|
||||
{
|
||||
<text>created by @topic.AuthorName</text>
|
||||
}
|
||||
|
||||
@topic.Updated.ConvertToRelativeTime()
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="category">
|
||||
<span class="cat">@cat.Name</span>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@
|
||||
@using OurUmbraco.Forum.Extensions
|
||||
@using OurUmbraco.Forum.Services
|
||||
@using OurUmbraco.NotificationsWeb.Library
|
||||
@using Umbraco.Core.Logging
|
||||
|
||||
@{
|
||||
var topicService = new TopicService(ApplicationContext.DatabaseContext);
|
||||
@@ -61,8 +62,17 @@
|
||||
}
|
||||
|
||||
<ul class="comments">
|
||||
|
||||
@Html.Partial("forum/question", topic)
|
||||
|
||||
@{
|
||||
try
|
||||
{
|
||||
@Html.Partial("forum/question", topic)
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogHelper.Error<string>(string.Format("~/Views/MacroPartials/Forum/Thread.cshtml - error rendering topic with id {0}", topic.Id), ex);
|
||||
}
|
||||
}
|
||||
|
||||
@foreach (var comment in topic.Comments.Where(x => x.ParentCommentId == 0))
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
if (string.IsNullOrWhiteSpace(memberGuid) == false)
|
||||
{
|
||||
var memberService = UmbracoContext.Current.Application.Services.MemberService;
|
||||
var memberService = ApplicationContext.Current.Services.MemberService;
|
||||
var member = memberService.GetByKey(new Guid(memberGuid));
|
||||
|
||||
if (member == null)
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
@inherits Umbraco.Web.Macros.PartialViewMacroPage
|
||||
|
||||
@{
|
||||
if (Members.IsLoggedIn())
|
||||
{
|
||||
Response.Redirect("/member/profile");
|
||||
}
|
||||
}
|
||||
|
||||
@Html.Action("RenderForgotPassword", "Login")
|
||||
@@ -0,0 +1,17 @@
|
||||
@inherits Umbraco.Web.Macros.PartialViewMacroPage
|
||||
|
||||
@{
|
||||
if (Members.IsLoggedIn())
|
||||
{
|
||||
if (Model.MacroParameters["NextPage"] != null && string.IsNullOrWhiteSpace(Model.MacroParameters["NextPage"].ToString()) == false)
|
||||
{
|
||||
// It's being called from the old package repository, don't redirect
|
||||
}
|
||||
else
|
||||
{
|
||||
Response.Redirect("/member/profile");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Html.Action("RenderLogin", "Login")
|
||||
@@ -10,5 +10,5 @@
|
||||
<h4><a href="?category=@childPage.Name">@childPage.Name</a></h4>
|
||||
</li>
|
||||
}
|
||||
<li><h4><a href="?category=uaas">Umbraco as a Service</a></h4></li>
|
||||
<li><h4><a href="?category=uaas">Umbraco Cloud</a></h4></li>
|
||||
</ul>
|
||||
@@ -22,7 +22,7 @@
|
||||
}
|
||||
if (category != null)
|
||||
{
|
||||
headline = category == "uaas" ? "Umbraco as a Service" : category.ToLowerInvariant();
|
||||
headline = category == "uaas" ? "Umbraco Cloud" : category.ToLowerInvariant();
|
||||
}
|
||||
|
||||
var searchFilters = new SearchFilters(BooleanOperation.And);
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
@inherits Umbraco.Web.Macros.PartialViewMacroPage
|
||||
@{
|
||||
var m = Members.GetCurrentMember();
|
||||
var reputation = m.GetPropertyValue<string>("reputationTotal");
|
||||
|
||||
int reputationTotal;
|
||||
var enoughReputation = int.TryParse(reputation, out reputationTotal) && reputationTotal > 30;
|
||||
}
|
||||
@if (enoughReputation)
|
||||
{
|
||||
@Html.Action("RenderMyProjects", "Projects")
|
||||
}
|
||||
else
|
||||
{
|
||||
<h2>Sorry, your account is too new to create projects! If you're human, make sure to <a href="https://umbraco.com/about-us/team">get in touch with us</a> to get this restriction lifted.</h2>
|
||||
}
|
||||
@@ -281,7 +281,7 @@
|
||||
@if (currentMember != null && (currentMember.Id == owner.Id || contributors.Any(c => c.MemberId == currentMember.Id)))
|
||||
{
|
||||
<br/><br/>
|
||||
<a href="/member/profile/projects/edit?id=@project.Id">Edit project</a>
|
||||
<a href="/member/profile/projects/details?projectId=@project.Id">Edit project</a>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
<optgroup label="@majorVersion.Key">
|
||||
@foreach (var version in versions)
|
||||
{
|
||||
if (version.Key.ToString() == fromVersion.ToString())
|
||||
if (fromVersion != null && version.Key.ToString() == fromVersion.ToString())
|
||||
{
|
||||
<option name="@version.Key" selected="selected" value="@version.Key">@version.Key</option>
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
int forumId;
|
||||
// For some reason the Request.Url will show that this URL looks like: /rss/forum/?id=?id=103196
|
||||
// This means that Request.QueryString["id"] results in ",1929". Removing the comma helps...
|
||||
if (int.TryParse(Model.MacroParameters["forumId"].ToString().Replace(",", string.Empty), out forumId) == false)
|
||||
if (int.TryParse(Request.QueryString["id"].Replace(",", string.Empty), out forumId) == false)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -7,10 +7,7 @@
|
||||
var selfUrl = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Host, Request.Url.PathAndQuery);
|
||||
var home = Model.Content.AncestorOrSelf(1);
|
||||
var projectsRoot = home.Children.First(x => x.ContentType.Alias == "Projects");
|
||||
var orderByUpdated = Model.MacroParameters["updated"].ToString() == "1";
|
||||
var projects = orderByUpdated
|
||||
? projectsRoot.Descendants("Project").OrderByDescending(x => x.UpdateDate).Where(x => x.GetPropertyValue<bool>("projectLive")).Take(20)
|
||||
: projectsRoot.Descendants("Project").OrderByDescending(x => x.CreateDate).Where(x => x.GetPropertyValue<bool>("projectLive")).Take(20);
|
||||
var projects = projectsRoot.Descendants("Project").OrderByDescending(x => x.UpdateDate).Where(x => x.GetPropertyValue<bool>("projectLive")).Take(20);
|
||||
}<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||
<channel>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
int memberId;
|
||||
// For some reason the Request.Url will show that this URL looks like: /rss/forum/?id=?id=103196
|
||||
// This means that Request.QueryString["id"] results in ",1929". Removing the comma helps...
|
||||
if (int.TryParse(Model.MacroParameters["memberId"].ToString().Replace(",", string.Empty), out memberId) == false)
|
||||
if (int.TryParse(Request.QueryString["id"].Replace(",", string.Empty), out memberId) == false)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
int topicId;
|
||||
// For some reason the Request.Url will show that this URL looks like: /rss/forum/?id=?id=103196
|
||||
// This means that Request.QueryString["id"] results in ",1929". Removing the comma helps...
|
||||
if (int.TryParse(Model.MacroParameters["topicId"].ToString().Replace(",", string.Empty), out topicId) == false)
|
||||
if (int.TryParse(Request.QueryString["id"].Replace(",", string.Empty), out topicId) == false)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,187 @@
|
||||
@using ClientDependency.Core.Mvc
|
||||
@using Umbraco.Core.Configuration
|
||||
@using Umbraco.Web.Security
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = null;
|
||||
var model = UmbracoContext.Current.PublishedContentRequest.PublishedContent;
|
||||
var bodyCss =
|
||||
model.Level > 2 && model.AncestorOrSelf(3).Id == 1057
|
||||
? "profile has-sidebar"
|
||||
: model.DocumentTypeAlias.ToLower().Replace(" ", "-") + "-page";
|
||||
|
||||
var ms = new MembershipHelper(UmbracoContext.Current);
|
||||
var member = ms.GetCurrentMember();
|
||||
var memberIsBlocked = false;
|
||||
if (member != null) { memberIsBlocked = member.GetPropertyValue<bool>("blocked"); }
|
||||
|
||||
|
||||
Html.RequiresCss("~/assets/css/style.min.css", 0);
|
||||
Html.RequiresCss("https://fonts.googleapis.com/css?family=Asap:400,700,400italic,700italic", 0);
|
||||
Html.RequiresCss("https://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.5/jquery.fancybox.min.css", 0);
|
||||
|
||||
|
||||
Html.RequiresJs("https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.13.1/jquery.validate.min.js");
|
||||
Html.RequiresJs("https://ajax.aspnetcdn.com/ajax/mvc/4.0/jquery.validate.unobtrusive.min.js");
|
||||
Html.RequiresJs("https://cdnjs.cloudflare.com/ajax/libs/pagedown/1.0/Markdown.Converter.js");
|
||||
Html.RequiresJs("https://cdnjs.cloudflare.com/ajax/libs/pagedown/1.0/Markdown.Editor.js");
|
||||
Html.RequiresJs("https://cdnjs.cloudflare.com/ajax/libs/pagedown/1.0/Markdown.Sanitizer.js");
|
||||
Html.RequiresJs("https://cdnjs.cloudflare.com/ajax/libs/mustache.js/0.8.1/mustache.min.js");
|
||||
Html.RequiresJs("https://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.5/jquery.fancybox.min.js");
|
||||
|
||||
Html.RequiresJs("~/assets/js/jquery.ajaxfileupload.js");
|
||||
|
||||
Html.RequiresJs("~/assets/js/jquery.scrolly.js");
|
||||
Html.RequiresJs("~/assets/js/lodash.min.js");
|
||||
Html.RequiresJs("~/assets/js/community.js");
|
||||
Html.RequiresJs("~/assets/js/app.min.js");
|
||||
Html.RequiresJs("~/assets/js/editor.min.js");
|
||||
|
||||
}<!doctype html>
|
||||
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
|
||||
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
|
||||
<!--[if gt IE 8]><!-->
|
||||
<html class="no-js" lang="en">
|
||||
<!--<![endif]-->
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||
|
||||
<link rel="alternate" type="application/rss+xml" title="Latest packages" href="//our.umbraco.org/rss/projects" />
|
||||
<link rel="alternate" type="application/rss+xml" title="Package updates" href="//our.umbraco.org/rss/projectsupdate" />
|
||||
<link rel="alternate" type="application/rss+xml" title="Active forum topics" href="//our.umbraco.org/rss/activetopics" />
|
||||
<link rel="alternate" type="application/rss+xml" title="Community blogs" href="//pipes.yahoo.com/pipes/pipe.run?_id=8llM7pvk3RGFfPy4pgt1Yg&_render=rss" />
|
||||
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="our.umbraco.org" href="/scripts/OpenSearch.xml">
|
||||
|
||||
<!-- Application name -->
|
||||
<meta name="application-name" content="Our Umbraco" />
|
||||
<meta name="apple-mobile-web-app-title" content="Our Umbraco">
|
||||
|
||||
<!-- Icons -->
|
||||
<link rel="apple-touch-icon-precomposed" href="/assets/images/app-icons/icon-60.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="/assets/images/app-icons/icon-72.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="76x76" href="/assets/images/app-icons/icon-76.png">
|
||||
<link rel="icon" sizes="192x192" href="/assets/images/app-icons/touch-icon-192x192.png">
|
||||
|
||||
<meta name="msapplication-TileImage" content="/assets/images/app-icons/tile.png" />
|
||||
<meta name="msapplication-config" content="/assets/images/app-icons/browserconfig.xml">
|
||||
|
||||
<link rel="icon" type="image/png" href="/assets/images/app-icons/favicon.png">
|
||||
|
||||
<title>
|
||||
@Umbraco.RenderMacro("Title")
|
||||
</title>
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.7.1/modernizr.min.js"></script>
|
||||
<![endif]-->
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.7.2.min.js"></script>
|
||||
|
||||
@Umbraco.RenderMacro("MembersJsValues")
|
||||
|
||||
@Html.RenderCssHere()
|
||||
|
||||
<script>
|
||||
var _prum = [['id', '529dbcf6abe53d055a000000'],
|
||||
['mark', 'firstbyte', (new Date()).getTime()]];
|
||||
(function () {
|
||||
var s = document.getElementsByTagName('script')[0]
|
||||
, p = document.createElement('script');
|
||||
p.async = 'async';
|
||||
p.src = '//rum-static.pingdom.net/prum.min.js';
|
||||
s.parentNode.insertBefore(p, s);
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
(function (i, s, o, g, r, a, m) {
|
||||
i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () {
|
||||
(i[r].q = i[r].q || []).push(arguments)
|
||||
}, i[r].l = 1 * new Date(); a = s.createElement(o),
|
||||
m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m)
|
||||
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
|
||||
|
||||
ga('create', 'UA-120590-4', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body class="@bodyCss">
|
||||
@Umbraco.RenderMacro("MembersQuickMenu")
|
||||
|
||||
<div class="wrapper">
|
||||
<header>
|
||||
<div class="navigation">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<a class="logo" href="/">Our Umbraco</a>
|
||||
</div>
|
||||
<div id="toggle" class="menu-toggle">
|
||||
<a href="#" class="toggle cross"><span></span></a>
|
||||
</div>
|
||||
<nav class="col-md-9">
|
||||
@Umbraco.RenderMacro("NavigationTopNavigation")
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
@{
|
||||
if (memberIsBlocked == false)
|
||||
{
|
||||
@Umbraco.RenderMacro("GlobalAlertBar")
|
||||
@RenderSection("Search", false)
|
||||
@RenderBody()
|
||||
}
|
||||
else
|
||||
{
|
||||
<section class="forum">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<h1 class="text-center">Computer says no</h1>
|
||||
<p>Unfortunaly, it seems that your account has been blocked.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
}
|
||||
}
|
||||
|
||||
<footer>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
Our.umbraco.org is the community mothership for Umbraco, the open source asp.net cms. With a friendly forum for all your questions, a comprehensive documentation and a ton of packages from the community.
|
||||
@if (HttpContext.Current != null && HttpContext.Current.Request.UserAgent != null && HttpContext.Current.Request.UserAgent.ToLower().Contains("googlebot"))
|
||||
{
|
||||
<text>This site is running Umbraco.</text>
|
||||
}
|
||||
else
|
||||
{
|
||||
<text>This site is running</text> <data id="umbraco-version" value="@UmbracoVersion.GetSemanticVersion()">Umbraco version @UmbracoVersion.GetSemanticVersion()</data>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</div>
|
||||
<!--.wrapper-->
|
||||
|
||||
@Html.RenderJsHere()
|
||||
|
||||
<script type="text/javascript">
|
||||
classOnScroll('header', 'sticky', 10);
|
||||
</script>
|
||||
|
||||
@RenderSection("EndScripts", false)
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,92 @@
|
||||
@inherits UmbracoViewPage<dynamic>
|
||||
@using Umbraco.Web.Templates
|
||||
@using Newtonsoft.Json.Linq
|
||||
|
||||
@*
|
||||
Razor helpers located at the bottom of this file
|
||||
*@
|
||||
|
||||
@if (Model != null && Model.sections != null)
|
||||
{
|
||||
var oneColumn = ((System.Collections.ICollection)Model.sections).Count == 1;
|
||||
|
||||
<div class="umb-grid">
|
||||
@if (oneColumn)
|
||||
{
|
||||
foreach (var section in Model.sections) {
|
||||
<div class="grid-section">
|
||||
@foreach (var row in section.rows) {
|
||||
@renderRow(row, true);
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}else {
|
||||
<div class="container-fluid">
|
||||
<div class="row-fluid clearfix">
|
||||
@foreach (var s in Model.sections) {
|
||||
<div class="grid-section">
|
||||
<div class="@("span" + s.grid) column">
|
||||
@foreach (var row in s.rows) {
|
||||
@renderRow(row, false);
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
|
||||
@helper renderRow(dynamic row, bool singleColumn){
|
||||
<div @RenderElementAttributes(row)>
|
||||
@Umbraco.If(singleColumn, "<div class='container-fluid'>")
|
||||
<div class="row-fluid clearfix">
|
||||
@foreach ( var area in row.areas ) {
|
||||
<div class="@("span" + area.grid) column">
|
||||
<div @RenderElementAttributes(area)>
|
||||
@foreach (var control in area.controls) {
|
||||
if (control !=null && control.editor != null && control.editor.view != null ) {
|
||||
<text>@Html.Partial("grid/editors/base", (object)control)</text>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
</div>}
|
||||
</div>
|
||||
@Umbraco.If(singleColumn, "</div>")
|
||||
</div>
|
||||
}
|
||||
|
||||
@functions {
|
||||
public static MvcHtmlString RenderElementAttributes(dynamic contentItem)
|
||||
{
|
||||
var attrs = new List<string>();
|
||||
JObject cfg = contentItem.config;
|
||||
|
||||
if(cfg != null)
|
||||
foreach (JProperty property in cfg.Properties())
|
||||
{
|
||||
var propertyValue = HttpUtility.HtmlAttributeEncode(property.Value.ToString());
|
||||
attrs.Add(property.Name + "=\"" + propertyValue + "\"");
|
||||
}
|
||||
|
||||
JObject style = contentItem.styles;
|
||||
|
||||
if (style != null) {
|
||||
var cssVals = new List<string>();
|
||||
foreach (JProperty property in style.Properties())
|
||||
{
|
||||
var propertyValue = property.Value.ToString();
|
||||
if (string.IsNullOrWhiteSpace(propertyValue) == false)
|
||||
{
|
||||
cssVals.Add(property.Name + ":" + propertyValue + ";");
|
||||
}
|
||||
}
|
||||
|
||||
if (cssVals.Any())
|
||||
attrs.Add("style='" + HttpUtility.HtmlAttributeEncode(string.Join(" ", cssVals)) + "'");
|
||||
}
|
||||
|
||||
return new MvcHtmlString(string.Join(" ", attrs));
|
||||
}
|
||||
}
|
||||
@@ -64,21 +64,29 @@
|
||||
JObject cfg = contentItem.config;
|
||||
|
||||
if(cfg != null)
|
||||
foreach (JProperty property in cfg.Properties()) {
|
||||
attrs.Add(property.Name + "=\"" + property.Value.ToString() + "\"");
|
||||
foreach (JProperty property in cfg.Properties())
|
||||
{
|
||||
var propertyValue = HttpUtility.HtmlAttributeEncode(property.Value.ToString());
|
||||
attrs.Add(property.Name + "=\"" + propertyValue + "\"");
|
||||
}
|
||||
|
||||
|
||||
JObject style = contentItem.styles;
|
||||
|
||||
if (style != null) {
|
||||
var cssVals = new List<string>();
|
||||
foreach (JProperty property in style.Properties())
|
||||
cssVals.Add(property.Name + ":" + property.Value.ToString() + ";");
|
||||
if (style != null) {
|
||||
var cssVals = new List<string>();
|
||||
foreach (JProperty property in style.Properties())
|
||||
{
|
||||
var propertyValue = property.Value.ToString();
|
||||
if (string.IsNullOrWhiteSpace(propertyValue) == false)
|
||||
{
|
||||
cssVals.Add(property.Name + ":" + propertyValue + ";");
|
||||
}
|
||||
}
|
||||
|
||||
if (cssVals.Any())
|
||||
attrs.Add("style=\"" + string.Join(" ", cssVals) + "\"");
|
||||
if (cssVals.Any())
|
||||
attrs.Add("style=\"" + HttpUtility.HtmlAttributeEncode(string.Join(" ", cssVals)) + "\"");
|
||||
}
|
||||
|
||||
|
||||
return new MvcHtmlString(string.Join(" ", attrs));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
@inherits UmbracoViewPage<dynamic>
|
||||
@using Umbraco.Web.Templates
|
||||
@using Newtonsoft.Json.Linq
|
||||
|
||||
@*
|
||||
Razor helpers located at the bottom of this file
|
||||
*@
|
||||
|
||||
@if (Model != null && Model.sections != null)
|
||||
{
|
||||
var oneColumn = ((System.Collections.ICollection)Model.sections).Count == 1;
|
||||
|
||||
<div class="umb-grid">
|
||||
@if (oneColumn)
|
||||
{
|
||||
foreach (var section in Model.sections) {
|
||||
<div class="grid-section">
|
||||
@foreach (var row in section.rows) {
|
||||
@renderRow(row);
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}else {
|
||||
<div class="row clearfix">
|
||||
@foreach (var s in Model.sections) {
|
||||
<div class="grid-section">
|
||||
<div class="col-md-@s.grid column">
|
||||
@foreach (var row in s.rows) {
|
||||
@renderRow(row);
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
|
||||
@helper renderRow(dynamic row){
|
||||
<div @RenderElementAttributes(row)>
|
||||
<div class="row clearfix">
|
||||
@foreach ( var area in row.areas ) {
|
||||
<div class="col-md-@area.grid column">
|
||||
<div @RenderElementAttributes(area)>
|
||||
@foreach (var control in area.controls) {
|
||||
if (control !=null && control.editor != null && control.editor.view != null ) {
|
||||
<text>@Html.Partial("grid/editors/base", (object)control)</text>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
</div>}
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
@functions {
|
||||
public static MvcHtmlString RenderElementAttributes(dynamic contentItem)
|
||||
{
|
||||
var attrs = new List<string>();
|
||||
JObject cfg = contentItem.config;
|
||||
|
||||
if(cfg != null)
|
||||
foreach (JProperty property in cfg.Properties())
|
||||
{
|
||||
var propertyValue = HttpUtility.HtmlAttributeEncode(property.Value.ToString());
|
||||
attrs.Add(property.Name + "=\"" + propertyValue + "\"");
|
||||
}
|
||||
|
||||
JObject style = contentItem.styles;
|
||||
|
||||
if (style != null) {
|
||||
var cssVals = new List<string>();
|
||||
foreach (JProperty property in style.Properties())
|
||||
{
|
||||
var propertyValue = property.Value.ToString();
|
||||
if (string.IsNullOrWhiteSpace(propertyValue) == false)
|
||||
{
|
||||
cssVals.Add(property.Name + ":" + propertyValue + ";");
|
||||
}
|
||||
}
|
||||
|
||||
if (cssVals.Any())
|
||||
attrs.Add("style='" + HttpUtility.HtmlAttributeEncode(string.Join(" ", cssVals)) + "'");
|
||||
}
|
||||
|
||||
return new MvcHtmlString(string.Join(" ", attrs));
|
||||
}
|
||||
}
|
||||
@@ -64,21 +64,29 @@
|
||||
JObject cfg = contentItem.config;
|
||||
|
||||
if(cfg != null)
|
||||
foreach (JProperty property in cfg.Properties()) {
|
||||
attrs.Add(property.Name + "=\"" + property.Value.ToString() + "\"");
|
||||
foreach (JProperty property in cfg.Properties())
|
||||
{
|
||||
var propertyValue = HttpUtility.HtmlAttributeEncode(property.Value.ToString());
|
||||
attrs.Add(property.Name + "=\"" + propertyValue + "\"");
|
||||
}
|
||||
|
||||
|
||||
JObject style = contentItem.styles;
|
||||
|
||||
if (style != null) {
|
||||
var cssVals = new List<string>();
|
||||
foreach (JProperty property in style.Properties())
|
||||
cssVals.Add(property.Name + ":" + property.Value.ToString() + ";");
|
||||
if (style != null) {
|
||||
var cssVals = new List<string>();
|
||||
foreach (JProperty property in style.Properties())
|
||||
{
|
||||
var propertyValue = property.Value.ToString();
|
||||
if (string.IsNullOrWhiteSpace(propertyValue) == false)
|
||||
{
|
||||
cssVals.Add(property.Name + ":" + propertyValue + ";");
|
||||
}
|
||||
}
|
||||
|
||||
if (cssVals.Any())
|
||||
attrs.Add("style=\"" + string.Join(" ", cssVals) + "\"");
|
||||
if (cssVals.Any())
|
||||
attrs.Add("style=\"" + HttpUtility.HtmlAttributeEncode(string.Join(" ", cssVals)) + "\"");
|
||||
}
|
||||
|
||||
|
||||
return new MvcHtmlString(string.Join(" ", attrs));
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,4 @@
|
||||
@model dynamic
|
||||
@using Umbraco.Web.Templates
|
||||
|
||||
@functions {
|
||||
public static string EditorView(dynamic contentItem)
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
@model dynamic
|
||||
@using Umbraco.Web.Templates
|
||||
@Html.Raw(Model.value)
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
@inherits UmbracoViewPage<dynamic>
|
||||
@using Umbraco.Web.Templates
|
||||
|
||||
|
||||
@if (Model.value != null)
|
||||
{
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
@model dynamic
|
||||
@using Umbraco.Web.Templates
|
||||
|
||||
@if (Model.value != null)
|
||||
{
|
||||
|
||||
@@ -4,10 +4,9 @@
|
||||
@if (Model.editor.config.markup != null)
|
||||
{
|
||||
string markup = Model.editor.config.markup.ToString();
|
||||
|
||||
var UmbracoHelper = new UmbracoHelper(UmbracoContext.Current);
|
||||
var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
|
||||
|
||||
markup = markup.Replace("#value#", UmbracoHelper.ReplaceLineBreaksForHtml(Model.value.ToString()));
|
||||
markup = markup.Replace("#value#", umbracoHelper.ReplaceLineBreaksForHtml(HttpUtility.HtmlEncode(Model.value.ToString())));
|
||||
markup = markup.Replace("#style#", Model.editor.config.style.ToString());
|
||||
|
||||
<text>
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
@inherits Umbraco.Web.Macros.PartialViewMacroPage
|
||||
|
||||
<section class="forum">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-12">
|
||||
<h1 class="text-center">Forum Activity</h1>
|
||||
<p>
|
||||
Recent activity in the forums, where people are helping each other with current problems.
|
||||
</p>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<small>Recent posts</small>
|
||||
</div>
|
||||
|
||||
@Umbraco.RenderMacro("ForumLatestActivity")
|
||||
|
||||
|
||||
<div class="col-md-12 goto-forum">
|
||||
<a class="button green" href="/forum">Go to Forum →</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@@ -0,0 +1,40 @@
|
||||
@using OurUmbraco.Forum.Extensions
|
||||
@using OurUmbraco.Forum.Models
|
||||
@model ReadOnlyTopic[]
|
||||
|
||||
@foreach (var topic in Model)
|
||||
{
|
||||
<a href="@topic.GetUrl()" class="forum-thread @(topic.Answer > 0 ? "solved": null)">
|
||||
|
||||
<div class="avatar">
|
||||
@Html.Raw(topic.LastReplyAuthorAvatar)
|
||||
</div>
|
||||
|
||||
<div class="meta">
|
||||
<div class="forum-thread-text">
|
||||
<h3>@topic.Title</h3>
|
||||
<p>
|
||||
@if (topic.Replies != 0 && !string.IsNullOrEmpty(topic.LastReplyAuthorName))
|
||||
{
|
||||
<text>last updated by @topic.LastReplyAuthorName</text>
|
||||
}
|
||||
else
|
||||
{
|
||||
<text>created by @topic.AuthorName</text>
|
||||
}
|
||||
|
||||
@topic.Updated.ConvertToRelativeTime()
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="category">
|
||||
<span class="cat">@topic.CategoryName</span>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
}
|
||||
|
||||
@if (Model.Any() == false)
|
||||
{
|
||||
<h2>Could not load recent forum activity.</h2>
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
@using OurUmbraco.Forum.Extensions
|
||||
@using Tweetinvi.Models
|
||||
@model ITweet[]
|
||||
|
||||
@foreach (var tweet in Model)
|
||||
{
|
||||
<a href="@tweet.Url" class="forum-thread">
|
||||
|
||||
<div class="avatar">
|
||||
<img src="@tweet.CreatedBy.ProfileImageUrl400x400.Replace("http://", "https://")" />
|
||||
</div>
|
||||
|
||||
<div class="meta">
|
||||
<div class="forum-thread-text">
|
||||
<h3>@tweet.Text</h3>
|
||||
<p>@tweet.CreatedAt.ConvertToRelativeTime() by @@@tweet.CreatedBy.UserIdentifier.ScreenName (@tweet.CreatedBy.Name)</p>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
}
|
||||
|
||||
@if (Model.Any() == false)
|
||||
{
|
||||
<h2>Could not load recent tweets.</h2>
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
@using OurUmbraco.Our.Controllers
|
||||
@using reCAPTCHA.MVC
|
||||
@inherits UmbracoViewPage<Umbraco.Web.Models.LoginModel>
|
||||
@{
|
||||
Html.EnableClientValidation(true);
|
||||
Html.EnableUnobtrusiveJavaScript(true);
|
||||
}
|
||||
|
||||
@if (Request.QueryString["success"] == null)
|
||||
{
|
||||
<div class="form simpleForm" id="registrationForm">
|
||||
@using (Html.BeginUmbracoForm<LoginController>("ForgotPassword"))
|
||||
{
|
||||
@Html.ValidationSummary(true)
|
||||
@Html.AntiForgeryToken()
|
||||
|
||||
<fieldset>
|
||||
<p>
|
||||
@Html.LabelFor(m => m.Username, new { @cless = "inputLabel" })<br />
|
||||
@Html.ValidationMessageFor(m => m.Username)
|
||||
|
||||
@Html.TextBoxFor(m => m.Username, new { @class = "email title" })
|
||||
</p>
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<p>
|
||||
@Html.Recaptcha()
|
||||
@Html.ValidationMessage("ReCaptcha")
|
||||
</p>
|
||||
</fieldset>
|
||||
<input class="button green" type="submit" value="Retrieve password">
|
||||
}
|
||||
</div>
|
||||
}
|
||||
else
|
||||
{
|
||||
<p>If an account with that email exists you have just been sent instructions to reset your password.</p>
|
||||
}
|
||||
|
||||
<style type="text/css">
|
||||
.field-validation-error, .validation-summary-errors {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.input-validation-error {
|
||||
border-color: red !important;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,50 @@
|
||||
@using OurUmbraco.Our.Controllers
|
||||
@using reCAPTCHA.MVC
|
||||
@inherits UmbracoViewPage<Umbraco.Web.Models.LoginModel>
|
||||
@{
|
||||
Html.EnableClientValidation(true);
|
||||
Html.EnableUnobtrusiveJavaScript(true);
|
||||
}
|
||||
|
||||
<div class="form simpleForm" id="registrationForm">
|
||||
@using (Html.BeginUmbracoForm<LoginController>("Login"))
|
||||
{
|
||||
@Html.ValidationSummary(true)
|
||||
@Html.AntiForgeryToken()
|
||||
|
||||
<fieldset>
|
||||
<p>
|
||||
@Html.LabelFor(m => m.Username, new { @class = "inputLabel" })<br />
|
||||
@Html.ValidationMessageFor(m => m.Username)
|
||||
|
||||
@Html.TextBoxFor(m => m.Username, new { @class = "email title" })
|
||||
</p>
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<p>
|
||||
@Html.LabelFor(m => m.Password, new { @class = "inputLabel" })<br />
|
||||
@Html.ValidationMessageFor(m => m.Password)
|
||||
@Html.PasswordFor(m => m.Password, new { @class = "password title" })
|
||||
</p>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<p>
|
||||
@Html.Recaptcha()
|
||||
@Html.ValidationMessage("ReCaptcha")
|
||||
</p>
|
||||
</fieldset>
|
||||
|
||||
<input class="button green" type="submit" value="Log in">
|
||||
}
|
||||
</div>
|
||||
|
||||
<style type="text/css">
|
||||
.field-validation-error, .validation-summary-errors {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.input-validation-error {
|
||||
border-color: red !important;
|
||||
}
|
||||
</style>
|
||||
@@ -1,4 +1,5 @@
|
||||
@using OurUmbraco.Our.Controllers
|
||||
@using reCAPTCHA.MVC
|
||||
@inherits UmbracoViewPage<OurUmbraco.Our.Models.RegisterModel>
|
||||
@{
|
||||
Html.EnableClientValidation(true);
|
||||
@@ -60,6 +61,11 @@
|
||||
@Html.CheckBoxFor(m => m.AgreeTerms) <label for="AgreeTerms"><em>I agree to the <a href="/terms-and-conditions" target="_blank">terms and conditions</a> of using the Our Umbraco website.</em></label>
|
||||
@Html.ValidationMessageFor(m => m.AgreeTerms)
|
||||
</div>
|
||||
|
||||
<div class="profile-input" id="recaptcha">
|
||||
@Html.Recaptcha()
|
||||
@Html.ValidationMessage("ReCaptcha")
|
||||
</div>
|
||||
|
||||
<input class="button green" type="submit" value="Sign up">
|
||||
}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
@using OurUmbraco.Our.Controllers
|
||||
@model OurUmbraco.Our.Models.ProjectCompleteModel
|
||||
<div class="package-create">
|
||||
@Html.Partial("~/Views/Partials/Project/PackageEditNavigation.cshtml", "complete")
|
||||
|
||||
@using(Html.BeginUmbracoForm<ProjectController>("UpdateProjectLive"))
|
||||
{
|
||||
<fieldset>
|
||||
<legend>Make "@Model.Name" public</legend>
|
||||
<p>By checking the following box your project will become public as long as you have met all of the terms & conditions of listing.</p>
|
||||
<p>
|
||||
@Html.CheckBoxFor(m => m.ProjectLive) @Html.LabelFor(m => m.ProjectLive)
|
||||
</p>
|
||||
</fieldset>
|
||||
|
||||
<div class="buttons">
|
||||
<input type="submit" value="Save" class="submitButton button tiny green">
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
@@ -31,17 +31,7 @@
|
||||
</style>
|
||||
<div class="package-create">
|
||||
|
||||
<ul class="stepNavigation">
|
||||
<li class="current"><a href="/member/profile/projects/details/?projectId=@Model.Id">Package Details</a></li>
|
||||
@if (Model.Id > 0)
|
||||
{
|
||||
<li class=""><a href="/member/profile/projects/edit?editorStep=files&id=@Model.Id">Package Files</a></li>
|
||||
|
||||
<li class=""><a href="/member/profile/projects/edit?editorStep=screenshots&id=@Model.Id">Screenshots</a></li>
|
||||
|
||||
<li class=""><a href="/member/profile/projects/edit?editorStep=complete&id=@Model.Id">Creation Complete</a></li>
|
||||
}
|
||||
</ul>
|
||||
@Html.Partial("~/Views/Partials/Project/PackageEditNavigation.cshtml", "details")
|
||||
|
||||
<div class="form simpleForm" id="registrationForm">
|
||||
@using (Html.BeginUmbracoForm<ProjectController>("SaveDetails"))
|
||||
|
||||
@@ -0,0 +1,143 @@
|
||||
@using OurUmbraco.Our.Controllers
|
||||
@model OurUmbraco.Our.Models.EditFileModel
|
||||
<div class="package-create">
|
||||
|
||||
@Html.Partial("~/Views/Partials/Project/PackageEditNavigation.cshtml", "files")
|
||||
|
||||
<div class="form simpleForm" id="registrationForm">
|
||||
<fieldset>
|
||||
<legend>Current project files</legend>
|
||||
<p>
|
||||
<table class="dataTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>File</th>
|
||||
<th>Type</th>
|
||||
<th>Compatible Version</th>
|
||||
<th>.NET Version</th>
|
||||
<th>Uploaded</th>
|
||||
<th class="center">Default Release</th>
|
||||
<th class="center">Archive</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach (var wikiFile in Model.AvailableFiles)
|
||||
{
|
||||
var versionsList = new List<string>();
|
||||
foreach (var version in wikiFile.Versions)
|
||||
{
|
||||
versionsList.Add(version.Version);
|
||||
}
|
||||
var versions = string.Join(",", versionsList);
|
||||
|
||||
<tr>
|
||||
<td>@wikiFile.Name</td>
|
||||
<td>@wikiFile.FileType</td>
|
||||
<td>@versions</td>
|
||||
<td>@wikiFile.DotNetVersion</td>
|
||||
<td>@wikiFile.CreateDate</td>
|
||||
<td class="center">
|
||||
@if (wikiFile.Current == false)
|
||||
{
|
||||
using (Html.BeginUmbracoForm<ProjectController>("MarkFileAsCurrent"))
|
||||
{
|
||||
<input type="hidden" name="id" value="@Request.QueryString["id"]" />
|
||||
<input type="hidden" name="releaseFileId" value="@wikiFile.Id" />
|
||||
<input type="submit" value="Make current" class="actionButton" />
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
<text>Current</text>
|
||||
}
|
||||
</td>
|
||||
<td class="center">
|
||||
@using (Html.BeginUmbracoForm<ProjectController>("ArchiveFile"))
|
||||
{
|
||||
var buttonText = wikiFile.Archived ? "Unarchive" : "Archive";
|
||||
|
||||
<input type="hidden" name="id" value="@Request.QueryString["id"]" />
|
||||
<input type="hidden" name="releaseFileId" value="@wikiFile.Id" />
|
||||
<input type="submit" value="@buttonText" class="actionButton" />
|
||||
}
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
</table>
|
||||
</p>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>Upload file</legend>
|
||||
<div id="">
|
||||
@using (Html.BeginUmbracoForm<ProjectController>("AddFile"))
|
||||
{
|
||||
<span style="color: red;">
|
||||
@Html.ValidationSummary()
|
||||
</span>
|
||||
|
||||
<div id="">
|
||||
<p>
|
||||
<label class="inputLabel">Pick file (10 MB max):</label>
|
||||
</p>
|
||||
<div>
|
||||
<div>
|
||||
<input type="file" class="title" name="UploadFile.File">
|
||||
</div>
|
||||
</div>
|
||||
<p></p>
|
||||
<p>
|
||||
<label class="inputLabel">Choose filetype</label>
|
||||
|
||||
@Html.DropDownListFor(model => model.UploadFile.FileType, new List<SelectListItem>
|
||||
{
|
||||
new SelectListItem { Text = "Package", Value = "package" },
|
||||
new SelectListItem { Text = "Hot Fix", Value = "hotfix"},
|
||||
new SelectListItem { Text = "Documentation", Value = "docs"},
|
||||
new SelectListItem { Text = "Source Code", Value = "source"}
|
||||
})
|
||||
</p>
|
||||
<div class="pickversionWrapper">
|
||||
<p id="pickVersion">
|
||||
<label class="inputLabel">Choose umbraco version</label>
|
||||
</p>
|
||||
<div class="pickVersion" style="float: left; margin-bottom: 10px;">
|
||||
@foreach (var item in Model.UploadFile.AvailableVersions)
|
||||
{
|
||||
var versionsSelected = Model.UploadFile.SelectedVersions;
|
||||
<input type="checkbox" name="UploadFile.SelectedVersions" value="@item.Value" id="@item.Value" @if (versionsSelected != null && versionsSelected.Contains(item.Value)) { <text> checked="checked" </text> } /> <label for="@item.Value" style="display: inline; padding: 0;">@item.Text</label><br />
|
||||
}
|
||||
|
||||
</div>
|
||||
<p style="clear: both; margin-bottom: 10px;">If your package manifest references a specific version of Umbraco, then that will be used instead.</p>
|
||||
</div>
|
||||
<p id="pickNetVersion">
|
||||
<label class="inputLabel">Choose supported .NET runtime</label>
|
||||
|
||||
<select name="UploadFile.DotNetVersion" class="title">
|
||||
<option value=""></option>
|
||||
<option value="2.0">2.0</option>
|
||||
<option value="3.5">3.5</option>
|
||||
<option value="4.0">4.0</option>
|
||||
<option value="4.5">4.5</option>
|
||||
<option value="4.5.1">4.5.1</option>
|
||||
<option value="4.5.2">4.5.2</option>
|
||||
<option value="4.6.0">4.6.0</option>
|
||||
<option value="4.6.1">4.6.1</option>
|
||||
</select><br>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<input type="hidden" name="UploadFile.ProjectId" value="@Request.QueryString["id"]" />
|
||||
<input type="submit" value="Save file" class="submitButton button blue tiny">
|
||||
</p>
|
||||
|
||||
</div>
|
||||
}
|
||||
<div class="buttons">
|
||||
<a href="/member/profile/projects/edit/?editorStep=screenshots&id=@Request.QueryString["id"]" class="submitButton button green tiny" style="color: white;">Next</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,87 @@
|
||||
@using OurUmbraco.Our.Controllers
|
||||
@model OurUmbraco.Our.Models.EditScreenshotModel
|
||||
<div class="package-create">
|
||||
|
||||
@Html.Partial("~/Views/Partials/Project/PackageEditNavigation.cshtml", "screenshots")
|
||||
|
||||
<div class="form simpleForm" id="registrationForm">
|
||||
<fieldset>
|
||||
<legend>Current project files</legend>
|
||||
<p>
|
||||
<table class="dataTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Image</th>
|
||||
<th>Uploaded</th>
|
||||
<th class="center">Default</th>
|
||||
<th class="center">Delete</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach (var wikiFile in Model.AvailableFiles)
|
||||
{
|
||||
<tr>
|
||||
<td><img src="@wikiFile.Path?height=100" /></td>
|
||||
<td>@wikiFile.CreateDate</td>
|
||||
<td class="center">
|
||||
@if (wikiFile.Current == false)
|
||||
{
|
||||
using (Html.BeginUmbracoForm<ProjectController>("MarkFileAsCurrent"))
|
||||
{
|
||||
<input type="hidden" name="id" value="@Request.QueryString["id"]" />
|
||||
<input type="hidden" name="releaseFileId" value="@wikiFile.Id" />
|
||||
<input type="submit" value="Make current" class="actionButton" />
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
<text>Current</text>
|
||||
}
|
||||
</td>
|
||||
<td class="center">
|
||||
@using (Html.BeginUmbracoForm<ProjectController>("DeleteScreenshot"))
|
||||
{
|
||||
<input type="hidden" name="id" value="@Request.QueryString["id"]" />
|
||||
<input type="hidden" name="releaseFileId" value="@wikiFile.Id" />
|
||||
<input type="submit" value="Delete" class="actionButton" />
|
||||
}
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
</table>
|
||||
</p>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>Upload file</legend>
|
||||
<div id="">
|
||||
@using (Html.BeginUmbracoForm<ProjectController>("AddScreenshot"))
|
||||
{
|
||||
<span style="color: red;">
|
||||
@Html.ValidationSummary()
|
||||
</span>
|
||||
|
||||
<div id="">
|
||||
<p>
|
||||
<label class="inputLabel">Pick file (10 MB max):</label>
|
||||
</p>
|
||||
<div>
|
||||
<div>
|
||||
<input type="file" class="title" name="UploadFile.File">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<input type="hidden" name="UploadFile.ProjectId" value="@Request.QueryString["id"]" />
|
||||
<input type="submit" value="Save file" class="submitButton button blue tiny">
|
||||
</p>
|
||||
|
||||
</div>
|
||||
}
|
||||
<div class="buttons">
|
||||
<a href="/member/profile/projects/edit/?editorStep=complete&id=@Request.QueryString["id"]" class="submitButton button green tiny" style="color: white;">Next</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,14 @@
|
||||
@model string
|
||||
@{
|
||||
var projectId = Request["projectId"];
|
||||
if (string.IsNullOrWhiteSpace(projectId))
|
||||
{
|
||||
projectId = Request["id"];
|
||||
}
|
||||
}
|
||||
<ul class="stepNavigation">
|
||||
<li class="@(Model == "details" ? "current" : null)" style="text-decoration: underline;"><a href="/member/profile/projects/details?projectId=@projectId">Package Details</a></li>
|
||||
<li class="@(Model == "files" ? "current" : null)" style="text-decoration: underline;"><a href="/member/profile/projects/edit?editorStep=files&id=@projectId">Package Files</a></li>
|
||||
<li class="@(Model == "screenshots" ? "current" : null)" style="text-decoration: underline;"><a href="/member/profile/projects/edit?editorStep=screenshots&id=@projectId">Screenshots</a></li>
|
||||
<li class="@(Model == "complete" ? "current" : null)" style="text-decoration: underline;"><a href="/member/profile/projects/edit?editorStep=complete&id=@projectId">Creation Complete</a></li>
|
||||
</ul>
|
||||
@@ -66,11 +66,11 @@
|
||||
<div class="versions">
|
||||
@if (Model.WorksOnUaaS)
|
||||
{
|
||||
<span class="smiley joyous">Works on Umbraco as a Service</span>
|
||||
<span class="smiley joyous">Works on Umbraco Cloud</span>
|
||||
}
|
||||
else
|
||||
{
|
||||
<span class="smiley untested">Untested or doesn't work on Umbraco as a Service</span>
|
||||
<span class="smiley untested">Untested or doesn't work on Umbraco Cloud</span>
|
||||
}
|
||||
@foreach (var ver in Model.VersionCompatibilities)
|
||||
{
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
@using OurUmbraco.MarketPlace.Interfaces
|
||||
@using OurUmbraco.Project
|
||||
@model OurUmbraco.Our.Models.MyProjectsModel
|
||||
|
||||
<div class="profile-settings">
|
||||
<strong>My Packages</strong>
|
||||
<div class="profile-settings-packages packages-content">
|
||||
<a href="/member/profile/projects/details?projectId=" class="button green"><i class="icon-Add"></i>Add package</a>
|
||||
|
||||
@foreach (var project in Model.Projects)
|
||||
{
|
||||
@RenderProject(project)
|
||||
}
|
||||
|
||||
<strong>Package Contributions</strong>
|
||||
@foreach (var project in Model.ContribProjects)
|
||||
{
|
||||
@RenderProject(project)
|
||||
}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@helper RenderProject(IListingItem project)
|
||||
{
|
||||
<div class="box liked">
|
||||
<div class="row">
|
||||
<div class="col-xs-2 col-md-1">
|
||||
<img src="@(string.IsNullOrEmpty(project.DefaultScreenshot) ? "/css/img/package2.png" : project.DefaultScreenshot)?width=65&height=65" alt="">
|
||||
</div>
|
||||
<div class="col-xs-10 col-md-6">
|
||||
<div class="forum-thread-text">
|
||||
<h3><a href="@project.NiceUrl">@project.Name</a></h3>
|
||||
<p>
|
||||
@project.Description.StripHtmlAndLimit(45) ...
|
||||
<br />
|
||||
<a href="details?projectId=@project.Id">Edit</a>
|
||||
<a href="manage-project-forums/?id=@project.Id">Forums</a>
|
||||
<a href="manage-team/?id=@project.Id">Team</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-md-5">
|
||||
<div class="other">
|
||||
<div class="package-badge">
|
||||
<span class="package-name">version</span>
|
||||
<span class="package-number">@project.CurrentVersion</span>
|
||||
</div>
|
||||
<span class="stats">
|
||||
<span class="downloads">
|
||||
@project.Downloads<span><i class="icon-Download-alt"></i></span>
|
||||
</span>
|
||||
<span class="karma">
|
||||
@project.Karma<span><i class="icon-Hearts"></i></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
@using OurUmbraco.Our
|
||||
@model OurUmbraco.Our.Models.SearchResultContentModel
|
||||
|
||||
<div class="plain">
|
||||
<!-- search OVERVIEW START -->
|
||||
<section class="search-results">
|
||||
<div>
|
||||
<!-- FORUM HEADER START -->
|
||||
<div class="utilities">
|
||||
<ul id="breadcrumb">
|
||||
<li><a href="/" rel="nofollow">Our Umbraco</a></li>
|
||||
<li><a href="#" rel="nofollow">Search</a></li>
|
||||
<li><a href="#" rel="nofollow">@Model.Results.SearchTerm</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@if (Context.IsDebuggingEnabled)
|
||||
{
|
||||
<div style="border: 1px solid orange;">
|
||||
<p>
|
||||
<strong>Debugging output</strong><br />
|
||||
<strong>Query:</strong> @Model.Results.LuceneQuery<br />
|
||||
<strong>Order by:</strong> @Model.Results.OrderBy<br />
|
||||
<strong>Time elapsed:</strong> @Model.Results.Totalmilliseconds
|
||||
</p>
|
||||
|
||||
</div>
|
||||
}
|
||||
|
||||
<div class="search-big">
|
||||
<asp:TextBox runat="server" ID="SearchText"></asp:TextBox>
|
||||
<label for="SearchText">Search</label>
|
||||
</div>
|
||||
|
||||
@if(Request.QueryString["cat"] == "forum") {
|
||||
<div id="search-options" class="search-options">
|
||||
<label>Sort by</label>
|
||||
<div class="options">
|
||||
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" name="solved" />
|
||||
<span></span>
|
||||
<small>show only solved topics</small>
|
||||
</label>
|
||||
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" name="replies" />
|
||||
<span></span>
|
||||
<small>show only topics with replies</small>
|
||||
</label>
|
||||
|
||||
<label class="checkbox">
|
||||
<input type="checkbox" name="order" value="updateDate" />
|
||||
<span></span>
|
||||
<small>show last updated first</small>
|
||||
</label>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
@if(Model.Results.SearchResults.Any() == false) {
|
||||
<p class="message">No results</p>
|
||||
}
|
||||
|
||||
<section>
|
||||
@if(string.IsNullOrWhiteSpace(Model.Results.Category) == false) {
|
||||
<h2 class="search-in">Results from category: @Model.Results.Category</h2>
|
||||
}
|
||||
|
||||
<ul class="search-all-results docs-search-listing">
|
||||
@foreach(var result in Model.Results.SearchResults) {
|
||||
<li class="@result.SolvedClass()">
|
||||
<a href="@result.FullUrl()">
|
||||
<div class="type-icon">
|
||||
<i class="<%=result.GetIcon() %>"></i>
|
||||
</div>
|
||||
|
||||
<div class="type-context">
|
||||
<div class="type-name">@result.GetTitle()</div>
|
||||
<span class="type-datetime">@result.GetDate()</span>
|
||||
<div class="type-description">@result.GenerateBlurb(300)</div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
</ul>
|
||||
|
||||
|
||||
</section>
|
||||
</div>
|
||||
</section>
|
||||
<!-- search OVERVIEW END -->
|
||||
</div>
|
||||
@@ -0,0 +1,31 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="page-content">
|
||||
|
||||
<div id="overlay" class="overlay"></div>
|
||||
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
@Umbraco.RenderMacro("MemberProfileNavigation", new { source = "1057" })
|
||||
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div><!-- .sidebar-area -->
|
||||
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
|
||||
@Html.Raw(Model.Content.GetPropertyValue<string>("bodyText"))
|
||||
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
|
||||
</div><!-- .page-content -->
|
||||
@@ -0,0 +1,27 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<section class="plain">
|
||||
<div>
|
||||
<!-- FORUM HEADER START -->
|
||||
<div class="utilities">
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "0" })
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
@Umbraco.RenderMacro("ProjectsProjectDetail")
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@section EndScripts {
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
$(".fancybox")
|
||||
.fancybox({
|
||||
openEffect: 'none',
|
||||
closeEffect: 'none',
|
||||
padding: 0
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
@Umbraco.RenderMacro("MemberProfileNavigation", new { source = "1057" })
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div><!-- .sidebar-area -->
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
@Html.Raw(Model.Content.GetPropertyValue<string>("bodyText"))
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
</div><!-- .page-content -->
|
||||
@@ -0,0 +1,76 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
<li class="filter-orderBy">
|
||||
<h3>Projects</h3>
|
||||
<ul class="level-2">
|
||||
<li><h4><a href="?orderBy=updateDate">Updated projects</a></h4></li>
|
||||
<li><h4><a href="?orderBy=popularity">Popular projects</a></h4></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="filter-version">
|
||||
<h3>By Version</h3>
|
||||
<ul class="level-2">
|
||||
<li><h4><a href="?version=7">Version 7</a></h4></li>
|
||||
<li><h4><a href="?version=6">Version 6</a></h4></li>
|
||||
<li><h4><a href="?version=4">Version 4</a></h4></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="filter-category">
|
||||
<h3>By Category</h3>
|
||||
@Umbraco.RenderMacro("ProjectsListCategories")
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div><!-- .sidebar-area -->
|
||||
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
<div>
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
</div>
|
||||
<div class="packages-content">
|
||||
@Umbraco.RenderMacro("ProjectsListProjects")
|
||||
</div>
|
||||
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
|
||||
</div><!-- .page-content -->
|
||||
|
||||
@section EndScripts
|
||||
{
|
||||
<script type="text/javascript">
|
||||
function getUrlVars() {
|
||||
var vars = [], hash;
|
||||
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
|
||||
for (var i = 0; i < hashes.length; i++) {
|
||||
hash = hashes[i].split('=');
|
||||
vars.push(hash[0]);
|
||||
vars[hash[0]] = hash[1];
|
||||
}
|
||||
return vars;
|
||||
}
|
||||
var query = getUrlVars();
|
||||
var filter = '.filter-' + query[0];
|
||||
$(filter).addClass('open');
|
||||
|
||||
$('.level-1>li').on('click', function () {
|
||||
$('.level-1>li').removeClass('open');
|
||||
$(this).addClass('open');
|
||||
});
|
||||
</script>
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="has-sidebar">
|
||||
<div class="page-content">
|
||||
<div id="overlay" class="overlay"></div>
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
<li class="">
|
||||
<h3>Profile</h3>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div><!-- .sidebar-area -->
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
@Umbraco.RenderMacro("MembersPublicProfile")
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
</div><!-- .page-content -->
|
||||
</div>
|
||||
@@ -0,0 +1,363 @@
|
||||
@using OurUmbraco.Release
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
|
||||
var downloads = Model.Content.Children().Where(x => x.ContentType.Alias == "ReleaseDownload").ToArray();
|
||||
if (Request.Params["fromdownload"] != null)
|
||||
{
|
||||
if (downloads.Any())
|
||||
{
|
||||
var downloadIds = new List<int>();
|
||||
foreach (var item in downloads)
|
||||
{
|
||||
downloadIds.Add(item.Id);
|
||||
}
|
||||
Response.Redirect("/ReleaseDownload?id=" + downloadIds.First(), false);
|
||||
}
|
||||
}
|
||||
|
||||
var currentPage = UmbracoContext.Current.PublishedContentRequest.PublishedContent;
|
||||
var allReleases = Release.GetAllReleaseFromFile();
|
||||
var release = allReleases.First(x => x.version == currentPage.Name);
|
||||
var completedIssues = release.issues.Count(x => x.state == "Fixed");
|
||||
var totalIssues = release.issues.Count();
|
||||
var percentComplete = Math.Round(((double)100 / totalIssues) * completedIssues);
|
||||
var releaseDateParsed = DateTime.Now;
|
||||
if (release.releaseDate != string.Empty)
|
||||
{
|
||||
releaseDateParsed = DateTime.Parse(release.releaseDate.Substring(3, 2) + "-" + release.releaseDate.Substring(0, 2) + "-" + release.releaseDate.Substring(6));
|
||||
}
|
||||
|
||||
var releaseDate = release.releaseDate == "" ? "Not yet determined" : releaseDateParsed.ToString("dddd, MMMM d yyyy");
|
||||
|
||||
|
||||
var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
|
||||
var releaseContent = umbracoHelper.TypedContent(umbracoHelper.UmbracoContext.PageId);
|
||||
if (releaseContent != null)
|
||||
{
|
||||
var overrideDescription = releaseContent.GetPropertyValue<bool>("overrideYouTrackDescription");
|
||||
if (overrideDescription)
|
||||
{
|
||||
release.releaseDescription = releaseContent.GetPropertyValue<string>("bodyText");
|
||||
}
|
||||
var overrideReleaseDate = releaseContent.GetPropertyValue<string>("overrideYouTrackReleaseDate");
|
||||
if (string.IsNullOrWhiteSpace(overrideReleaseDate) == false)
|
||||
{
|
||||
releaseDate = overrideReleaseDate;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
<div class="has-sidebar release">
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
@foreach (var currentRelease in allReleases.Where(x => x.released && x.currentRelease))
|
||||
{
|
||||
|
||||
<li>
|
||||
<a class="active" href="/contribute/releases/@(currentRelease.version.Replace(".", string.Empty))"><h3>Latest Release - v@(currentRelease.version)</h3></a>
|
||||
</li>
|
||||
}
|
||||
|
||||
<li>
|
||||
<a href="/contribute/progress"><h3>In Progress</h3></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/contribute/releases"><h3>All Releases</h3></a>
|
||||
<ul class="level-2">
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 7</h4></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 6</h4></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 4</h4></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div>
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
<div>
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
</div>
|
||||
<style>
|
||||
.release-page .explain h2 {
|
||||
margin-top: 12px;
|
||||
font-size: 2em;
|
||||
margin-bottom: .3rem;
|
||||
color: rgba(0,0,0,.8);
|
||||
}
|
||||
|
||||
.release-page .dot {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.release-page .dot.big {
|
||||
position: relative;
|
||||
text-indent: 0;
|
||||
margin: 15px auto 0;
|
||||
}
|
||||
|
||||
.release-page .chart {
|
||||
height: 60px;
|
||||
width: 60px;
|
||||
top: initial;
|
||||
left: initial;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.release-page .chart p {
|
||||
vertical-align: middle;
|
||||
line-height: 3.7rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.release-page .chart canvas {
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
.statuses ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.statuses ul li {
|
||||
position: relative;
|
||||
margin-bottom: 10px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.statuses li:before {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
left: -25px;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="row explain">
|
||||
<div class="col-sm-2">
|
||||
<span class="dot big progress">
|
||||
<div class="chart" data-percent="percentComplete">
|
||||
<p>@(percentComplete)%</p>
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-sm-10">
|
||||
<h2>v@(Model.Content.Name)</h2>
|
||||
<small>Status: <span>@(release.released ? "Released" : "In Progress")</span></small>
|
||||
@if (release.released == false)
|
||||
{
|
||||
<h3>
|
||||
<span>@(percentComplete)% complete</span>
|
||||
<span>@(100 - percentComplete)% in progress</span>
|
||||
</h3>
|
||||
<h3>Target release date: <span style="color:#5B5B5B">@releaseDate</span></h3>
|
||||
}
|
||||
|
||||
@if (Model.Content.HasValue("releaseNotes"))
|
||||
{
|
||||
<small><p>@Html.Raw(Model.Content.GetPropertyValue<string>("releaseNotes"))</p></small>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
@{
|
||||
var countIsOdd = ((downloads.Count() & 1) != 0) ? true : false;
|
||||
if (downloads.Any())
|
||||
{
|
||||
|
||||
<div class="get-release row">
|
||||
@foreach (var item in downloads)
|
||||
{
|
||||
var background = item.IsFirst() ? "/images/releases/download.png" : "/media/2483095/download.png";
|
||||
var width = (item.IsLast() && countIsOdd) ? 895 : 380;
|
||||
var numberOfDownloads = item.GetPropertyValue<int>("numberOfDownloads");
|
||||
numberOfDownloads = numberOfDownloads + OurUmbraco.Our.Utils.GetReleaseDownloadCount(item.Id);
|
||||
if (item.Name.Contains("WebPI") == false)
|
||||
{
|
||||
<div class="release @(item.IsFirst() == false ? "bin" : "zip") col-sm-1">
|
||||
<i class="icon-Download-alt"></i>
|
||||
</div>
|
||||
<div class="release @(item.IsFirst() == false ? "bin" : "zip") col-md-5">
|
||||
|
||||
<h3><a href="/ReleaseDownload?id=@item.Id" onclick="_gaq.push(['_trackEvent', 'Release', 'Download', '@item.Name']);">@item.Name</a></h3>
|
||||
@if (item.IsFirst())
|
||||
{
|
||||
<p>This is the main Umbraco download, generally you won't need anything else.</p>
|
||||
}
|
||||
<small>Downloaded @numberOfDownloads times - uploaded @(item.GetPropertyValue<DateTime>("UploadDate").ToString("D"))</small>
|
||||
</div>
|
||||
}
|
||||
else
|
||||
{
|
||||
<div style="display: none;"><a href="/ReleaseDownload?id=@item.Id" onclick="_gaq.push(['_trackEvent', 'Release', 'Download', '@item.Name']);">@item.Name</a></div>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}
|
||||
<div class="row markdown-syntax">
|
||||
|
||||
<div class="col-md-5">
|
||||
|
||||
@if (release.releaseDescription != string.Empty && currentPage.HasValue("bodyText") == false)
|
||||
{
|
||||
<span>
|
||||
<h2>Summary</h2>
|
||||
<p><span>@Html.Raw(release.releaseDescription)</span></p>
|
||||
</span>
|
||||
}
|
||||
|
||||
@if (Model.Content.HasValue("bodyText"))
|
||||
{
|
||||
<h2>Release notes</h2>
|
||||
@Html.Raw(Model.Content.GetPropertyValue<string>("bodyText"))
|
||||
}
|
||||
|
||||
<h2>Related changes from the issue tracker</h2>
|
||||
<div class="panel-wrapper">
|
||||
<div class="panel-left">
|
||||
<!-- Columns for statuses -->
|
||||
<div class="statuses group">
|
||||
<div class="status features">
|
||||
<h3>Features</h3>
|
||||
@{
|
||||
var features = release.issues.Where(x => x.type.ToLowerInvariant().Contains("feature")).ToList();
|
||||
if (features.Any())
|
||||
{
|
||||
foreach (var issue in features)
|
||||
{
|
||||
<ul>
|
||||
<li class="@issue.StateIcon()" title="@issue.state">
|
||||
<a href="http://issues.umbraco.org/issue/@issue.id" target="_blank">@issue.id - @issue.title</a>
|
||||
</li>
|
||||
</ul>
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
<p>No items to display</p>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
<div class="status breaking">
|
||||
<h3>Breaking Changes</h3>
|
||||
@{
|
||||
var breaking = release.issues.Where(x => x.breaking).ToList();
|
||||
if (breaking.Any())
|
||||
{
|
||||
foreach (var issue in breaking)
|
||||
{
|
||||
<ul>
|
||||
<li class="@issue.StateIcon()" title="@issue.state">
|
||||
<a href="http://issues.umbraco.org/issue/@issue.id" target="_blank">@issue.id - @issue.title</a>
|
||||
</li>
|
||||
</ul>
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
<p>No items to display</p>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
<div class="status issues">
|
||||
<h3>Issues & Tasks</h3>
|
||||
@{
|
||||
var issues = release.issues.Where(x => x.breaking == false && x.type.ToLowerInvariant().Contains("feature") == false).ToList();
|
||||
if (issues.Any())
|
||||
{
|
||||
foreach (var issue in issues)
|
||||
{
|
||||
|
||||
<ul>
|
||||
<li class="@issue.StateIcon()" title="@issue.state">
|
||||
<a href="http://issues.umbraco.org/issue/@issue.id" target="_blank">@issue.id - @issue.title</a>
|
||||
</li>
|
||||
</ul>
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
<p>No items to display</p>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-5 col-md-offset-2">
|
||||
|
||||
<h2>Getting started</h2>
|
||||
<p>Make sure to give the <a href="http://our.umbraco.org/documentation/Installation/">installation instructions a read</a>.</p>
|
||||
<p>
|
||||
Check the <strong>free</strong> <a href="http://umbraco.tv/videos/umbraco-v7/implementor/">foundation videos</a> on how to get started building Umbraco sites. They're available from:<br />
|
||||
<ul>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/installation/">Installation</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/document-types/">Document Types</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/templating/">Templating</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/stylesheets-and-javascript/">Stylesheets and Javascript</a></li>
|
||||
</ul>
|
||||
<h2>World's best community</h2>
|
||||
<p>You'll find our über active community working hard to help each other at Our Umbraco: <a href="http://our.umbraco.org">http://our.umbraco.org</a></p>
|
||||
<h2>Upgrading from older versions</h2>
|
||||
<p>Make sure to read the <a href="http://our.umbraco.org/documentation/Installation/Upgrading/">upgrade instructions</a> before you attempt an upgrade.</p>
|
||||
|
||||
|
||||
<h2>Found a bug?</h2>
|
||||
<p>We're happy to help you with any problems you encounter, so please report them in <a href="http://issues.umbraco.org/issues/U4">the issue tracker</a> and use the “Affected versions” field to set it to @Model.Content.Name. <br />Do a search first though, if the issue already exists, give it an extra vote.</p>
|
||||
|
||||
@if (Model.Content.HasValue("linkToChangeset"))
|
||||
{
|
||||
<h2>Source code</h2>
|
||||
<p>The source for <a href="@(Model.Content.GetPropertyValue<string>("linkToChangeset"))">this specific release is available for download from the repository</a> (click the "ZIP" button).</p>
|
||||
}
|
||||
|
||||
@if (Model.Content.GetPropertyValue<bool>("hasNuGet"))
|
||||
{
|
||||
<h2>Also available on NuGet</h2>
|
||||
|
||||
<div class="nuget-badge">
|
||||
<a href="https://nuget.org/packages/UmbracoCms/@Model.Content.Name">
|
||||
<p><code>PM> Install-Package UmbracoCms -Version @Model.Content.Name</code></p>
|
||||
</a>
|
||||
</div>
|
||||
}
|
||||
</div><!-- col-md-5 col-md-offset-2 -->
|
||||
</div><!-- .row .markdown-syntax -->
|
||||
</div>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
</div><!-- .page-content -->
|
||||
</div><!-- has-sidebar -->
|
||||
|
||||
@section EndScripts {
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/easy-pie-chart/2.1.4/jquery.easypiechart.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
setTimeout(function () {
|
||||
$('.chart').easyPieChart({
|
||||
size: 60,
|
||||
barColor: '#569327',
|
||||
scaleColor: false,
|
||||
trackColor: '#daf0c9'
|
||||
});
|
||||
}, 300);
|
||||
</script>
|
||||
}
|
||||
@@ -0,0 +1,190 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="has-sidebar release">
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
<li>
|
||||
<a href="/contribute/progress">
|
||||
<h3>In Progress</h3>
|
||||
</a>
|
||||
</li>
|
||||
<li class="active open">
|
||||
<a href="/contribute/releases">
|
||||
<h3>All releases</h3>
|
||||
</a>
|
||||
<ul class="level-2">
|
||||
<li class="active">
|
||||
<a href="/contribute/releases/compare">
|
||||
<h4>Compare Versions</h4>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div> <!-- .content-wrapper -->
|
||||
</div> <!-- .sidebar-content -->
|
||||
</div>
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
<div>
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.release .explain {
|
||||
margin-top: 20px;
|
||||
border-bottom: 1px solid #eee;
|
||||
border-top: 1px solid #eee;
|
||||
}
|
||||
|
||||
.release .explain h2 {
|
||||
margin-top: 12px;
|
||||
font-size: 2em;
|
||||
margin-bottom: .3rem;
|
||||
color: rgba(0,0,0,.8);
|
||||
}
|
||||
|
||||
.release .dot {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.release .dot.big {
|
||||
position: relative;
|
||||
text-indent: 0;
|
||||
margin: 15px !important;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.statuses ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.statuses ul li {
|
||||
position: relative;
|
||||
margin-bottom: 10px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.statuses li:before {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
left: -25px;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
|
||||
.release .markdown-syntax a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.release .markdown-syntax a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.markdown-syntax.douh {
|
||||
margin-top: 0 !important;
|
||||
}
|
||||
|
||||
.release .chart {
|
||||
height: 60px;
|
||||
width: 60px;
|
||||
top: inherit;
|
||||
left: inherit;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.release .chart p {
|
||||
vertical-align: middle;
|
||||
line-height: 2.7rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.release .chart canvas {
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.release .chartDesc {
|
||||
float: left;
|
||||
position: relative;
|
||||
line-height: 3.6em;
|
||||
}
|
||||
|
||||
.release select {
|
||||
border-radius: 0;
|
||||
padding: 10px;
|
||||
background-position: 95% center;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.release .titles {
|
||||
padding: 12px 15px;
|
||||
font-size: .8rem;
|
||||
text-transform: uppercase;
|
||||
font-weight: 700;
|
||||
letter-spacing: .5px;
|
||||
}
|
||||
|
||||
.release .to {
|
||||
margin-left: 20px;
|
||||
margin-right: 20px;
|
||||
}
|
||||
|
||||
.release .button {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.explain .col-xs-12 {
|
||||
min-height: 50px;
|
||||
}
|
||||
|
||||
.error {
|
||||
color: red !important;
|
||||
}
|
||||
</style>
|
||||
<div class="container">
|
||||
<div class="row markdown-syntax douh">
|
||||
<div class="col-sm-12">
|
||||
<h1>Compare Releases</h1>
|
||||
@Umbraco.RenderMacro("ReleasesDropdown")
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> <!-- .content-wrapper -->
|
||||
</div> <!-- .main-content -->
|
||||
</div> <!-- .main-area -->
|
||||
</div> <!-- .page-content -->
|
||||
</div> <!-- has-sidebar -->
|
||||
|
||||
@section EndScripts
|
||||
{
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/easy-pie-chart/2.1.4/jquery.easypiechart.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
function offsetAnchor() {
|
||||
if (location.hash.length !== 0) {
|
||||
window.scrollTo(window.scrollX, window.scrollY - 120);
|
||||
}
|
||||
}
|
||||
|
||||
$(window).on("hashchange", function () {
|
||||
offsetAnchor();
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
$('.chart').easyPieChart({
|
||||
size: 60,
|
||||
barColor: '#569327',
|
||||
scaleColor: false,
|
||||
trackColor: '#daf0c9'
|
||||
});
|
||||
offsetAnchor();
|
||||
}, 300);
|
||||
</script>
|
||||
}
|
||||
@@ -1,9 +1,4 @@
|
||||
<%@ Master Language="C#" MasterPageFile="~/umbraco/masterpages/default.master" AutoEventWireup="true" %>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="ContentPlaceHolderDefault" runat="server">
|
||||
|
||||
<umbraco:Macro runat="server" language="cshtml">
|
||||
@using umbraco.BusinessLogic
|
||||
@using umbraco.BusinessLogic
|
||||
@{
|
||||
int docId;
|
||||
if (int.TryParse(Request["id"], out docId))
|
||||
@@ -13,7 +8,7 @@
|
||||
docId = 111983;
|
||||
}
|
||||
|
||||
var umbracoHelper = new Umbraco.Web.UmbracoHelper(Umbraco.Web.UmbracoContext.Current);
|
||||
var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
|
||||
var content = umbracoHelper.TypedContent(docId);
|
||||
|
||||
if (content != null)
|
||||
@@ -21,7 +16,7 @@
|
||||
var link = content.GetProperty("downloadLink").Value.ToString().Trim();
|
||||
|
||||
var currentMember = 0;
|
||||
var memberShipHelper = new Umbraco.Web.Security.MembershipHelper(Umbraco.Web.UmbracoContext.Current);
|
||||
var memberShipHelper = new Umbraco.Web.Security.MembershipHelper(UmbracoContext.Current);
|
||||
var member = memberShipHelper.GetCurrentMember();
|
||||
|
||||
if (member != null)
|
||||
@@ -29,10 +24,12 @@
|
||||
currentMember = member.Id;
|
||||
}
|
||||
|
||||
Application.SqlHelper.ExecuteNonQuery(
|
||||
@"insert into projectDownload(projectId,memberId,timestamp) values(@id, @memberId, getdate())",
|
||||
Application.SqlHelper.CreateParameter("@id", docId),
|
||||
Application.SqlHelper.CreateParameter("@memberId", currentMember));
|
||||
using (var sqlHelper = Application.SqlHelper)
|
||||
{
|
||||
sqlHelper.ExecuteNonQuery(@"insert into projectDownload(projectId,memberId,timestamp) values(@id, @memberId, getdate())",
|
||||
sqlHelper.CreateParameter("@id", docId),
|
||||
sqlHelper.CreateParameter("@memberId", currentMember));
|
||||
}
|
||||
|
||||
Response.Redirect(link, false);
|
||||
}
|
||||
@@ -43,8 +40,4 @@
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</umbraco:Macro>
|
||||
|
||||
</asp:Content>
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
@using OurUmbraco.Release
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
var allReleases = Release.GetAllReleaseFromFile();
|
||||
}
|
||||
|
||||
<div class="has-sidebar">
|
||||
<!-- Apply to body -->
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
@foreach (var currentRelease in allReleases.Where(x => x.released && x.currentRelease))
|
||||
{
|
||||
<li>
|
||||
<a class="active" href="/contribute/releases/@(currentRelease.version.Replace(".", string.Empty))">
|
||||
<h3>Latest Release - v@(currentRelease.version)</h3>
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
<li>
|
||||
<a href="/contribute/progress"><h3>In Progress</h3></a>
|
||||
</li>
|
||||
<li class="active open">
|
||||
<a href="/contribute/releases"><h3>All releases</h3></a>
|
||||
<ul class="level-2">
|
||||
<li>
|
||||
<a href="/contribute/releases/compare"><h4>Compare Versions</h4></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div>
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
<div>
|
||||
@Umbraco.RenderMacro("Breadcrumb", new { linkToCurrent = "1" })
|
||||
</div>
|
||||
<!-- <div class="markdown-syntax"><div data-bind="template: { name: 'releases-template', foreach: currentReleases }"></div></div>-->
|
||||
<div class="markdown-syntax">
|
||||
@Umbraco.RenderMacro("ReleasesAllReleases")
|
||||
</div>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
</div><!-- .page-content -->
|
||||
</div>
|
||||
@@ -0,0 +1,171 @@
|
||||
@using OurUmbraco.Release
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
var allReleases = Release.GetAllReleaseFromFile();
|
||||
var inProgress = allReleases.Where(x => x.inProgressRelease).ToList();
|
||||
|
||||
var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
|
||||
var currentPage = umbracoHelper.TypedContent(umbracoHelper.UmbracoContext.PageId);
|
||||
var releaseLanding = currentPage.Parent.Children().FirstOrDefault(x => x.ContentType.Alias == "ReleaseLanding");
|
||||
}
|
||||
|
||||
<div class="has-sidebar">
|
||||
<div class="page-content">
|
||||
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
@foreach (var currentRelease in allReleases.Where(x => x.released && x.currentRelease))
|
||||
{
|
||||
<li>
|
||||
<a class="active" href="/contribute/releases/@(currentRelease.version.Replace(".", string.Empty))">
|
||||
<h3>Latest Release - v@(currentRelease.version)</h3>
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
<li class="active open">
|
||||
<a href="/contribute/progress">
|
||||
<h3>In Progress</h3>
|
||||
</a>
|
||||
<ul class="level-2">
|
||||
@foreach (var release in inProgress)
|
||||
{
|
||||
<li>
|
||||
<a href="/contribute/releases/@(release.version.Replace(".", string.Empty))">
|
||||
<h4>v@(release.version)</h4>
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/contribute/releases">
|
||||
<h3>All Releases</h3>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div>
|
||||
<!-- .content-wrapper -->
|
||||
</div>
|
||||
<!-- .sidebar-content -->
|
||||
</div>
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
<div style="margin-top: 25px;">
|
||||
<umbraco:Macro linkToCurrent="1" Alias="Breadcrumb" runat="server"></umbraco:Macro>
|
||||
</div>
|
||||
<div class="markdown-syntax">
|
||||
<h1>In progress</h1>
|
||||
<p><em>Versions of Umbraco currently in production</em></p>
|
||||
</div>
|
||||
<!-- #markdown-docs -->
|
||||
<div class="releaseTable row">
|
||||
@foreach (var release in inProgress)
|
||||
{
|
||||
|
||||
var completedIssues = release.issues.Count(x => x.state == "Fixed");
|
||||
var totalIssues = release.issues.Count();
|
||||
var percentComplete = Math.Round(((double)100 / totalIssues) * completedIssues);
|
||||
var releaseDateParsed = DateTime.Now;
|
||||
if (release.releaseDate != string.Empty)
|
||||
{
|
||||
releaseDateParsed = DateTime.Parse(release.releaseDate.Substring(3, 2) + "-" + release.releaseDate.Substring(0, 2) + "-" + release.releaseDate.Substring(6));
|
||||
}
|
||||
|
||||
var releaseDate = release.releaseDate == "" ? "Not yet determined" : releaseDateParsed.ToString("dddd, MMMM d yyyy");
|
||||
IPublishedContent releaseContent = null;
|
||||
if (releaseLanding != null)
|
||||
{
|
||||
releaseContent = releaseLanding.Children().FirstOrDefault(x => x.Name.ToLowerInvariant() == release.version.ToLowerInvariant());
|
||||
if (releaseContent != null)
|
||||
{
|
||||
var overrideDescription = releaseContent.GetPropertyValue<bool>
|
||||
("overrideYouTrackDescription");
|
||||
if (overrideDescription)
|
||||
{
|
||||
release.releaseDescription = releaseContent.GetPropertyValue<string>
|
||||
("bodyText");
|
||||
}
|
||||
var overrideReleaseDate = releaseContent.GetPropertyValue<string>
|
||||
("overrideYouTrackReleaseDate");
|
||||
if (string.IsNullOrWhiteSpace(overrideReleaseDate) == false)
|
||||
{
|
||||
releaseDate = overrideReleaseDate;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
<div class="inprogress">
|
||||
<div class="col-xs-3">
|
||||
<span class="dot big progress">
|
||||
<div class="chart" data-percent="@percentComplete">
|
||||
<div class="percentage">@(percentComplete)%</div>
|
||||
</div>
|
||||
<span class="line v-line top" style="@(release == inProgress.First() == false ? " display: block;" : null)"></span>
|
||||
<span class="line v-line"></span>
|
||||
<span class="line h-line"></span>
|
||||
</span>
|
||||
<span class="dot small">
|
||||
<span class="line v-line" style="@(release == inProgress.Last() == false ? " display: block;" : null)"></span>
|
||||
<span class="line h-line"></span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-9">
|
||||
<div class="row explain">
|
||||
<div class="col-xs-12">
|
||||
<h4 class="text-right"><a href="/contribute/releases/@(release.version.Replace(".",""))">v@(release.version)</a></h4>
|
||||
<small><span>@Html.Raw(release.releaseDescription)</span></small>
|
||||
</div>
|
||||
<div class="col-xs-6">
|
||||
<div class="changes">
|
||||
<small>Features: <span>@(release.issues.Count(x => x.type.ToLowerInvariant().Contains("feature")))</span></small>
|
||||
<small>Issues: @(release.issues.Count(x => x.type.ToLowerInvariant().Contains("feature") == false && x.breaking == false))<span></span></small>
|
||||
<small>Breaking changes: <span>@(release.issues.Count(x => x.breaking))</span></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-6">
|
||||
<div class="changes">
|
||||
<small>Release date:</small>
|
||||
<small>@releaseDate</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
<!-- .content-wrapper -->
|
||||
</div>
|
||||
<!-- .main-content -->
|
||||
</div>
|
||||
<!-- .main-area -->
|
||||
|
||||
</div>
|
||||
<!-- .page-content -->
|
||||
</div>
|
||||
|
||||
|
||||
@section EndScripts {
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/easy-pie-chart/2.1.4/jquery.easypiechart.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
setTimeout(function () {
|
||||
$('.chart').easyPieChart({
|
||||
size: 60,
|
||||
barColor: '#569327',
|
||||
scaleColor: false,
|
||||
trackColor: '#daf0c9'
|
||||
});
|
||||
}, 300);
|
||||
</script>
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Umbraco Package Repository</title>
|
||||
|
||||
<link href="/umbraco_client/ui/default.css" type="text/css" rel="stylesheet" />
|
||||
<link href="/umbraco_client/panel/style.css" type="text/css" rel="stylesheet" />
|
||||
<link href="/css/repository.css" type="text/css" rel="stylesheet" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="TheForm">
|
||||
<div id="table1" class="propertyPane guiDialogNormal">
|
||||
<div class="propertyContent">
|
||||
@Umbraco.RenderMacro("Repository")
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,9 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/RepositoryMaster.cshtml";
|
||||
}
|
||||
@Umbraco.RenderMacro("Repository-PopularPackages")
|
||||
<div id="repoForm">
|
||||
<h3>Log in using your our.umbraco.org credentials</h3>
|
||||
@Umbraco.RenderMacro("MemberLogin", new { NextPage = "30186", ErrorMessage = "Unknown Login" })
|
||||
</div>
|
||||
@@ -0,0 +1,84 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
HttpContext.Current.Response.AddHeader("p3p", "CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");
|
||||
}<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Umbraco Package Repository</title>
|
||||
<link href="/css/repo-styles.css" type="text/css" rel="stylesheet" />
|
||||
<link href="/css/qtip2.css" type="text/css" rel="stylesheet" />
|
||||
<script type="text/javascript">
|
||||
var _callback = '@(Request.QueryString["callback"])';
|
||||
var _qs = '@(Request.RawUrl.Substring( Request.RawUrl.IndexOf('?')+1 ))';
|
||||
</script>
|
||||
<script type="text/javascript" src="/scripts/libs/jquery-1.6.1.min.js"></script>
|
||||
<script type="text/javascript" src="https://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js"></script>
|
||||
<script type="text/javascript" src="/scripts/repo/typewatch.js"></script>
|
||||
<script type="text/javascript" src="/scripts/libs/qtip2.js"></script>
|
||||
<!-- packagetips -->
|
||||
<script type="text/javascript" src="/scripts/repo/packageTips.js"></script>
|
||||
<script type="text/javascript" src="/scripts/repo/repoSearch.js"></script>
|
||||
<script id="search-result" type="text/x-jquery-tmpl">
|
||||
<li class="clearfix">
|
||||
<div class="deliPackage">
|
||||
<div class="brief">
|
||||
{{if Fields.image == null}}
|
||||
<a href="/repo_viewproject?@(Request.RawUrl.Substring( Request.RawUrl.IndexOf('?')+1 ))&project_id={{= Id}}" class="packageIcon" style="background: url(/css/img/package2.png?bgcolor=fff&width=50&height=50&format=png;) no-repeat top left;">
|
||||
Package
|
||||
</a>
|
||||
{{/if}}
|
||||
{{if Fields.image != null}}
|
||||
<a href="/repo_viewproject?@(Request.RawUrl.Substring( Request.RawUrl.IndexOf('?')+1 ))&project_id={{= Id}}" class="packageIcon" style="background: url({{= Fields.image}}?bgcolor=fff&width=50&height=50&format=png;) no-repeat top left;">
|
||||
Package
|
||||
</a>
|
||||
{{/if}}
|
||||
<h3>
|
||||
<a href="/repo_viewproject?@(Request.RawUrl.Substring( Request.RawUrl.IndexOf('?')+1 ))&project_id={{= Id}}">{{= Fields.nodeName}}</a>
|
||||
</h3>
|
||||
<div class="category">
|
||||
{{= Fields.category}}
|
||||
</div>
|
||||
<div class="commercialIndicator free">
|
||||
{{= Fields.listingType}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="hiLite">
|
||||
<p>
|
||||
<a href="/repo_viewproject?@(Request.RawUrl.Substring( Request.RawUrl.IndexOf('?')+1 ))&project_id={{= Id}}" title="{{= Fields.nodeName}}" rel="{{= Fields.uniqueId}}">{{= Fields.body}}</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="popularity">
|
||||
<div class="karma">
|
||||
{{= Fields.karma}} <small>Karma</small>
|
||||
</div>
|
||||
<div class="downloads">
|
||||
{{= Fields.downloads}} <small>Downloads</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</script>
|
||||
@RenderSection("head", false)
|
||||
</head>
|
||||
<body>
|
||||
<form runat="server">
|
||||
<div id="TheForm">
|
||||
<div id="search">
|
||||
<div><input type="text" id="search-field" value="Search..." /><!-- <em>or</em> <a href="#">browse</a>--></div>
|
||||
</div>
|
||||
<div id="body">
|
||||
<ul class="projects" id="search-result-holder" style="display: none;"></ul>
|
||||
<div id="search-no-results">
|
||||
<h3>No luck!</h3>
|
||||
<p>There's no project that matches <strong><span id="search-query"></span></strong>.</p>
|
||||
<p>Maybe it doesn't exist, maybe it hasn't been approved yet. After all, it does take community kudos from at least 15 people to make it inside this repository</p>
|
||||
</div>
|
||||
<div id="repo-content">
|
||||
@RenderBody()
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,18 @@
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/RepositoryMaster.cshtml";
|
||||
}
|
||||
@section head
|
||||
{
|
||||
<link rel="stylesheet" type="text/css" href="/css/shadowbox.css" />
|
||||
<script type="text/javascript" src="/scripts/shadowbox/shadowbox.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
Shadowbox.init({ overlayColor: '#000000', overlayOpacity: '0.7', onFinish: addClickClose });
|
||||
|
||||
function addClickClose() {
|
||||
$('#sb-content').unbind('click').click(function () { Shadowbox.close(); });
|
||||
}
|
||||
</script>
|
||||
}
|
||||
@Umbraco.Field("bodyText")
|
||||
@@ -0,0 +1,143 @@
|
||||
@using OurUmbraco.Release
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
if (Request.Url != null && (Request.Url.AbsolutePath.ToLowerInvariant() == "/roadmap/" || Request.Url.AbsolutePath.ToLowerInvariant() == "/roadmap"))
|
||||
{
|
||||
var newUrl = Request.Url.AbsoluteUri.Replace("/roadmap", "/contribute/roadmap");
|
||||
Response.Redirect(newUrl, true);
|
||||
}
|
||||
var roadmap = Roadmap.GetRoadmapReleasesFromFile();
|
||||
var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
|
||||
var currentPage = umbracoHelper.TypedContent(umbracoHelper.UmbracoContext.PageId);
|
||||
var releaseLanding = currentPage.Parent.Children().FirstOrDefault(x => x.ContentType.Alias == "ReleaseLanding");
|
||||
var title = Model.Content.Name;
|
||||
var altHeadline = Model.Content.GetPropertyValue<string>("alternativeHeadline");
|
||||
if (string.IsNullOrWhiteSpace(altHeadline) == false)
|
||||
{
|
||||
title = altHeadline;
|
||||
}
|
||||
}
|
||||
<style>
|
||||
.chart canvas {
|
||||
top: -3px;
|
||||
position: absolute;
|
||||
left: -3px;
|
||||
}
|
||||
</style>
|
||||
<div class="subpage wrapper">
|
||||
<div>
|
||||
@Umbraco.RenderMacro("Breadcrumb")
|
||||
</div>
|
||||
<div class="markdown-syntax">
|
||||
<h1>@title</h1>
|
||||
@Html.Raw(Model.Content.GetPropertyValue<string>("bodyText"))
|
||||
<h2>Planned Releases:</h2>
|
||||
</div>
|
||||
|
||||
@foreach (var release in roadmap.OrderBy(x => x.version))
|
||||
{
|
||||
var completedIssues = release.issues.Count(x => x.state == "Fixed");
|
||||
var totalIssues = release.issues.Count();
|
||||
var percentComplete = Math.Round(((double)100 / totalIssues) * completedIssues);
|
||||
var releaseDateParsed = DateTime.Now;
|
||||
if (release.releaseDate != string.Empty)
|
||||
{
|
||||
releaseDateParsed = DateTime.Parse(release.releaseDate.Substring(3, 2) + "-" + release.releaseDate.Substring(0, 2) + "-" + release.releaseDate.Substring(6));
|
||||
}
|
||||
|
||||
var releaseDate = release.releaseDate == "" ? "Not yet determined" : releaseDateParsed.ToString("dddd, MMMM d yyyy");
|
||||
IPublishedContent releaseContent = null;
|
||||
if (releaseLanding != null)
|
||||
{
|
||||
releaseContent = releaseLanding.Children().FirstOrDefault(x => string.Equals(x.Name, release.version, StringComparison.InvariantCultureIgnoreCase));
|
||||
if (releaseContent != null)
|
||||
{
|
||||
var overrideDescription = releaseContent.GetPropertyValue<bool>("overrideYouTrackDescription");
|
||||
if (overrideDescription)
|
||||
{
|
||||
release.releaseDescription = releaseContent.GetPropertyValue<string>("bodyText");
|
||||
}
|
||||
var overrideReleaseDate = releaseContent.GetPropertyValue<string>("overrideYouTrackReleaseDate");
|
||||
if (string.IsNullOrWhiteSpace(overrideReleaseDate) == false)
|
||||
{
|
||||
releaseDate = overrideReleaseDate;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
<div class="releaseListing">
|
||||
<div class="plannedreleases">
|
||||
<div class="row" style="margin-top: 50px; margin-bottom: 50px;">
|
||||
<div class="col-xs-3">
|
||||
<span class="dot big progress">
|
||||
<div class="chart" data-percent="@percentComplete">
|
||||
<div class="percentage">@(percentComplete)%</div>
|
||||
</div>
|
||||
<span class="line v-line"></span>
|
||||
<span class="line h-line"></span>
|
||||
</span>
|
||||
<span class="dot small">
|
||||
<span class="line v-line"></span>
|
||||
<span class="line h-line"></span>
|
||||
</span>
|
||||
<span class="dot small">
|
||||
<span class="line h-line"></span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-xs-9">
|
||||
<div class="row explain">
|
||||
<div class="col-xs-12">
|
||||
<h4 class="text-right"><a href="/contribute/releases/@(release.version.Replace(".",""))">v@(release.version)</a></h4>
|
||||
<small><span>release.releaseDescription</span></small>
|
||||
</div>
|
||||
<div class="col-xs-6">
|
||||
<div class="changes">
|
||||
<small>Features: <span>@release.issues.Count(x => x.type.ToLowerInvariant().Contains("feature"))</span></small>
|
||||
<small>Issues: @release.issues.Count(x => x.type.ToLowerInvariant().Contains("feature") == false && x.breaking == false)<span></span></small>
|
||||
<small>Breaking changes: <span>@release.issues.Count(x => x.breaking)</span></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-6">
|
||||
<div class="changes">
|
||||
<small>Release date:</small>
|
||||
<small>@releaseDate</small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12" style="min-height: initial">
|
||||
<h1 style="margin-top: 11px; margin-bottom: 30px; font-size: 1.4rem;">Planned features:</h1>
|
||||
</div>
|
||||
<div class="issues">
|
||||
@foreach (var issue in release.issues.Where(x => x.type.ToLowerInvariant().Contains("feature")))
|
||||
{
|
||||
<div class="col-sm-6" style="min-height: initial">
|
||||
<div class="@issue.state.Replace(" ", string.Empty)">
|
||||
<a href="http://issues.umbraco.org/issue/@issue.id" target="_blank"><small>@issue.id @issue.title</small></a>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
|
||||
@section EndScripts
|
||||
{
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/easy-pie-chart/2.1.4/jquery.easypiechart.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
setTimeout(function () {
|
||||
$('.chart').easyPieChart({
|
||||
size: 60,
|
||||
barColor: '#569327',
|
||||
scaleColor: false,
|
||||
trackColor: '#daf0c9'
|
||||
});
|
||||
}, 300);
|
||||
</script>
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
@using OurUmbraco.Our.Models
|
||||
@inherits UmbracoTemplatePage
|
||||
@{
|
||||
Layout = "~/Views/Master.cshtml";
|
||||
}
|
||||
<div class="plain">
|
||||
<!-- search OVERVIEW START -->
|
||||
@Html.Action("Render", "Search")
|
||||
<!-- search OVERVIEW END -->
|
||||
</div>
|
||||