David 10 роки тому
батько
коміт
043ddf13b4
5 змінених файлів з 1194 додано та 94 видалено
  1. 4 93
      front/index.html
  2. 1025 0
      front/js/angular-route.js
  3. 16 1
      front/js/app.js
  4. 96 0
      front/main.html
  5. 53 0
      front/sources.html

+ 4 - 93
front/index.html

@@ -10,104 +10,15 @@
 		<link rel="stylesheet" href="font-awesome-4.6.3/css/font-awesome.min.css">
 		<link rel="stylesheet" href="style.css">
 		<script src="js/angular.min.js"></script>
+		<script src="js/angular-route.js"></script>
 		<script src="js/ng-tags-input.min.js"></script>
 		<script src="js/app.js"></script>
 	</head>
 <body>
-	<div ng-controller="main" class="wrapper">
-		<aside class="sidebar">
-			<form class="filter">
-				<ul>
-					<li>
-						<div class="profile">
-							<p><i class="fa fa-user"></i> David Ventura</p>
-							<a href="#">Logout</a>
-						</div>
-					</li>
-					<li>
-						<h3><i class="fa fa-filter"></i> Filter</h3>
-					</li>
-					<li>
-						<label for="title">Article Title</label>
-						<input ng-model="title" type="text">
-					</li>
-					<li>
-						<label for="site">Site</label>
-						<input ng-model="site" type="text">
-					</li>
-					<li>
-						<label for="mindate">Min date (YYYY-MM-DD)</label>
-						<input ng-model="mindate" type="text">
-					</li>
-					<li>
-						<label for="mindate">Max date (YYYY-MM-DD)</label>
-						<input ng-model="maxdate" type="text">
-					</li>
-					<li>
-						<label for="mindate">Keyword</label>
-						<tags-input ng-model="selected_kw" add-on-paste="true" add-from-autocomplete-only="true" replace-spaces-with-dashes="false">
-							<auto-complete source="filtered($query)"></auto-complete>
-						</tags-input>
-					</li>
-					<li>
-						<label for="mindate">Min weight</label>
-						<input ng-model="minweight" type="text">
-					</li>
-					<li class="">
-						<button ng-click="filter()">Filter</button>
-					</li>
-				</ul>
-			</form>
-		</aside>
-		<div class="content-wrapper">
-			<div class="news-wrapper">
-				<section ng-repeat="n in news" ng-class-odd="'odd-news'" ng-class-even="'even-news'">
-					<div class="title">
-						<h4>{{n.title}}</h4>
-						<a href="#" ng-click="delete_article(n._id)"><i class="fa fa-times"></i></a>
-					</div>
-					<ul class="news-meta">
-						<li><i class="fa fa-calendar-o"></i> {{n.scrap_date | date:'short'}}</li>
-						<li>Weight: {{n.weight}}</li>
-						<li><i class="fa fa-globe"></i> {{n.source_name}}</li>
-					</ul>
-					<div class="summary">
-						{{n.summary}}
-					</div>
-					<div class="navigation">
-						<div><a ng-href="{{n.url}}" target="_blank"><i class="fa fa-external-link"></i> Visit site</a></div>
-						<div class="read-more"><a ng-click="getArticle(n)"><i class="fa fa-share"></i> Read complete article</a></div>
-					</div>
-					<div class="labels">
-						<i class="fa fa-tags"></i> <div ng-repeat="k in n.kw">{{k}}</div>
-					</div>
-				</section>
-				<div class="pagination">
-					<div class="center">
-						Page: <input type="number" ng-model="curPage" ng-change="changePage(curPage)" ng-model-options='{ debounce: 500 }' ng-blur="changePage(curPage)"> / {{totPages}}
-					</div>
-				</div>
-			</div>
-			<div class="article-wrapper">
-				<div id="news" ng-bind-html="newsArticle"></div>
-			</div>
-			<div style="clear: both"></div>
-		</div>
-			
-			
-		</div>
+	<div ng-view="">
 	</div>
-<!-- <div class="row">
-	<div class="col-md-12">
-		Parse source:
-		<input type="text" ng-model="source" class="form-control" placeholder="url">
-		<input type="text" ng-model="sourceName" class="form-control" placeholder="name">
-		<input type="text" ng-model="sourceSelector" class="form-control" placeholder="selector">
-		<input type="number" ng-model="sourceRSS" class="form-control" value=0>
-		<button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,0)">Test</button>
-		<button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,1)">Add</button>
-	</div>
-</div> -->
+	<!-- -->
+<!-- -->
 </body>
 </html>
 

Різницю між файлами не показано, бо вона завелика
+ 1025 - 0
front/js/angular-route.js


+ 16 - 1
front/js/app.js

