2 * Copyright 2016 Alexandre Terrasa <alexandre@moz-code.org>.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 .module('docdown', ['ngSanitize'])
21 .config(function($stateProvider
, $locationProvider
) {
25 templateUrl
: 'views/docdown.html',
26 controller
: 'DocdownCtrl',
27 controllerAs
: 'docdownCtrl'
31 .factory('DocDown', [ '$http', function($http
) {
33 postMarkdown
: function(md
, cb
, cbErr
) {
34 $http
.post('/api/docdown', md
)
41 .controller('DocdownCtrl', ['$sce', '$scope', '$location', 'DocDown', function($sce
, $scope
, $location
, DocDown
) {
43 this.updateSnippet
= function() {
48 this.updateLink
= function() {
49 $scope
.link
= $location
.protocol()+ '://' + $location
.host() + ':' +
50 $location
.port() + $location
.path() + '?snippet=' +
51 encodeURIComponent(btoa($scope
.markdown
));
54 this.updateHtml
= function() {
55 DocDown
.postMarkdown($scope
.markdown
,
57 $scope
.html
= $sce
.trustAsHtml(data
);
63 this.editMode
= function(isEdit
) {
67 $scope
.markdown
= 'Type some markdown...';
68 if($location
.search().snippet
) {
69 $scope
.markdown
= atob($location
.search().snippet
);
72 if($location
.search().edit
) {
73 $scope
.edit
= Boolean($location
.search().edit
);