@ -1,139 +1,238 @@
< style >
.panel{
box-shadow: none;
border: none;
}
< / style >
< div class = "container" >
< div class = "row" >
< div class = "home-container" >
< div class = "white-well" >
< h1 > Create a new Website< / h1 >
< h3 > Select a Domain< / h3 >
< div class = "input-group" >
< input type = "text" class = "form-control" placeholder = "www" ng-model = "vm.newRecord" ng-change = "vm.setRecord()" / >
< div class = "input-group-btn" >
<!-- Single button -->
< div class = "btn-group" >
< button type = "button" class = "btn btn-default dropdown-toggle" data-toggle = "dropdown" aria-haspopup = "true" aria-expanded = "false" > < span class = "caret" > < / span >
< / button >
< ul class = "dropdown-menu" >
< li ng-repeat = "record in vm.records track by $index" > < button class = "btn btn-link" ng-bind = "record.sub" ng-click = "vm.selectRecord(record)" > www< / button > < / li >
< / ul >
< / div >
< / div >
< span class = "input-group-addon" > .< / span >
< div angucomplete-alt
placeholder="Select a domain"
pause="300"
selected-object="vm.selectedDomain"
local-data="domain"
local-search="localDomainSearch"
title-field="domain"
minlength="0"
input-class="form-control trigger-dropdown"
match-class="highlight">
< / div >
< button class = "btn btn-primary btn-lg" title = "..." data-toggle = "modal" data-target = ".create-website-modal" >
Create Website
< / button >
< hr >
< div class = "modal fade create-website-modal" tabindex = "-1" role = "dialog" aria-labelledby = "create-website-modal" aria-hidden = "true" >
< div class = "modal-dialog" >
< div class = "modal-content" >
< div class = "modal-header" >
< button type = "button" class = "close" data-dismiss = "modal" > < span aria-hidden = "true" > ×< / span > < span class = "sr-only" > Close< / span > < / button >
< h4 class = "modal-title" > Create a new Website< / h4 >
< / div >
< div class = "modal-body" >
< h4 > Select a domain< / h4 >
< div class = "input-group" >
< div angucomplete-alt
placeholder="Select a domain"
pause="300"
selected-object="vm.selectedDomain"
local-data="domain"
local-search="localDomainSearch"
title-field="domain"
minlength="0"
input-class="form-control trigger-dropdown"
match-class="highlight">
< / div >
<!-- <input type="text" class="form - control" placeholder="Select a domain" aria - label="Domain Name" ng - model="vm.newDomain" ng - change="vm.setDomain()" /> -->
< div class = "input-group-btn" >
< div class = "btn-group" >
< button type = "button" class = "btn btn-default trigger-dropdown" aria-haspopup = "true" aria-expanded = "false" ng-click = "vm.triggerDropdown()" > < span class = "caret" > < / span >
< / button >
< / div >
< / div >
< / div >
< div class = "input-group" >
< input type = "text" class = "form-control" placeholder = "www" ng-model = "vm.newRecord" ng-change = "vm.setRecord()" / >
< div class = "input-group-btn" >
< div class = "btn-group" >
< button type = "button" class = "btn btn-default dropdown-toggle" data-toggle = "dropdown" aria-haspopup = "true" aria-expanded = "false" > < span class = "caret" > < / span >
< / button >
< ul class = "dropdown-menu" >
< li ng-repeat = "record in vm.records track by $index" > < button class = "btn btn-link" ng-bind = "record.sub" ng-click = "vm.selectRecord(record)" > www< / button > < / li >
< / ul >
< / div >
< / div >
< / div >
<!-- <input type="text" class="form - control" placeholder="Select a domain" aria - label="Domain Name" ng - model="vm.newDomain" ng - change="vm.setDomain()" /> -->
< div class = "input-group-btn" >
< div class = "btn-group" >
< button type = "button" class = "btn btn-default trigger-dropdown" aria-haspopup = "true" aria-expanded = "false" ng-click = "vm.triggerDropdown()" > < span class = "caret" > < / span >
< / button >
< div class = "input-group" >
< div >
< label > Select .zip upload< / label >
< input type = "file" class = "js-file-upload this-has-a-special-non-angular-event-handler" / >
< / div >
< div ng-if = "vm.isZip" >
< label >
< input type = "checkbox" ng-model = "vm.unzip" / >
Unpack .zip
< / label >
< / div >
< div ng-if = "vm.unzip" >
< label >
< input type = "checkbox" ng-model = "vm.stripZip" / >
Strip zip directory root
< / label >
< / div >
<!-- <div ng - if="vm.isZip" ><label>Unzip directory</label> <input type="text" ng - model="vm.unzipPath" /></div -->
< div ng-if = "vm.uploadTotal" >
< span ng-bind = "vm.uploadPercent" > 99< / span > % | < span ng-bind = "vm.uploadProgress" > 1< / span > MiB / < span ng-bind = "vm.uploadTotal" > 100< / span > MiB
< / div >
< div >
< label > Web path< / label >
< input type = "text" class = "form-control" ng-model = "vm.uploadPath" / >
< / div >
< button ng-click = "vm.Sites.create()" type = "button" name = "button" class = "btn btn-default" > Create Website< / button >
< / div >
< / div >
< div class = "modal-footer" >
< button type = "button" class = "btn btn-default" data-dismiss = "modal" ng-click = "vm.showSharesList = false; vm.showListFiles = false;" > Close< / button >
< / div >
< / div >
< / div >
< / div >
< div class = "panel panel-default" >
< div class = "panel-body" >
<!--
Choose or create a public shared folder < button class = "btn btn-default" > Select Daplie Folder< / button >
< br >
-->
< div class = "input-group" >
< div > < label > Select .zip upload< / label > < input type = "file" ng-model = "vm.newFile" daplie-file-change = "vm.Sites.setUpload(vm)" / > < / div >
< div ng-if = "vm.isZip" > < label > < input type = "checkbox" ng-model = "vm.unzip" / > Unpack .zip< / label > < / div >
< div ng-if = "vm.unzip" > < label > < input type = "checkbox" ng-model = "vm.stripZip" / > Strip zip directory root< / label > < / div >
<!-- div ng - if="vm.isZip" ><label>Unzip directory</label> <input type="text" ng - model="vm.unzipPath" /></div -->
< / div >
< / div >
< div ng-if = "vm.uploadTotal" > < span ng-bind = "vm.uploadPercent" > 99< / span > % | < span ng-bind = "vm.uploadProgress" > 1< / span > MiB / < span ng-bind = "vm.uploadTotal" > 100< / span > MiB< / div >
< div > < label > Web path< / label > < input type = "text" ng-model = "vm.uploadPath" / > < / div >
< / div >
< div class = "invite-card-container" >
< div class = "invite-option" >
< h1 > Enter Invite Code< / h1 >
< hr / >
< input type = "text" class = "form-control" ng-model = "vm.Shares.inviteToken" / >
< hr / >
< div class = "price" >
< div class = "front" >
< span class = "price" > < / span >
< / div >
< / div >
<!--
< div class = "panel panel-default" >
< div class = "panel-body" >
Who can edit and upload to this site? < input placeholder = "Type contact name or email address" type = "text" class = "form-control" >
< div class = "" >
< a class = "btn btn-primary" ng-click = "vm.Shares.accept()" > Accept Invite< / a >
< / div >
< / div >
-->
<!-- <div class="form - group">
< div class = "pull-right" > -->
< button ng-click = "vm.Sites.create()" type = "button" name = "button" class = "btn btn-default" > Create Website< / button >
<!-- </div>
< / div > -->
< div class = "input-group" >
< div > < label > Invite Code< / label > < input type = "text" ng-model = "vm.Shares.inviteToken" / > < / div >
< button ng-click = "vm.Shares.accept()" type = "button" name = "button" class = "btn btn-default" > Accept Invite< / button >
< / div >
< / div >
< div class = "white-well" >
< h1 > Your Websites< / h1 >
< div ng-repeat = "r in vm.sites" >
< table class = "table" >
< tbody >
< tr >
< td >
< a ng-href = "https://{{r.domain}}" target = "_blank" ng-bind = "r.domain" > example.com< / a >
< span ng-if = "r.pending" > (pending)< / span >
< a ng-href = "{{r.download}}" target = "_blank" > Download< / a >
<!-- button class="btn btn - link" ng - click="vm.Sites.archive(r)">download</button -->
< button class = "btn btn-link" ng-click = "vm.Sites.remove(r, { path: '/', confirm: true })" > Clear< / button >
< / td >
< td >
< input type = "text" ng-model = "r.newPath" placeholder = "/" / >
< button class = "btn btn-default" ng-click = "vm.Sites.contents(r)" > List Files< / button >
< / td >
< td ng-bind = "r.path" > Sites > blogs > blog.jane.smith.net< / td >
< td >
< div ng-repeat = "share in r.sharedWith" ng-if = "!share.me" >
< span ng-bind = "share.path" > /< / span >
< span ng-bind = "share.comment" > friend@email.com< / span >
< em ng-if = "share.pending" > pending< / em >
(< span ng-bind = "share.mode" > rwx< / span > )
< button class = "btn btn-link" ng-click = "vm.Shares.remove(r, share)" > [X]< / button >
< / div >
< / td >
< td >
< input type = "text" ng-model = "r.shareEmail" placeholder = "ex: john@example.com" / >
< input type = "text" ng-model = "r.sharePath" placeholder = "/" / >
< input type = "text" ng-model = "r.shareMode" placeholder = "rwx (read, write, invite)" / >
< button class = "btn btn-default" ng-click = "vm.Shares.invite(r)" > Invite< / button >
< button class = "btn btn-default" ng-click = "vm.Shares.list(r)" > List Shares< / button >
< / td >
< / tr >
< / tbody >
< / table >
< div class = "input-group" >
< div > < label > Select upload< / label > < input type = "file" ng-model = "r.newFile" daplie-file-change = "vm.Sites.setUpload(r)" / > < / div >
< div ng-if = "r.isZip" > < label > < input type = "checkbox" ng-model = "r.unzip" / > Unpack .zip< / label > < / div >
< div ng-if = "r.unzip" > < label > < input type = "checkbox" ng-model = "r.stripZip" / > Strip zip directory root< / label > < / div >
<!-- div ng - if="vm.isZip" ><label>Unzip directory</label> <input type="text" ng - model="vm.unzipPath" /></div -->
< / div >
< div ng-if = "r.uploadTotal" > < span ng-bind = "r.uploadPercent" > 99< / span > % | < span ng-bind = "r.uploadProgress" > 1< / span > MiB / < span ng-bind = "r.uploadTotal" > 100< / span > MiB< / div >
< hr >
< div class = "row" >
< div class = "websites-tile" >
< h1 > Your Websites< / h1 >
< ul class = "cards" >
< li class = "cards__item" ng-repeat = "r in vm.sites" >
< div class = "card" >
< div class = "card__image card__image--fence" >
< iframe src = "{{ r.urlSafeDomain }}" width = "350" height = "350" > < / iframe >
< / div >
< div class = "card__content" >
< div class = "card__title text-center" > < a ng-href = "https://{{ r.domain }}" target = "_blank" ng-bind = "r.domain" > example.com< / a > < / div >
< button class = "btn btn--block card__btn" data-toggle = "modal" data-target = ".{{ r.challenge }}" ng-click = "vm.closeAllOpenActions()" > Edit< / button >
< / div >
< / div >
< / li >
< / ul >
< / div >
< div > < label > Web path< / label > < input type = "text" ng-model = "r.uploadPath" / > < / div >
< button ng-click = "vm.Sites.upload(r)" type = "button" name = "button" class = "btn btn-default" > Add File< / button >
< div class = "modal fade {{ r.challenge }}" tabindex = "-1" role = "dialog" aria-labelledby = "myLargeModalLabel" ng-repeat = "r in vm.sites" >
< div class = "modal-dialog modal-lg" role = "document" >
< div class = "modal-content" >
< div class = "modal-header" >
< button type = "button" class = "close" data-dismiss = "modal" ng-click = "vm.closeAllOpenActions()" > < span aria-hidden = "true" > ×< / span > < span class = "sr-only" > Close< / span > < / button >
< h4 class = "modal-title" > < a ng-href = "https://{{ r.domain }}" target = "_blank" ng-bind = "r.urlSafeDomain" > example.com< / a > < / h4 >
< / div >
< div class = "modal-body" >
< div class = "website-menu container" ng-hide = "vm.websiteTiles" >
< div class = "row" >
< div class = "col-md-3" >
< div class = "square-service-block" >
< a ng-click = "vm.showAction('invite')" class = "cp" >
< div class = "ssb-icon" > < i class = "fa fa-share-square-o" aria-hidden = "true" > < / i > < / div >
< h2 class = "ssb-title" > Invite< / h2 >
< / a >
< / div >
< / div >
< div class = "col-md-3" >
< div class = "square-service-block" >
< a ng-click = "vm.showAction('shares'); vm.Shares.list(r)" class = "cp" >
< div class = "ssb-icon" > < i class = "fa fa-list-alt" aria-hidden = "true" > < / i > < / div >
< h2 class = "ssb-title" > Shares< / h2 >
< / a >
< / div >
< / div >
< div class = "col-md-3" >
< div class = "square-service-block" >
< a ng-click = "vm.showAction('files'); vm.Sites.contents(r)" class = "cp" >
< div class = "ssb-icon" > < i class = "fa fa-sitemap" aria-hidden = "true" > < / i > < / div >
< h2 class = "ssb-title" > Files< / h2 >
< / a >
< / div >
< / div >
< / div >
< div class = "row" >
< div class = "col-md-3" >
< div class = "square-service-block" >
< a ng-href = "https://{{ r.domain }}" target = "_blank" class = "cp" >
< div class = "ssb-icon" > < i class = "fa fa-globe" aria-hidden = "true" > < / i > < / div >
< h2 class = "ssb-title" > Website< / h2 >
< / a >
< / div >
< / div >
< div class = "col-md-3" >
< div class = "square-service-block" >
< a ng-click = "vm.Sites.archive(r)" class = "cp" >
< div class = "ssb-icon" > < i class = "fa fa-file-archive-o" aria-hidden = "true" > < / i > < / div >
< h2 class = "ssb-title" > Download< / h2 >
< / a >
< / div >
< / div >
< div class = "col-md-3" >
< div class = "square-service-block" >
< a ng-click = "vm.Sites.remove(r)" class = "cp" >
< div class = "ssb-icon" > < i class = "fa fa-trash" aria-hidden = "true" > < / i > < / div >
< h2 class = "ssb-title" > Delete< / h2 >
< / a >
< / div >
< / div >
< / div >
< / div >
< div ng-show = "vm.showInviteContainer" >
< h1 > TODO:// FIX THIS UGLY< / h1 >
< form class = "form-inline text-center" >
< div class = "form-group" >
< input type = "text" ng-model = "r.shareEmail" class = "form-control" placeholder = "ex: john@example.com" / >
< / div >
< div class = "form-group" >
< input type = "text" ng-model = "r.sharePath" class = "form-control" placeholder = "/" / >
< / div >
< div class = "form-group" >
< input type = "text" ng-model = "r.shareMode" class = "form-control" placeholder = "rwx (read, write, invite)" / >
< / div >
< button type = "submit" class = "btn btn-success" ng-click = "vm.Shares.invite(r)" > Invite< / button >
< / form >
< / div >
< div ng-show = "vm.showSharesContainer" >
< span class = "text-muted" ng-if = "r.sharedWith.length === 1" > Currently not shared with anyone...< / span >
< ul class = "shares-container" ng-repeat = "share in r.sharedWith" ng-if = "!share.me" >
< li >
< div class = "media" >
< div class = "media-left align-self-center" >
< img class = "rounded-circle" src = "http://s3.amazonaws.com/37assets/svn/765-default-avatar.png" >
< / div >
< div class = "media-body" >
< h4 ng-bind = "share.comment" > friend@email.com< / h4 >
< p > < b > Share Path:< / b > < span ng-bind = "share.path" class = "text-muted" > /< / span > < / p >
< p > < b > Actions Allowed:< / b > < span ng-bind = "share.mode" class = "text-muted" > rwx< / span > < / p >
< p > < b > Invite:< / b > < em ng-if = "share.pending" class = "text-muted" > pending< / em > < / p >
< / div >
< div class = "media-right align-self-center" >
< button class = "btn btn-danger" ng-click = "vm.Shares.remove(r, share)" > Remove Access< / button >
< / div >
< / div >
< / li >
< / ul >
< / div >
< div ng-show = "vm.showFilesContainer" >
< file-tree r = "r" > < / file-tree >
< / div >
< / div >
< div class = "modal-footer " >
< button type = "button" class = "btn btn-primary pull-left" ng-show = "vm.showBackBtn" ng-click = "vm.closeAllOpenActions()" > Back< / button >
< button type = "button" class = "btn btn-default" data-dismiss = "modal" ng-click = "vm.closeAllOpenActions()" > Close< / button >
< / div >
< / div >
< / div >
< / div >