Add WebCms

This commit is contained in:
2016-11-07 12:56:17 -05:00
parent dfe92218f4
commit 15911f33c0
2750 changed files with 365672 additions and 133 deletions
@@ -0,0 +1,7 @@
<div ng-controller="Umbraco.Dialogs.ApprovedColorController">
<div class='CssClassPickerBox {{(class.mSelectorText.substring(1) == cssClass)? "select" : "" }}'
ng-click="submit(class.mSelectorText.substring(1))" ng-repeat='class in classes'>
<div class='{{class.mSelectorText.substring(1)}}'>
</div>
</div>
</div>
@@ -0,0 +1,61 @@
<form novalidate name="contentForm"
ng-controller="Umbraco.Dialogs.Content.EditController"
ng-show="loaded"
ng-submit="save()"
val-form-manager>
<div class="umb-panel">
<div class="umb-panel-header">
<umb-content-name
placeholder="@placeholders_entername"
ng-model="content.name"/>
</div>
<div class="umb-panel-body with-footer">
<div id="tab{{tab.id}}" ng-repeat="tab in content.tabs">
<div class="umb-pane" ng-if="!tab.hide">
<h5>{{tab.label}}</h5>
<umb-property property="property"
ng-repeat="property in tab.properties">
<umb-editor model="property"></umb-editor>
</umb-property>
</div>
</div>
</div>
<div class="umb-panel-footer" >
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_close">Close</localize>
</a>
<div class="btn-group dropup" ng-if="defaultButton">
<!-- primary button -->
<a class="btn btn-success" href="#" ng-click="performAction(defaultButton)" prevent-default>
<localize key="{{defaultButton.labelKey}}">{{defaultButton.labelKey}}</localize>
</a>
<a class="btn btn-success dropdown-toggle" data-toggle="dropdown" ng-if="subButtons.length > 0">
<span class="caret"></span>
</a>
<!-- sub buttons -->
<ul class="dropdown-menu bottom-up" role="menu" aria-labelledby="dLabel" ng-if="subButtons.length > 0">
<li ng-repeat="btn in subButtons">
<a href="#" ng-click="performAction(btn)" prevent-default>
<localize key="{{btn.labelKey}}">{{btn.labelKey}}</localize>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</form>
@@ -0,0 +1,58 @@
<div class="umb-panel" ng-controller="Umbraco.Dialogs.HelpController">
<div class="umb-panel-header">
<h1 class="headline"><localize key="sections_help">Help</localize></h1>
<small class="umb-version">Umbraco version {{version}}</small>
</div>
<div class="umb-panel-body umb-scrollable">
<div class="tab-content umb-control-group">
<div class="umb-pane">
<h5><localize key="help_helpTopicsFor">Help topics for</localize>: {{sectionName}}</h5>
<ul class="unstyled list-icons" ng-show="topics">
<li ng-repeat="topic in topics">
<i class="icon icon-help-alt"></i>
<a target="_blank" href="{{topic.link}}?utm_source=core&utm_medium=help&utm_content=topic-link&utm_campaign=our" title="{{topic.title}}">
{{topic.title}}
</a>
<small class="umb-detail">{{topic.description}}</small>
</li>
</ul>
<ul class="unstyled list-icons">
<li>
<i class="icon icon-favorite"></i>
<a target="_blank" href="http://our.umbraco.org?utm_source=core&utm_medium=help&utm_content=link&utm_campaign=our">
<localize key="help_goTo">go to</localize> our.umbraco.org
</a>
<small class="umb-detail">The friendliest community</small>
</li>
</ul>
</div>
<div class="umb-pane">
<h5><localize key="help_videoChaptersFor">Video chapters for</localize>: {{sectionName}}</h5>
<ul class="thumbnails" ng-show="videos">
<li class="span2" ng-repeat="video in videos">
<div class="thumbnail" style="margin-right: 20px">
<a target="_blank" href="{{video.link}}?utm_source=core&utm_medium=help&utm_content=link&utm_campaign=tv" title="{{video.title}}">
<img ng-src="{{video.thumbnail}}?width=120" alt="{{video.title}}">
</a>
</div>
</li>
</ul>
<ul class="unstyled list-icons">
<li>
<i class="icon icon-tv-old"></i>
<a target="_blank" href="http://umbraco.tv?utm_source=core&utm_medium=help&utm_content=link&utm_campaign=tv">
<localize key="help_goTo">go to</localize> umbraco.tv
</a>
<small class="umb-detail"><localize key="help_theBestUmbracoVideoTutorials">The best Umbraco video tutorials</localize></small>
</li>
</ul>
</div>
</div>
</div>
</div>
@@ -0,0 +1,57 @@
<div class="umb-panel" ng-controller="Umbraco.Dialogs.IconPickerController">
<div class="umb-panel-header">
<div class="umb-el-wrap umb-panel-buttons">
<div class="form-search">
<i class="icon-search"></i>
<input type="text"
style="width: 100%"
ng-model="searchTerm"
class="umb-search-field search-query input-block-level"
placeholder="Filter..."
no-dirty-check>
</div>
</div>
</div>
<div class="umb-panel-body with-footer">
<div class="umb-control-group">
<select ng-model="color" class="input-block-level">
<option value="">Black</option>
<option value="color-green">Green</option>
<option value="color-yellow">Yellow</option>
<option value="color-orange">Orange</option>
<option value="color-blue">Blue</option>
<option value="color-red">Red</option>
</select>
</div>
<umb-load-indicator ng-if="loading"></umb-load-indicator>
<div class="umb-control-group" ng-show="!loading">
<ul class="umb-iconpicker" ng-class="color" ng-show="icons">
<li class="umb-iconpicker-item" ng-repeat="icon in filtered = (icons | filter: searchTerm) track by $id(icon)">
<a href="#" title="{{icon}}" ng-click="submitClass(icon)" prevent-default>
<i class="{{icon}} large"></i>
</a>
</li>
</ul>
</div>
<umb-empty-state
ng-if="filtered.length === 0"
position="center">
<localize key="defaultdialogs_noIconsFound">No icons were found.</localize>
</umb-empty-state>
</div>
<div class="umb-panel-footer" >
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_cancel">Cancel</localize>
</a>
</div>
</div>
</div>
</div>
@@ -0,0 +1,50 @@
<form novalidate name="insertMacroForm" ng-submit="submitForm()" ng-controller="Umbraco.Dialogs.InsertMacroController" val-form-manager>
<div class="umb-panel">
<div class="umb-panel-footer">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href class="btn btn-link" ng-click="close()">
<localize key="cancel" />
</a>
<button type="submit" class="btn btn-primary">
<localize key="buttons_select"/>
</button>
</div>
</div>
<div class="umb-panel-body no-header umb-scrollable" auto-scale="90" ng-switch="wizardStep">
<umb-control-group label="Choose a macro" ng-switch-when="macroSelect">
<select class="umb-editor" ng-change="submitForm()"
name="selectedMacro"
ng-model="$parent.$parent.selectedMacro"
ng-options="m as m.name for m in macros"
required>
<option value=""><localize key="choose" />...</option>
</select>
<span class="help-inline" val-msg-for="selectedMacro" val-toggle-msg="required"><localize key="required" /></span>
</umb-control-group>
<div class="umb-pane" ng-switch-when="paramSelect">
<h5>{{$parent.$parent.selectedMacro.name}}</h5>
<ul class="unstyled">
<li ng-repeat="param in $parent.macroParams">
<ng-form name="parameterForm">
<umb-control-group label="{{param.name}}">
<umb-editor model="param"></umb-editor>
</umb-control-group>
</ng-form>
</li>
</ul>
</div>
</div>
</div>
</form>
@@ -0,0 +1,14 @@
<div class="umb-dialog" ng-controller="Umbraco.Dialogs.LegacyDeleteController">
<div class="umb-dialog-body" >
<div class="umb-pane">
<p>
Are you sure you want to delete <strong>{{currentNode.name}}</strong> ?
</p>
<umb-confirm on-confirm="performDelete" on-cancel="cancel">
</umb-confirm>
</div>
</div>
</div>
@@ -0,0 +1,76 @@
<div class="umb-panel" ng-controller="Umbraco.Dialogs.LinkPickerController">
<div class="umb-panel-body no-header with-footer compact">
<umb-pane>
<umb-control-group label="@content_urls">
<input type="text"
localize="placeholder"
placeholder="@general_url"
class="umb-editor umb-textstring"
ng-model="target.url"
ng-disabled="target.id"
/>
</umb-control-group>
<umb-control-group label="@content_nodeName">
<input type="text"
localize="placeholder"
placeholder="@placeholders_entername"
class="umb-editor umb-textstring"
ng-model="target.name" />
</umb-control-group>
<umb-control-group label="@content_target">
<select class="umb-editor umb-dropdown" ng-model="target.target">
<option value=""></option>
<option value="_blank">Opens the linked document in a new window or tab</option>
<option value="_top">Opens the linked document in the full body of the window</option>
<option value="_parent">Opens the linked document in the parent frame</option>
</select>
</umb-control-group>
</umb-pane>
<umb-tree-search-box hide-search-callback="hideSearch"
search-callback="onSearchResults"
search-from-id="{{searchInfo.searchFromId}}"
search-from-name="{{searchInfo.searchFromName}}"
show-search="{{searchInfo.showSearch}}"
section="{{section}}">
</umb-tree-search-box>
<br/>
<umb-tree-search-results ng-if="searchInfo.showSearch"
results="searchInfo.results"
select-result-callback="selectResult">
</umb-tree-search-results>
<div ng-hide="searchInfo.showSearch">
<umb-tree section="content"
hideheader="true"
hideoptions="true"
eventhandler="dialogTreeEventHandler"
isdialog="true"
enablecheckboxes="true">
</umb-tree>
</div>
</div>
<div class="umb-panel-footer">
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_cancel">Cancel</localize>
</a>
<a href ng-click="switchToMediaPicker()" class="btn">Link to file</a>
<button
class="btn btn-primary"
ng-click="submit(target)">
<localize key="buttons_select">Select</localize>
</button>
</div>
</div>
</div>
</div>
@@ -0,0 +1,135 @@
<div ng-controller="Umbraco.Dialogs.LoginController">
<div id="login" class="umb-modalcolumn umb-dialog" ng-class="{'show-validation': loginForm.$invalid}" ng-cloak konami-code="activateKonamiMode()">
<div class="form">
<h1>{{greeting}}</h1>
<div ng-show="view == 'login'">
<p>
<span ng-show="dialogData.isTimedOut"><localize key="login_timeout">Log in below</localize>.</span>
<localize key="login_instruction">Log in below</localize>
</p>
<div class="external-logins" ng-if="externalLoginProviders.length > 0">
<div class="text-error" ng-repeat="error in externalLoginInfo.errors">
<span>{{error}}</span>
</div>
<form method="POST" name="externalLoginForm" action="{{externalLoginFormAction}}">
<div ng-repeat="login in externalLoginProviders">
<button type="submit" class="btn btn-block btn-social"
ng-class="login.properties.SocialStyle"
id="{{login.authType}}" name="provider" value="{{login.authType}}"
title="Log in using your {{login.caption}} account">
<i class="fa" ng-class="login.properties.SocialIcon"></i>
<localize key="login_signInWith">Sign in with</localize> {{login.caption}}
</button>
</div>
</form>
<div id="hrOr">
<hr />
<div><localize key="general_or">or</localize></div>
</div>
</div>
<form method="POST" name="loginForm" ng-submit="loginSubmit(login, password)">
<div class="control-group" ng-class="{error: loginForm.username.$invalid}">
<input type="text" ng-model="login" name="username" class="input-xlarge" localize="placeholder" placeholder="@placeholders_username" />
</div>
<div class="control-group" ng-class="{error: loginForm.password.$invalid}">
<input type="password" ng-model="password" name="password" class="input-xlarge" localize="placeholder" placeholder="@placeholders_password" autocomplete="off" />
</div>
<div class="control-group" ng-show="loginForm.$invalid">
<div class="text-error">{{errorMsg}}</div>
</div>
<button type="submit" class="btn" val-trigger-change="#login .form input"><localize key="general_login">Login</localize></button>
<div class="switch-view" ng-show="allowPasswordReset">
<a class="muted" href="#" prevent-default ng-click="showRequestPasswordReset()"><localize key="login_forgottenPassword">Forgotten password?</localize></a>
</div>
</form>
</div>
<div ng-show="view == 'request-password-reset'">
<p>
<localize key="login_forgottenPasswordInstruction">An email will be sent to the address specified with a link to reset your password</localize>
</p>
<form method="POST" name="requestPasswordResetForm" ng-submit="requestPasswordResetSubmit(email)">
<div class="control-group" ng-class="{error: requestPasswordResetForm.email.$invalid}">
<input type="text" ng-model="email" name="email" class="input-xlarge" localize="placeholder" placeholder="@placeholders_email" />
</div>
<div class="control-group" ng-show="requestPasswordResetForm.$invalid">
<div class="text-error">{{errorMsg}}</div>
</div>
<div class="control-group" ng-show="showEmailResetConfirmation">
<div class="text-info">
<localize key="login_requestPasswordResetConfirmation">An email with password reset instructions will be sent to the specified address if it matched our records</localize>
</div>
</div>
<button type="submit" class="btn" val-trigger-change="#login .form input"><localize key="general_submit">Submit</localize></button>
<div class="switch-view">
<a class="muted" href="#" prevent-default ng-click="showLogin()"><localize key="login_returnToLogin">Return to login form</localize></a>
</div>
</form>
</div>
<div ng-show="view == 'set-password'">
<p ng-hide="resetComplete">
<localize key="login_setPasswordInstruction">Please provide a new password.</localize>
</p>
<form method="POST" name="setPasswordForm" ng-submit="setPasswordSubmit(password, confirmPassword)">
<div ng-hide="resetComplete" class="control-group" ng-class="{error: setPasswordForm.password.$invalid}">
<input type="password" ng-model="password" name="password" class="input-xlarge" localize="placeholder" placeholder="@placeholders_password" />
</div>
<div ng-hide="resetComplete" class="control-group" ng-class="{error: setPasswordForm.confirmPassword.$invalid}">
<input type="password" ng-model="confirmPassword" name="confirmPassword" class="input-xlarge" localize="placeholder" placeholder="@placeholders_confirmPassword" />
</div>
<div ng-hide="resetComplete" class="control-group" ng-show="setPasswordForm.$invalid">
<div class="text-error">{{errorMsg}}</div>
</div>
<div class="control-group" ng-show="showSetPasswordConfirmation">
<div class="text-info">
<localize key="login_setPasswordConfirmation">Your new password has been set and you may now use it to log in.</localize>
</div>
</div>
<button ng-hide="resetComplete" type="submit" class="btn" val-trigger-change="#login .form input"><localize key="general_submit">Submit</localize></button>
<div class="switch-view">
<a class="muted" href="#" prevent-default ng-click="showLogin()"><localize key="login_returnToLogin">Return to login form</localize></a>
</div>
</form>
</div>
<div ng-show="view == 'password-reset-code-expired'">
<div class="text-error" ng-repeat="error in resetPasswordCodeInfo.errors">
<span>{{error}}</span>
</div>
<div class="switch-view">
<a class="muted" href="#" prevent-default ng-click="showLogin()"><localize key="login_returnToLogin">Return to login form</localize></a>
</div>
</div>
</div>
</div>
</div>
@@ -0,0 +1,38 @@
<div class="umb-panel" ng-controller="Umbraco.Dialogs.MacroPickerController">
<div class="umb-panel-body no-header with-footer umb-scrollable" ng-switch on="dialogMode">
<div class="umb-control-group">
<div ng-switch-when="list" ng-swicth-default class="tab-content form-horizontal umb-el-wrap">
<ul class="nav nav-tabs nav-stacked">
<li ng-repeat="macro in macros">
<a href="#" ng-click="configureMacro(macro)" prevent-default>
{{macro.name}}
</a>
</li>
</ul>
</div>
<div ng-switch-when="configure" class="tab-content form umb-el-wrap">
<h5>{{dialogData.macro.name}}</h5>
<div class="umb-pane" ng-repeat="model in dialogData.macro.properties">
<label class="control-label" ng-hide="model.hideLabel" for="{{model.alias}}">{{model.label}}
</label>
<div class="controls"
ng-include="model.editorView">
</div>
</div>
</div>
</div>
</div>
<div class="umb-panel-footer">
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar">
<input type="button" ng-click="submit(dialogData)" class="btn btn-primary" value="select" />
</div>
</div>
</div>
</div>
@@ -0,0 +1,159 @@
<form ng-controller="Umbraco.Dialogs.MediaPickerController" id="fileupload"
method="POST"
enctype="multipart/form-data"
umb-image-upload="options">
<div class="umb-panel umb-dialogs-mediapicker" ng-if="target">
<div class="umb-panel-body no-header with-footer compact">
<umb-pane>
<umb-control-group ng-if="target.url">
<div class="clearfix">
<umb-image-gravity src="target.url"
center="target.focalPoint" />
</div>
<div ng-if="cropSize">
<h5>Preview</h5>
<umb-image-thumbnail center="target.focalPoint"
src="target.url"
height="{{cropSize.height}}"
width="{{cropSize.width}}"
max-size="400" />
</div>
</umb-control-group>
<umb-control-group label="@general_url">
<input type="text"
localize="placeholder"
placeholder="@general_url"
class="umb-editor umb-textstring"
ng-model="target.url"
ng-disabled="target.id" />
</umb-control-group>
<umb-control-group label="@content_altTextOptional">
<input type="text"
class="umb-editor umb-textstring"
ng-model="target.altText" />
</umb-control-group>
</umb-pane>
</div>
<div class="umb-panel-footer">
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="exitDetails()" class="btn btn-link">
<localize key="general_cancel">Cancel</localize>
</a>
<button class="btn btn-primary"
ng-click="submit(target)">
<localize key="general_insert">Insert</localize>
</button>
</div>
</div>
</div>
</div>
<div class="umb-panel umb-dialogs-mediapicker browser"
on-drag-leave="dragLeave()"
on-drag-end="dragLeave()"
on-drag-enter="dragEnter()"
ng-hide="target">
<div class="umb-panel-header">
<div class="umb-el-wrap umb-panel-buttons umb-mediapicker-upload">
<div class="form-search">
<i class="icon-search"></i>
<input type="text"
ng-model="searchTerm"
class="umb-search-field search-query"
placeholder="Filter...">
</div>
<div class="upload-button">
<button class="btn fileinput-button" ng-click="upload()" ng-class="{disabled: disabled}">
<i class="icon-page-up"></i>
<localize key="general_upload">Upload</localize>
</button>
</div>
</div>
<div class="row">
<ul class="breadcrumb span12">
<li ng-hide="startNodeId != -1">
<a href ng-click="gotoFolder()" prevent-default>Media</a> /
</li>
<li ng-repeat="item in path">
<a href ng-click="gotoFolder(item)" prevent-default>{{item.name}}</a> /
</li>
<li>
<a href ng-hide="showFolderInput" ng-click="showFolderInput = true">
<i class="icon icon-add small"></i>
</a>
<input type="text"
class="input-foldername input-mini inline"
ng-show="showFolderInput"
ng-model="newFolderName"
ng-keydown="submitFolder($event)"
on-blur="showFolderInput = false"
focus-when="{{showFolderInput}}">
</li>
</ul>
</div>
</div>
<div class="umb-panel-body with-footer">
<umb-file-dropzone
hide-dropzone="{{!activeDrag && images.length > 0}}"
parent-id="{{currentFolder.id}}"
files-uploaded="onUploadComplete"
files-queued="onFilesQueue">
</umb-file-dropzone>
<umb-photo-folder
min-height="105"
min-width="150"
max-height="250"
ideal-items-per-row="3"
on-click="clickHandler"
ng-model="images"
images-only="{{onlyImages}}"
filter-by="searchTerm" />
</div>
<div class="umb-panel-footer">
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_cancel">Cancel</localize>
</a>
<button class="btn btn-primary"
ng-show="multiPicker"
ng-click="submit(dialogData.selection)">
<localize key="buttons_select">Select</localize>({{dialogData.selection.length}})
</button>
</div>
</div>
</div>
</div>
</div>
@@ -0,0 +1,34 @@
<div class="umb-panel" ng-controller="Umbraco.Dialogs.MemberGroupPickerController">
<div class="umb-panel-body with-footer no-header">
<div>
<umb-tree section="member"
treealias="memberGroups"
hideheader="true"
hideoptions="true"
isdialog="true"
eventhandler="dialogTreeEventHandler"
enablecheckboxes="{{multiPicker}}">
</umb-tree>
</div>
</div>
<div class="umb-panel-footer" >
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_cancel">Cancel</localize>
</a>
<button class="btn btn-primary"
ng-click="submit(dialogData.selection)">
<localize key="buttons_select">Select</localize>
({{dialogData.selection.length}})
</button>
</div>
</div>
</div>
</div>
@@ -0,0 +1 @@
{{propertyTypeToRender}}
@@ -0,0 +1,36 @@
<form ng-controller="Umbraco.Dialogs.RteEmbedController" val-form-manager>
<div class="umb-panel">
<div class="umb-panel-body no-header with-footer">
<umb-pane>
<umb-control-group label="Url">
<input id="url" class="umb-editor input-block-level" type="text" ng-model="form.url" ng-keyup="$event.keyCode == 13 ? showPreview() : null" required />
<input type="button" ng-click="showPreview()" class="btn" value="Retrieve" />
</umb-control-group>
<div ng-show="form.supportsDimensions">
<umb-control-group label="Size">
<input type="text" ng-model="form.width" on-blur="changeSize('width')" style="width:50px"/> x <input type="text" ng-model="form.height" on-blur="changeSize('height')" style="width:50px"/>
<label for="constrain" style="display:inline">Constrain:</label>
<input id="constrain" type="checkbox" ng-model="form.constrain" style="margin-bottom: 10px;"/>
</umb-control-group>
</div>
<div>
<p ng-bind="form.info"></p>
<div ng-bind-html-unsafe="form.preview"></div>
</div>
</umb-pane>
</div>
<div class="umb-panel-footer">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href class="btn btn-link" ng-click="close()">
<localize key="cancel" />
</a>
<input type="button" ng-click="insert()" class="btn btn-primary" value="Ok" ng-disabled="!form.success" />
</div>
</div>
</div>
</form>
@@ -0,0 +1,158 @@
<form novalidate name="contentForm"
ng-controller="Umbraco.Dialogs.Template.QueryBuilderController"
ng-submit="close()"
val-form-manager>
<style>
.umb-querybuilder .row {font-size: 12px; line-height: 12px}
.umb-querybuilder .row a.btn{font-size: 12px; background: lightyellow}
.umb-querybuilder .row > div{
padding: 20px;
border-bottom: 1px solid #efefef;
}
</style>
<div class="umb-panel">
<div class="umb-panel-header">
<h1 class="headline" style="margin: 10px 0 0 0">Build a query</h1>
</div>
<div class="umb-panel-body with-footer umb-querybuilder">
<div class="row">
<div>
I want
<div class="btn-group">
<a class="btn btn-link dropdown-toggle"
data-toggle="dropdown" href="#">
{{query.contentType.name}}
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li ng-repeat="contentType in contentTypes">
<a href ng-click="query.contentType = contentType">
{{contentType.name}}
</a>
</li>
</ul>
</div>
<span>from</span>
<a href class="btn btn-link" ng-click="chooseSource(query)">
{{query.source.name}}
<span class="caret"></span>
</a>
</div>
<div ng-repeat="filter in query.filters">
<span ng-if="$first">Where</span>
<span ng-if="!$first">And</span>
<div class="btn-group">
<a class="btn btn-link dropdown-toggle"
data-toggle="dropdown" href="#">
{{filter.property.name}}
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li ng-repeat="property in properties">
<a href ng-click="filter.property = property">
{{property.name}}
</a>
</li>
</ul>
</div>
<div class="btn-group" ng-if="filter.property">
<a class="btn btn-link dropdown-toggle"
data-toggle="dropdown" href="#">
{{filter.term.name}}
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li ng-repeat="term in getPropertyOperators(filter.property)">
<a href ng-click="filter.term = term">
{{term.name}}
</a>
</li>
</ul>
</div>
<input type="text" ng-if="filter.term" style="width:90px;" ng-model="filter.constraintValue" />
<a href ng-click="addFilter(query)">
<i class="icon-add"></i>
</a>
<a href ng-if="query.filters.length > 1" ng-click="trashFilter(query)">
<i class="icon-trash"></i>
</a>
</div>
<div>
Order by
<div class="btn-group">
<a class="btn btn-link dropdown-toggle"
data-toggle="dropdown" href="#">
{{query.sort.property.name}}
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li ng-repeat="property in properties">
<a href ng-click="setSortProperty(query, property)">
{{property.name}}
</a>
</li>
</ul>
</div>
<a href class="btn" ng-click="changeSortOrder(query)">
{{query.sort.direction}}
</a>
</div>
</div>
<h4>Returns {{result.resultCount}} items in {{result.executionTime}} miliseconds</h4>
<ul class="nav unstyled">
<li ng-repeat="item in result.sampleResults">
<i class="icon icon-document blue"></i> {{item.name}}
</li>
</ul>
<pre>{{result.queryExpression}}</pre>
</div>
<div class="umb-panel-footer" >
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_close">Close</localize>
</a>
<a href ng-click="submit(result.queryExpression)" class="btn btn-primary">Insert</a>
</div>
</div>
</div>
</div>
</div>
</form>
@@ -0,0 +1,37 @@
<form novalidate name="contentForm"
ng-controller="Umbraco.Dialogs.Template.SnippetController"
ng-submit="close()"
val-form-manager>
<div class="umb-panel">
<div class="umb-panel-header">
<div class="panel-dialog--header" style="border-bottom: 1px solid whitesmoke">Configure the section</div>
</div>
<div class="umb-panel-body with-footer umb-querybuilder">
<label>
<div class="input-label--title">
Section name:
</div>
<input type="text" ng-model="section.name"/>
</label>
<label ng-show="type === 'rendersection'">
<input style="margin: 0;" type="checkbox" ng-checked="section.required" ng-model="section.required"/>
<div class="input-label--small">
<localize key="general_required">Required</localize>
</div>
</label>
</div>
<div class="umb-panel-footer">
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_close">Close</localize>
</a>
<a href ng-click="submit(section)" class="btn btn-primary">Insert</a>
</div>
</div>
</div>
</div>
</form>
@@ -0,0 +1,60 @@
<div class="umb-panel" ng-controller="Umbraco.Dialogs.TreePickerController">
<div class="umb-panel-header">
<div class="umb-el-wrap umb-panel-buttons">
<umb-tree-search-box hide-search-callback="hideSearch"
search-callback="onSearchResults"
search-from-id="{{searchInfo.searchFromId}}"
search-from-name="{{searchInfo.searchFromName}}"
show-search="{{searchInfo.showSearch}}"
section="{{section}}">
</umb-tree-search-box>
</div>
</div>
<div class="umb-panel-body with-footer">
<div class="tab-content umb-control-group">
<umb-tree-search-results
ng-if="searchInfo.showSearch"
results="searchInfo.results"
select-result-callback="selectResult">
</umb-tree-search-results>
<div ng-hide="searchInfo.showSearch" ng-animate="'tree-fade-out'">
<umb-tree section="{{section}}"
treealias="{{treeAlias}}"
hideheader="{{hideHeader}}"
hideoptions="true"
isdialog="true"
customtreeparams="{{customTreeParams}}"
eventhandler="dialogTreeEventHandler"
enablelistviewsearch="true"
enablecheckboxes="{{multiPicker}}">
</umb-tree>
</div>
</div>
</div>
<div class="umb-panel-footer">
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar pull-right">
<a href ng-click="close()" class="btn btn-link">
<localize key="general_cancel">Cancel</localize>
</a>
<button
class="btn btn-primary"
ng-if="dialogOptions.multiPicker"
ng-click="multiSubmit(dialogData.selection)">
<localize key="buttons_select">Select</localize>
({{dialogData.selection.length}})
</button>
</div>
</div>
</div>
</div>
@@ -0,0 +1,119 @@
<div class="umb-panel umb-user-panel" ng-controller="Umbraco.Dialogs.UserController">
<div class="umb-panel-header">
<div class="umb-el-wrap umb-panel-buttons">
<div class="btn-toolbar umb-btn-toolbar">
<button ng-click="logout()" hotkey="ctrl+shift+l" class="btn btn-warning">
<localize key="general_logout">Log out</localize>
</button>
</div>
</div>
<h1 class="headline">{{user.name}}</h1>
<small class="umb-version">Umbraco version {{version}}</small>
<p class="muted">
<small>
<localize key="user_sessionExpires" />: {{remainingAuthSeconds | timespan}}
</small>
</p>
</div>
<div class="umb-panel-body umb-scrollable">
<div class="tab-content umb-control-group">
<div class="umb-pane" ng-if="!showPasswordFields">
<h5><localize key="user_yourProfile" /></h5>
<a href="#/users/framed/%252Fumbraco%252Fusers%252Fedituser.aspx%253Fid%253D{{user.id}}"
class="btn btn-primary"
ng-click="close()"
ng-if="canEditProfile">
<localize key="general_edit">Edit</localize>
</a>
<umb-button
type="button"
action="togglePasswordFields()"
label="Change password"
button-style="success">
</umb-button>
</div>
<div class="umb-pane external-logins" ng-if="externalLoginProviders.length > 0 && !showPasswordFields">
<h5>External login providers</h5>
<div ng-repeat="login in externalLoginProviders">
<form ng-if="login.linkedProviderKey == undefined" method="POST" name="externalLoginForm"
action="{{externalLinkLoginFormAction}}" id="oauthloginform" name="oauthloginform">
<input type="hidden" name="provider" value="{{login.authType}}" />
<button class="btn btn-block btn-social"
ng-class="login.properties.SocialStyle"
id="{{login.authType}}"
onclick="document.forms.oauthloginform.submit();">
<i class="fa" ng-class="login.properties.SocialIcon"></i>
Link your {{login.caption}} account
</button>
</form>
<button ng-if="login.linkedProviderKey != undefined"
ng-click="unlink($event, login.authType, login.linkedProviderKey)"
class="btn btn-block btn-social"
ng-class="login.properties.SocialStyle"
id="{{login.authType}}"
name="provider"
value="{{login.authType}}">
<i class="fa" ng-class="login.properties.SocialIcon"></i>
Un-link your {{login.caption}} account
</button>
</div>
</div>
<div class="umb-pane" ng-if="!showPasswordFields">
<h5><localize key="user_yourHistory" /></h5>
<ul class="umb-tree">
<li ng-repeat="item in history | orderBy:'time':true">
<a ng-href="{{item.link}}" ng-click="gotoHistory(item.link)" prevent-default>
<i class="{{item.icon}}"></i> {{item.name}}
</a>
</li>
</ul>
</div>
<div class="umb-pane" ng-show="showPasswordFields">
<h5>Change password</h5>
<form
name="passwordForm"
class="block-form"
ng-submit="changePassword()"
novalidate
val-form-manager>
<umb-editor model="changePasswordModel"></umb-editor>
<umb-button
type="button"
action="togglePasswordFields()"
label="Back"
button-style="Cancel">
</umb-button>
<umb-button
type="submit"
label="Change password"
state="changePasswordButtonState"
button-style="success">
</umb-button>
</form>
</div>
</div>
</div>
@@ -0,0 +1,28 @@
<div class="umb-panel" ng-controller="Umbraco.Dialogs.YsodController">
<div class="umb-panel-body with-footer no-header">
<h3 style="padding-left: 20px" class="headline red">Received an error from the server</h3>
<umb-pane>
<h4>{{error.errorMsg}}</h4>
<p>{{error.data.ExceptionMessage || error.data.Message}}</p>
</umb-pane>
<umb-pane>
<h5>Exception Details: </h5>
{{error.data.ExceptionType}}: {{error.data.ExceptionMessage}}
</umb-pane>
<umb-pane>
<h5>Stacktrace: </h5>
<pre style="white-space: pre-wrap; overflow-x: auto;">{{error.data.StackTrace}}</pre>
</umb-pane>
</div>
<div class="umb-panel-footer">
<a href ng-click="close()" class="btn pull-right">
<localize key="general_close">Close</localize>
</a>
</div>
</umb-panel>