Преглед на файлове

Few fixes about statistics

Marien Fressinaud преди 11 години
родител
ревизия
55843ff7a5
променени са 9 файла, в които са добавени 54 реда и са изтрити 16 реда
  1. 1 0
      app/Models/StatsDAO.php
  2. 1 0
      app/Models/Themes.php
  3. 1 1
      app/i18n/de.php
  4. 1 1
      app/i18n/en.php
  5. 1 1
      app/i18n/fr.php
  6. 13 10
      app/views/configure/feed.phtml
  7. 3 1
      app/views/stats/idle.phtml
  8. 2 2
      app/views/stats/repartition.phtml
  9. 31 0
      p/themes/icons/stats.svg

+ 1 - 0
app/Models/StatsDAO.php

@@ -315,6 +315,7 @@ SQL;
 SELECT MAX(f.id) as id
 , MAX(f.name) AS name
 , MAX(date) AS last_date
+, COUNT(*) AS nb_articles
 FROM {$this->prefix}feed AS f,
 {$this->prefix}entry AS e
 WHERE f.id = e.id_feed

+ 1 - 0
app/Models/Themes.php

@@ -96,6 +96,7 @@ class FreshRSS_Themes extends Minz_Model {
 			'search' => '🔍',
 			'share' => '♺',
 			'starred' => '★',
+			'stats' => '%',
 			'tag' => '⚐',
 			'up' => '△',
 			'view-normal' => '☰',

+ 1 - 1
app/i18n/de.php

@@ -150,7 +150,7 @@ return array (
 	'website_url'			=> 'Webseiten-Adresse URL',
 	'feed_url'			=> 'Feed URL',
 	'articles'			=> 'Artikel',
-	'number_articles'		=> 'Anzahl der Artikel',
+	'number_articles'		=> '%d Artikel',
 	'by_feed'			=> 'per Feed',
 	'by_default'			=> 'Als Vorgabe',
 	'keep_history'			=> 'Kleinste Anzahl der Artikel, die behalten werden',

+ 1 - 1
app/i18n/en.php

@@ -215,7 +215,7 @@ return array (
 	'website_url'			=> 'Website URL',
 	'feed_url'			=> 'Feed URL',
 	'articles'			=> 'articles',
-	'number_articles'		=> 'Number of articles',
+	'number_articles'		=> '%d articles',
 	'by_feed'			=> 'by feed',
 	'by_default'			=> 'By default',
 	'keep_history'			=> 'Minimum number of articles to keep',

+ 1 - 1
app/i18n/fr.php

@@ -215,7 +215,7 @@ return array (
 	'website_url'			=> 'URL du site',
 	'feed_url'			=> 'URL du flux',
 	'articles'			=> 'articles',
-	'number_articles'		=> 'Nombre d’articles',
+	'number_articles'		=> '%d articles',
 	'by_feed'			=> 'par flux',
 	'by_default'			=> 'Par défaut',
 	'keep_history'			=> 'Nombre minimum d’articles à conserver',

+ 13 - 10
app/views/configure/feed.phtml

@@ -70,6 +70,13 @@
 				</label>
 			</div>
 		</div>
+		<div class="form-group">
+			<div class="group-controls">
+				<a class="" href="<?php echo _url('stats', 'repartition', 'id', $this->flux->id()); ?>">
+					<?php echo _i('stats'); ?> <?php echo _t('stats'); ?>
+				</a>
+			</div>
+		</div>
 		<div class="form-group form-actions">
 			<div class="group-controls">
 				<button class="btn btn-important"><?php echo Minz_Translate::t ('save'); ?></button>
@@ -80,17 +87,13 @@
 		<legend><?php echo Minz_Translate::t ('archiving_configuration'); ?></legend>
 
 		<div class="form-group">
-			<label class="group-name"></label>
-			<div class="group-controls">
-				<a class="btn" href="<?php echo _url ('feed', 'actualize', 'id', $this->flux->id ()); ?>">
-					<?php echo FreshRSS_Themes::icon('refresh'); ?> <?php echo Minz_Translate::t('actualize'); ?>
-				</a>
-			</div>
-		</div>
-		<div class="form-group">
-			<label class="group-name"><?php echo Minz_Translate::t ('number_articles'); ?></label>
 			<div class="group-controls">
-				<span class="control"><?php echo $nbEntries; ?></span>
+				<div class="stick">
+					<input type="text" value="<?php echo _t('number_articles', $nbEntries); ?>" disabled="disabled" />
+					<a class="btn" href="<?php echo _url('feed', 'actualize', 'id', $this->flux->id ()); ?>">
+						<?php echo _i('refresh'); ?> <?php echo _t('actualize'); ?>
+					</a>
+				</div>
 			</div>
 		</div>
 		<div class="form-group">

+ 3 - 1
app/views/stats/idle.phtml

@@ -23,7 +23,9 @@
 						<button class="btn btn-attention confirm" form="form-delete" formaction="<?php echo _url('feed', 'delete', 'id', $feed['id']); ?>"><?php echo _t('delete'); ?></button>
 					</div>
 				</li>
-				<li class="item"><span title="<?php echo timestamptodate($feed['last_date'], false); ?>"><?php echo $feed['name']; ?></span></li>
+				<li class="item">
+					<span title="<?php echo timestamptodate($feed['last_date'], false); ?>"><?php echo $feed['name']; ?> (<?php echo _t('number_articles', $feed['nb_articles']); ?>)</span>
+				</li>
 			</ul>
 			<?php } ?>
 		</div>

+ 2 - 2
app/views/stats/repartition.phtml

@@ -24,8 +24,8 @@
 	</select>
 
 	<?php if ($this->feed) {?>
-		<a href="<?php echo _url('configure', 'feed', 'id', $this->feed->id()); ?>">
-			<?php echo _t('administration'); ?>
+		<a class="btn" href="<?php echo _url('configure', 'feed', 'id', $this->feed->id()); ?>">
+			<?php echo _i('configure'); ?> <?php echo _t('administration'); ?>
 		</a>
 	<?php }?>
 

+ 31 - 0
p/themes/icons/stats.svg

@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:svg='http://www.w3.org/2000/svg' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' id='svg7384' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' version='1.1' inkscape:version='0.47 r22583' height='16' sodipodi:docname='utilities-system-monitor-symbolic.svg' xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns='http://www.w3.org/2000/svg' width='16'>
+  <metadata id='metadata90'>
+    <rdf:RDF>
+      <cc:Work rdf:about=''>
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
+        <dc:title>Gnome Symbolic Icon Theme</dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <sodipodi:namedview inkscape:object-paths='true' inkscape:cy='-218.16054' inkscape:current-layer='layer11' inkscape:window-width='1920' pagecolor='#555753' showborder='false' showguides='true' inkscape:snap-nodes='false' objecttolerance='10' showgrid='true' inkscape:object-nodes='true' inkscape:pageshadow='2' inkscape:guide-bbox='true' inkscape:window-x='0' inkscape:snap-bbox='true' bordercolor='#666666' id='namedview88' inkscape:window-maximized='1' inkscape:snap-global='true' inkscape:window-y='26' gridtolerance='10' inkscape:zoom='1' inkscape:window-height='1021' borderopacity='1' guidetolerance='10' inkscape:snap-bbox-midpoints='false' inkscape:cx='-84.56688' inkscape:bbox-paths='false' inkscape:snap-grids='true' inkscape:pageopacity='1' inkscape:snap-to-guides='true'>
+    <inkscape:grid visible='true' spacingx='1px' type='xygrid' spacingy='1px' id='grid4866' empspacing='2' enabled='true' snapvisiblegridlinesonly='true'/>
+  </sodipodi:namedview>
+  <title id='title9167'>Gnome Symbolic Icon Theme</title>
+  <defs id='defs7386'/>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='layer9' inkscape:label='status' style='display:inline'/>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='layer10' inkscape:label='devices'/>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='layer11' inkscape:label='apps'>
+    <path d='M 144.1875,490 C 142.98238,490 142,491.01794 142,492.21875 l 0,10.5625 c 0,1.20081 0.98238,2.21875 2.1875,2.21875 l 11.625,0 c 1.20512,0 2.1875,-1.01794 2.1875,-2.21875 l 0,-10.5625 C 158,491.01794 157.01762,490 155.8125,490 l -11.625,0 z m 0,2 11.625,0 c 0.12026,0 0.1875,0.08 0.1875,0.21875 l 0,10.5625 C 156,502.91996 155.93276,503 155.8125,503 l -11.625,0 c -0.12026,0 -0.1875,-0.08 -0.1875,-0.21875 l 0,-10.5625 C 144,492.08004 144.06724,492 144.1875,492 z' id='rect11749-5-0' style='font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#bebebe;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans'/>
+    
+    <path d='m 151.3125,493.96875 a 0.50005,0.50005 0 0 0 -0.34375,0.34375 l -1.6875,6.09375 -0.875,-1.1875 A 0.50005,0.50005 0 0 0 148,499 l -2.5,0 -0.5,0 0,1 0.5,0 2.25,0 1.3125,1.78125 a 0.50005,0.50005 0 0 0 0.875,-0.15625 l 1.53125,-5.4375 1.0625,3.46875 A 0.50005,0.50005 0 0 0 153,500 l 1.5,0 0.5,0 0,-1 -0.5,0 -1.125,0 -1.4375,-4.6875 a 0.50005,0.50005 0 0 0 -0.625,-0.34375 z' id='path3643' style='font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans'/>
+  </g>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='layer12' inkscape:label='actions'/>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='layer13' inkscape:label='places'/>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='layer14' inkscape:label='mimetypes'/>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='layer15' inkscape:label='emblems' style='display:inline'/>
+  <g transform='translate(-142,-490)' inkscape:groupmode='layer' id='g4953' inkscape:label='categories' style='display:inline'/>
+</svg>