@@ -1,4 +1,19 @@
-app=angular.module('app', ["ngTagsInput"]);
+app=angular.module('app', ["ngTagsInput","ngRoute"]);
+
+app.config(function($routeProvider, $locationProvider) {
+//	$locationProvider.html5Mode(true);
+//	$compileProvider.debugInfoEnabled(false);
+
+	$routeProvider
+		.when("/", {
+			templateUrl: 'main.html',
+			controller: 'main'
+		})
+		.when("/sources", {
+			templateUrl: 'sources.html',
+			controller: 'main'
+		})
+});
 
 app.controller('main', function($scope,$http,$sce) {
 	$scope.news=[];

+ 96 - 0
front/main.html

@@ -0,0 +1,96 @@
+	<div class="wrapper">
+		<aside class="sidebar">
+			<form class="filter">
+				<ul>
+					<li>
+						<div class="profile">
+							<p><i class="fa fa-user"></i> David Ventura</p>
+							<a href="#">Logout</a>
+						</div>
+					</li>
+					<li>
+						<h3><i class="fa fa-filter"></i> Filter</h3>
+					</li>
+					<li>
+						<label for="title">Article Title</label>
+						<input ng-model="title" type="text">
+					</li>
+					<li>
+						<label for="site">Site</label>
+						<input ng-model="site" type="text">
+					</li>
+					<li>
+						<label for="mindate">Min date (YYYY-MM-DD)</label>
+						<input ng-model="mindate" type="text">
+					</li>
+					<li>
+						<label for="mindate">Max date (YYYY-MM-DD)</label>
+						<input ng-model="maxdate" type="text">
+					</li>
+					<li>
+						<label for="mindate">Keyword</label>
+						<tags-input ng-model="selected_kw" add-on-paste="true" add-from-autocomplete-only="true" replace-spaces-with-dashes="false">
+							<auto-complete source="filtered($query)"></auto-complete>
+						</tags-input>
+					</li>
+					<li>
+						<label for="mindate">Min weight</label>
+						<input ng-model="minweight" type="text">
+					</li>
+					<li class="">
+						<button ng-click="filter()">Filter</button>
+					</li>
+				</ul>
+			</form>
+	<div class="row">
+		<div class="col-md-12">
+			Parse source:
+			<input type="text" ng-model="source" class="form-control" placeholder="url">
+			<input type="text" ng-model="sourceName" class="form-control" placeholder="name">
+			<input type="text" ng-model="sourceSelector" class="form-control" placeholder="selector">
+			<input type="number" ng-model="sourceRSS" class="form-control" value=0>
+			<button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,0)">Test</button>
+			<button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,1)">Add</button>
+		</div>
+	</div>
+
+		</aside>
+		<div class="content-wrapper">
+			<div class="news-wrapper">
+				<section ng-repeat="n in news" ng-class-odd="'odd-news'" ng-class-even="'even-news'">
+					<div class="title">
+						<h4>{{n.title}}</h4>
+						<a href="#" ng-click="delete_article(n._id)"><i class="fa fa-times"></i></a>
+					</div>
+					<ul class="news-meta">
+						<li><i class="fa fa-calendar-o"></i> {{n.scrap_date | date:'short'}}</li>
+						<li>Weight: {{n.weight}}</li>
+						<li><i class="fa fa-globe"></i> {{n.source_name}}</li>
+					</ul>
+					<div class="summary">
+						{{n.summary}}
+					</div>
+					<div class="navigation">
+						<div><a ng-href="{{n.url}}" target="_blank"><i class="fa fa-external-link"></i> Visit site</a></div>
+						<div class="read-more"><a ng-click="getArticle(n)"><i class="fa fa-share"></i> Read complete article</a></div>
+					</div>
+					<div class="labels">
+						<i class="fa fa-tags"></i> <div ng-repeat="k in n.kw">{{k}}</div>
+					</div>
+				</section>
+				<div class="pagination">
+					<div class="center">
+						Page: <input type="number" ng-model="curPage" ng-change="changePage(curPage)" ng-model-options='{ debounce: 500 }' ng-blur="changePage(curPage)"> / {{totPages}}
+					</div>
+				</div>
+			</div>
+			<div class="article-wrapper">
+				<div id="news" ng-bind-html="newsArticle"></div>
+			</div>
+			<div style="clear: both"></div>
+		</div>
+			
+			
+		</div>
+	</div>
+

+ 53 - 0
front/sources.html

@@ -0,0 +1,53 @@
+	<div ng-controller="main" class="wrapper">
+		<aside class="sidebar">
+			<div class="row">
+			<div class="col-md-12">
+				Parse source:
+				<input type="text" ng-model="source" class="form-control" placeholder="url">
+				<input type="text" ng-model="sourceName" class="form-control" placeholder="name">
+				<input type="text" ng-model="sourceSelector" class="form-control" placeholder="selector">
+				<input type="number" ng-model="sourceRSS" class="form-control" value=0>
+				<button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,0)">Test</button>
+				<button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,1)">Add</button>
+			</div>
+			</div>
+
+		</aside>
+		<div class="content-wrapper">
+			<div class="news-wrapper">
+				<section ng-repeat="n in news" ng-class-odd="'odd-news'" ng-class-even="'even-news'">
+					<div class="title">
+						<h4>{{n.title}}</h4>
+						<a href="#" ng-click="delete_article(n._id)"><i class="fa fa-times"></i></a>
+					</div>
+					<ul class="news-meta">
+						<li><i class="fa fa-calendar-o"></i> {{n.scrap_date | date:'short'}}</li>
+						<li>Weight: {{n.weight}}</li>
+						<li><i class="fa fa-globe"></i> {{n.source_name}}</li>
+					</ul>
+					<div class="summary">
+						{{n.summary}}
+					</div>
+					<div class="navigation">
+						<div><a ng-href="{{n.url}}" target="_blank"><i class="fa fa-external-link"></i> Visit site</a></div>
+						<div class="read-more"><a ng-click="getArticle(n)"><i class="fa fa-share"></i> Read complete article</a></div>
+					</div>
+					<div class="labels">
+						<i class="fa fa-tags"></i> <div ng-repeat="k in n.kw">{{k}}</div>
+					</div>
+				</section>
+				<div class="pagination">
+					<div class="center">
+						Page: <input type="number" ng-model="curPage" ng-change="changePage(curPage)" ng-model-options='{ debounce: 500 }' ng-blur="changePage(curPage)"> / {{totPages}}
+					</div>
+				</div>
+			</div>
+			<div class="article-wrapper">
+				<div id="news" ng-bind-html="newsArticle"></div>
+			</div>
+			<div style="clear: both"></div>
+		</div>
+			
+			
+		</div>
+	</div>