root/dev/common/feed.php @ 170

Revision 170, 3.0 KB (checked in by liq, 14 years ago)

fliq's feed syndication mod 1.4

Line 
1<?php
2        //////
3//////  //////
4//////  liq's feed syndication mod v1.4
5////////////
6////////////
7////////////
8////////////
9 
10
11@set_time_limit(0);
12require_once("class.corp.php");
13require_once("class.alliance.php");
14require_once("class.killlist.php");
15require_once("class.kill.php");
16require_once("db.php");
17require_once("globals.php");
18
19  $html .= "<rss version=\"2.0\">
20        <channel>
21        <title>" . KB_TITLE . "</title>
22        <link>http://" . KB_HOST . "</link>
23        <description>Kill Feed v1.4</description>
24        <copyright>" . KB_TITLE . "</copyright>\n";
25 
26  $klist = new KillList();
27  $klist->setPodsNoobShips(true);
28 
29  if ($_GET['week'])
30  {
31      $klist->setWeek($_GET['week']);
32  }
33  elseif (!$_GET['lastkllid'])
34  {
35      $klist->setWeek(date("W"));
36  }
37 
38  if ($_GET['year'])
39  {
40      $klist->setYear($_GET['year']);
41  }
42  elseif (!$_GET['lastkllid'])
43  {
44      $klist->setYear(date("Y"));
45  }   
46 
47  if ($_GET['lastkllid'] && method_exists($klist, 'setMinKllID'))
48  {
49          $klist->setMinKllID($_GET['lastkllid']);
50  }
51 
52  if ($_GET['corp'] || $_GET['corp_name'])
53  {
54      if ($_GET['corp'])
55      {
56          $c = $_GET['corp'];
57      }
58      if ($_GET['corp_name'])
59      {
60          $c = $_GET['corp_name'];
61      }
62      $corp = new Corporation();
63      $corp->lookup(urldecode($c));
64  }
65 
66  if ($_GET['alli'] || $_GET['alliance_name'])
67  {
68      if ($_GET['alli'])
69      {
70          $a = $_GET['alli'];
71      }
72      if ($_GET['alliance_name'])
73      {
74          $a = $_GET['alliance_name'];
75      }
76      $alli = new Alliance();
77      $alli->add(urldecode($a));
78  }
79 
80  if ($_GET['losses'])
81  {
82      if (CORP_ID) //local
83      {
84          $klist->addVictimCorp(new Corporation(CORP_ID));
85      }
86      if (ALLIANCE_ID) //local
87      {
88          $klist->addVictimAlliance(new Alliance(ALLIANCE_ID));
89      }
90      if ($corp && !$_GET['friend']) //remote
91      {
92          $klist->addInvolvedCorp($corp);
93      }
94      if ($alli && !$_GET['friend']) //remote
95      {
96          $klist->addInvolvedAlliance($alli);
97      }
98  }
99  else
100  {
101      if (CORP_ID) //local
102      {
103          $klist->addInvolvedCorp(new Corporation(CORP_ID));
104      }
105      if (ALLIANCE_ID) //local
106      {
107          $klist->addInvolvedAlliance(new Alliance(ALLIANCE_ID));
108      }
109      if ($corp && !$_GET['friend']) //remote
110      {
111          $klist->addVictimCorp($corp);
112      }
113      if ($alli && !$_GET['friend']) //remote
114      {
115          $klist->addVictimAlliance($alli);
116      }
117  }
118 
119  $kills = array();
120  while ($kill = $klist->getKill())
121  {
122      $kills[$kill->getID()] = $kill->getTimestamp();
123  }
124  asort($kills);
125 
126  foreach ($kills as $id => $timestamp)
127  {
128      $kill = new Kill($id);
129      $html .= "<item>
130                                <title>" . $id . "</title>
131                                <description><![CDATA[ " . $kill->getRawMail() . " ]]></description>
132                                <guid>?a=kill_detail&amp;kll_id=" . $id . "</guid>
133                                <pubDate>" . strftime("%a, %d %b %Y %T %Z", strtotime($timestamp)) . "</pubDate>
134                                </item>\n";
135  }
136 
137  $html .= "</channel></rss>";
138 
139  if ($_GET['gz'])
140  {
141      echo gzdeflate($html, 9);
142  }
143  else
144  {
145      echo $html;
146  }
147?>
148
Note: See TracBrowser for help on using the browser.