From 0a2df2254edd25d4f2e499f27c5f0630e60f2614 Mon Sep 17 00:00:00 2001
From: ulrich <undisclosed>
Date: Sat, 31 Mar 2018 21:57:18 +0000
Subject: [PATCH] Feeds berichtigt, Feinschliff fehlt noch

---
 src/java/de/uhilger/filecms/web/FeedServlet.java |   94 +++++++++++++++++++++++++----------------------
 1 files changed, 50 insertions(+), 44 deletions(-)

diff --git a/src/java/de/uhilger/filecms/web/FeedServlet.java b/src/java/de/uhilger/filecms/web/FeedServlet.java
index bf52137..0a02770 100644
--- a/src/java/de/uhilger/filecms/web/FeedServlet.java
+++ b/src/java/de/uhilger/filecms/web/FeedServlet.java
@@ -63,7 +63,7 @@
       logger.fine(pfad.toString());
       File dir = new File(pfad.toString());
       if(dir.isDirectory()) {
-        ArrayList beitraege = new ArrayList();
+        List beitraege = new ArrayList();
         collectFiles(dir, 0, beitraege);
         Iterator i = beitraege.iterator();
         while(i.hasNext()) {
@@ -123,7 +123,7 @@
       });
       Iterator i = dirs.iterator();
       while(i.hasNext() && beitraege.size() < maxBeitraege) {
-        collectFiles((File) i.next(), ++tiefe, beitraege);
+        collectFiles((File) i.next(), tiefe+1, beitraege);
       }
     } 
     if(beitraegeHier.size() > 0) {
@@ -148,57 +148,63 @@
       
       Iterator i = beitraegeHier.iterator();
       while(i.hasNext() && beitraege.size() < maxBeitraege) {
-        beitraege.add(i.next());
+        File bf = (File) i.next();
+        String nm = bf.getName().toLowerCase();
+        if(nm.endsWith(".htmi") || nm.endsWith(".html") || nm.endsWith(".htm") || 
+           nm.endsWith(".jpg") || nm.endsWith(".jpeg") || nm.endsWith(".png") || 
+           nm.endsWith(".txt")) {
+          beitraege.add(bf);
+        }
       }
       
     }
   }
   
   public void writeFeed(String feedTitel, String beschr, ServletOutputStream s, List beitraege, String basis, String pfad) {
-        String copyright = "Copyright (c) 2018 Ulrich Hilger";
-        String title = feedTitel;
-        String description = beschr;
-        String language = "de";
-        String link = "https://www.uhilger.de";
-        Calendar cal = new GregorianCalendar();
-        Date creationDate = cal.getTime();
-        SimpleDateFormat date_format = new SimpleDateFormat(
-                "EEE', 'dd' 'MMM' 'yyyy' 'HH:mm:ss' 'Z", Locale.US);
-        String pubdate = date_format.format(creationDate);
-        Feed rssFeed = new Feed(title, link, description, language,
-                copyright, pubdate);
+    String copyright = "Copyright (c) 2018 Ulrich Hilger";
+    String title = feedTitel;
+    String description = beschr;
+    String language = "de";
+    String link = "https://www.uhilger.de";
+    Calendar cal = new GregorianCalendar();
+    Date creationDate = cal.getTime();
+    SimpleDateFormat date_format = new SimpleDateFormat(
+            "EEE', 'dd' 'MMM' 'yyyy' 'HH:mm:ss' 'Z", Locale.US);
+    String pubdate = date_format.format(creationDate);
+    Feed rssFeed = new Feed(title, link, description, language,
+            copyright, pubdate);
 
-        Iterator i = beitraege.iterator();
-        while(i.hasNext()) {
-            File f = (File) i.next();
-            FeedMessage feedEintrag = new FeedMessage();
-            feedEintrag.setTitle(f.getName());
-            //feedEintrag.setDescription("Beschreibung hier");
-            feedEintrag.setAuthor("ulrich Punkt hilger bei web Punkt de (Ulrich Hilger)");
-            
-            String urlStr = f.getAbsolutePath();
-            urlStr = urlStr.replace(basis, "https://uhilger.de");
-            urlStr = urlStr.replace("www/", "data/");
+    Iterator i = beitraege.iterator();
+    while (i.hasNext()) {
+      File f = (File) i.next();
+      FeedMessage feedEintrag = new FeedMessage();
+      feedEintrag.setTitle(f.getName());
+      //feedEintrag.setDescription("Beschreibung hier");
+      feedEintrag.setAuthor("ulrich Punkt hilger bei web Punkt de (Ulrich Hilger)");
 
-            logger.fine(urlStr);
-            
-            feedEintrag.setGuid(urlStr);
-            feedEintrag.setLink(urlStr);
-            logger.fine(f.getName());
-            feedEintrag.setDescription(readFilePart(f, urlStr));
-            rssFeed.getMessages().add(feedEintrag);
-        }
+      String urlStr = f.getAbsolutePath();
+      urlStr = urlStr.replace(basis, "https://uhilger.de");
+      urlStr = urlStr.replace("www/", "data/");
 
-        RSSStreamFeedWriter writer = new RSSStreamFeedWriter(rssFeed, s);
-        //RSSFeedWriter writer = new RSSFeedWriter(rssFeed, pfad + "/articles.rss");
-        //ByteArrayOutputStream bs = new ByteArrayOutputStream();
-        //RSSByteFeedWriter wr = new RSSByteFeedWriter(rssFeed, bs);
-        try {
-          writer.write();
-          //s.print(bs.toString());
-        } catch (Exception e) {
-          logger.log(Level.SEVERE, e.getMessage(), e);
-        }    
+      logger.fine(urlStr);
+
+      feedEintrag.setGuid(urlStr);
+      feedEintrag.setLink(urlStr);
+      logger.fine(f.getName());
+      feedEintrag.setDescription(readFilePart(f, urlStr));
+      rssFeed.getMessages().add(feedEintrag);
+    }
+
+    RSSStreamFeedWriter writer = new RSSStreamFeedWriter(rssFeed, s);
+    //RSSFeedWriter writer = new RSSFeedWriter(rssFeed, pfad + "/articles.rss");
+    //ByteArrayOutputStream bs = new ByteArrayOutputStream();
+    //RSSByteFeedWriter wr = new RSSByteFeedWriter(rssFeed, bs);
+    try {
+      writer.write();
+      //s.print(bs.toString());
+    } catch (Exception e) {
+      logger.log(Level.SEVERE, e.getMessage(), e);
+    }
   }
   
   private String readFilePart(File f, String urlStr) {

--
Gitblit v1.9.3