index.html 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <!DOCTYPE html>
  2. <html ng-app="app">
  3. <head>
  4. <!-- Latest compiled and minified CSS -->
  5. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
  6. <!-- Optional theme -->
  7. <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" integrity="sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r" crossorigin="anonymous">
  8. <link rel="stylesheet" href="style.css">
  9. <!-- Latest compiled and minified JavaScript -->
  10. <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
  11. <link rel="stylesheet" type="text/css" href="js/ng-tags-input.min.css">
  12. <link rel="stylesheet" type="text/css" href="js/ng-tags-input.bootstrap.min.css">
  13. <link rel="stylesheet" href="font-awesome-4.6.3/css/font-awesome.min.css">
  14. <link rel="stylesheet" href="style.css">
  15. <script src="js/angular.min.js"></script>
  16. <script src="js/ng-tags-input.min.js"></script>
  17. <script src="js/app.js"></script>
  18. </head>
  19. <body>
  20. <div ng-controller="main" class="wrapper">
  21. <aside class="sidebar">
  22. <form class="filter">
  23. <ul>
  24. <li>
  25. <div class="profile">
  26. <p><i class="fa fa-user"></i> David Ventura</p>
  27. <a href="#">Logout</a>
  28. </div>
  29. </li>
  30. <li>
  31. <h3><i class="fa fa-filter"></i> Filter</h3>
  32. </li>
  33. <li>
  34. <label for="site">Site</label>
  35. <input ng-model="site" type="text">
  36. </li>
  37. <li>
  38. <label for="mindate">Min date (YYYY-MM-DD)</label>
  39. <input ng-model="mindate" type="text">
  40. </li>
  41. <li>
  42. <label for="mindate">Max date (YYYY-MM-DD)</label>
  43. <input ng-model="maxdate" type="text">
  44. </li>
  45. <li>
  46. <label for="mindate">Keyword</label>
  47. <tags-input ng-model="selected_kw" add-on-paste="true" add-from-autocomplete-only="true" replace-spaces-with-dashes="false">
  48. <auto-complete source="filtered($query)"></auto-complete>
  49. </tags-input>
  50. </li>
  51. <li>
  52. <label for="mindate">Min weight</label>
  53. <input ng-model="minweight" type="text">
  54. </li>
  55. <li class="">
  56. <button ng-click="filter()">Filter</button>
  57. </li>
  58. </ul>
  59. </form>
  60. </aside>
  61. <div class="content-wrapper">
  62. <div class="news-wrapper">
  63. <section ng-repeat="n in news" ng-class-odd="'odd-news'" ng-class-even="'even-news'">
  64. <h4>{{n.title}}</h4>
  65. <ul class="news-meta">
  66. <li><i class="fa fa-calendar-o"></i> {{n.scrap_date | date:'short'}}</li>
  67. <li>Weight: {{n.weight}}</li>
  68. <li><i class="fa fa-globe"></i> {{n.source_name}}</li>
  69. </ul>
  70. <div class="summary">
  71. {{n.summary}}
  72. </div>
  73. <div>
  74. <div><a ng-href="{{n.url}}" target="_blank">Visit site</a></div>
  75. <div><a ng-click="getArticle(n)">Read complete article</a></div>
  76. </div>
  77. <div>
  78. Keyword(s): {{n.kw.join(", ")}}
  79. </div>
  80. </section>
  81. </div>
  82. <div class="article-wrapper">
  83. <div id="news" ng-bind-html="newsArticle"></div>
  84. </div>
  85. <div style="clear: both"></div>
  86. </div>
  87. </div>
  88. </div>
  89. <!-- <div class="row">
  90. <div class="col-md-12">
  91. Parse source:
  92. <input type="text" ng-model="source" class="form-control" placeholder="url">
  93. <input type="text" ng-model="sourceName" class="form-control" placeholder="name">
  94. <input type="text" ng-model="sourceSelector" class="form-control" placeholder="selector">
  95. <input type="number" ng-model="sourceRSS" class="form-control" value=0>
  96. <button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,0)">Test</button>
  97. <button class="btn btn-default" ng-click="parseSource(source,sourceName,sourceSelector,sourceRSS,1)">Add</button>
  98. </div>
  99. </div> -->
  100. </body>
  101. </html>