261 lines
12 KiB
HTML
261 lines
12 KiB
HTML
<div class="container" ng-init="vm.shareInit()">
|
||
<div class="row">
|
||
<notification-bar></notification-bar>
|
||
</div>
|
||
<div class="row">
|
||
|
||
<h1>Create Share</h1>
|
||
<button class="btn btn-primary btn-lg" title="..." data-toggle="modal" data-target=".create-website-modal">
|
||
Create Share
|
||
</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>
|
||
|
||
<div class="input-group">
|
||
<div>
|
||
<label>Select .zip upload</label>
|
||
<input type="file" ng-model="vm.newFile" class="form-control" daplie-file-change="vm.Sites.setUpload(vm.dom)" />
|
||
</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>
|
||
</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 class="">
|
||
<a class="btn btn-primary" ng-click="vm.Shares.accept()">Accept Invite</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<hr>
|
||
<div class="row">
|
||
<div class="websites-tile">
|
||
<h1>Your Verified 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 avoid-clicks">
|
||
<iframe ng-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>
|
||
<div class="cards__title text-center"><span ng-if="r.pending" class="text-muted">(pending)</span></div>
|
||
<button class="btn btn--block card__btn" data-toggle="modal" data-target=".{{ r.challenge }}" ng-click="vm.closeAllOpenActions(); vm.checkShareRights(r);">Edit</button>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
|
||
|
||
<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">
|
||
<notification-bar></notification-bar>
|
||
<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'); vm.closeFileUploadsContainers();" 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); vm.closeFileUploadsContainers();" 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.allContents(r); vm.cleanArrays(); vm.closeFileUploadsContainers();" class="cp trigger-files-list-refresh">
|
||
<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); vm.closeFileUploadsContainers();" 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.deleteWebsite(r, r); vm.closeFileUploadsContainers();" 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">
|
||
<div ng-if="r.shareAccess.invite">
|
||
<h1><i class="fa fa-folder"></i> {{ vm.currentFolder | capitalize }}</h1>
|
||
<form class="form-horizontal">
|
||
|
||
<div class="form-group">
|
||
<label class="col-md-1 control-label" for="">To:</label>
|
||
<div class="col-md-8">
|
||
<input type="text" ng-model="r.shareEmail" class="form-control" placeholder="ex: john@example.com" />
|
||
<input type="hidden" ng-model="vm.autoPopulateWebPath" class="form-control" placeholder="/" disabled />
|
||
</div>
|
||
<div class="col-md-3">
|
||
<multiselect class="input-xlarge" multiple="true"
|
||
ng-model="selectedAccess"
|
||
options="c.name for c in accessLevel"
|
||
change="selected()"
|
||
ng-change="showShareBtn = true; vm.getSharedAccess(selectedAccess)">
|
||
</multiselect>
|
||
</div>
|
||
</div>
|
||
<div class="text-right" ng-show="showShareBtn">
|
||
<button type="submit" class="btn btn-success text-center" ng-click="vm.shareFolderFrom(r, opts)">Share</button>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
<div ng-if="!r.shareAccess.invite">
|
||
<h3 class="text-muted">You do not have the correct permissions to invite or share files...</h3>
|
||
</div>
|
||
</div>
|
||
<div ng-show="vm.showSharesContainer">
|
||
<div class="text-center {{ vm.displaySpinner }}">
|
||
<i class="fa fa-spinner fa-spin fa-5x"></i>
|
||
</div>
|
||
<h3 class="text-muted text-center">{{ vm.notSharedMessage }}</h3>
|
||
<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 | prettyShareMode" class="text-muted">wrx</span></p>
|
||
<p><b>Invite:</b> <em ng-if="share.pending" class="text-muted">pending</em> <span ng-if="!share.pending" class="text-muted">Accepted</span></p>
|
||
</div>
|
||
<div class="media-right align-self-center">
|
||
<button ng-if="r.shareAccess.invite" 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>
|
||
</div>
|