From 389c4e84153893a04310876ef70943cad53ee3e7 Mon Sep 17 00:00:00 2001
From: Frank Karlitschek <frank@owncloud.org>
Date: Wed, 30 Jan 2013 13:39:53 +0100
Subject: [PATCH] mark recommended apps. server part not yet fully implemented

---
 lib/app.php                 | 7 +++++++
 lib/ocsclient.php           | 2 ++
 settings/ajax/apps/ocs.php  | 7 ++++++-
 settings/apps.php           | 2 ++
 settings/css/settings.css   | 3 +++
 settings/templates/apps.php | 3 +--
 6 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/lib/app.php b/lib/app.php
index 52df04e73b..fcf5a65458 100644
--- a/lib/app.php
+++ b/lib/app.php
@@ -620,6 +620,13 @@ class OC_App{
 				$app1[$i]['ocs_id'] = $app['id'];
 				$app1[$i]['internal'] = $app1[$i]['active'] = 0;
 				$app1[$i]['update'] = false;
+				if($app['label']=='recommended'){
+					$app1[$i]['internallabel'] = 'Recommended';
+					$app1[$i]['internalclass'] = 'recommendedapp';
+				}else{
+					$app1[$i]['internallabel'] = '3rd Party';
+					$app1[$i]['internalclass'] = 'externalapp';
+				}
 
 
 				// rating img
diff --git a/lib/ocsclient.php b/lib/ocsclient.php
index 3693078877..09ccb2be15 100644
--- a/lib/ocsclient.php
+++ b/lib/ocsclient.php
@@ -123,6 +123,7 @@ class OC_OCSClient{
 			$app=array();
 			$app['id']=(string)$tmp[$i]->id;
 			$app['name']=(string)$tmp[$i]->name;
+			$app['label']=(string)$tmp[$i]->label;
 			$app['version']=(string)$tmp[$i]->version;
 			$app['type']=(string)$tmp[$i]->typeid;
 			$app['typename']=(string)$tmp[$i]->typename;
@@ -165,6 +166,7 @@ class OC_OCSClient{
 		$app['name']=$tmp->name;
 		$app['version']=$tmp->version;
 		$app['type']=$tmp->typeid;
+		$app['label']=$tmp->label;
 		$app['typename']=$tmp->typename;
 		$app['personid']=$tmp->personid;
 		$app['detailpage']=$tmp->detailpage;
diff --git a/settings/ajax/apps/ocs.php b/settings/ajax/apps/ocs.php
index 6e09785d23..d0205a1ba3 100644
--- a/settings/ajax/apps/ocs.php
+++ b/settings/ajax/apps/ocs.php
@@ -44,6 +44,11 @@ if(is_array($catagoryNames)) {
 			} else {
 				$pre=$app['preview'];
 			}
+			if($app['label']=='recommended') {
+				$label='3rd Party App';
+			} else {
+				$label='Recommended';
+			}
 			$apps[]=array(
 				'name'=>$app['name'],
 				'id'=>$app['id'],
@@ -53,7 +58,7 @@ if(is_array($catagoryNames)) {
 				'license'=>$app['license'],
 				'preview'=>$pre,
 				'internal'=>false,
-				'internallabel'=>'3rd Party App',
+				'internallabel'=>$label,
 				'update'=>false,
 			);
 		}
diff --git a/settings/apps.php b/settings/apps.php
index a2015801e5..e28c8d5a35 100644
--- a/settings/apps.php
+++ b/settings/apps.php
@@ -68,6 +68,7 @@ foreach ( $installedApps as $app ) {
 			$info['internal']=true;
 			
 			$info['internallabel']='Internal App';
+			$info['internalclass']='';
 
 			$info['update']=false;
 		
@@ -76,6 +77,7 @@ foreach ( $installedApps as $app ) {
 			$info['internal']=false;
 			
 			$info['internallabel']='3rd Party App';
+			$info['internalclass']='externalapp';
 
 			$info['update']=OC_Installer::isUpdateAvailable($app);
 		}
diff --git a/settings/css/settings.css b/settings/css/settings.css
index 4d0f6efd2c..0552f42001 100644
--- a/settings/css/settings.css
+++ b/settings/css/settings.css
@@ -50,10 +50,13 @@ li { color:#888; }
 li.active { color:#000; }
 small.externalapp { color:#FFF; background-color:#BBB; font-weight:bold; font-size: 0.6em; margin: 0; padding: 0.1em 0.2em; border-radius: 4px;}
 small.externalapp.list { float: right; }
+small.recommendedapp { color:#FFF; background-color:#888; font-weight:bold; font-size: 0.6em; margin: 0; padding: 0.1em 0.2em; border-radius: 4px;}
+small.recommendedapp.list { float: right; }
 span.version { margin-left:1em; margin-right:1em; color:#555; }
 
 .app { position: relative; display: inline-block; padding: 0.2em 0 0.2em 0 !important; text-overflow: hidden; overflow: hidden; white-space: nowrap; /*transition: .2s max-width linear; -o-transition: .2s max-width linear; -moz-transition: .2s max-width linear; -webkit-transition: .2s max-width linear; -ms-transition: .2s max-width linear;*/ }
 .app.externalapp { max-width: 12.5em; z-index: 100; }
+.app.recommendedapp { max-width: 12.5em; z-index: 100; }
 /* Transition to complete width! */
 .app:hover, .app:active { max-width: inherit; }
 
diff --git a/settings/templates/apps.php b/settings/templates/apps.php
index 8654547ecb..7b5eaea9cd 100644
--- a/settings/templates/apps.php
+++ b/settings/templates/apps.php
@@ -18,7 +18,7 @@
 		<script>
 			appData_<?php echo $app['id'] ?>=<?php OC_JSON::encodedPrint($app, false) ?>;
 		</script>
-		<?php  if(!$app['internal']) echo '<small class="externalapp list">3rd party</small>' ?>
+		<?php  if(!$app['internal']) echo '<small class="'.$app['internalclass'].' list">'.$app['internallabel'].'</small>' ?>
 	</li>
 	<?php endforeach;?>
 </ul>
@@ -31,7 +31,6 @@
 	<p class="appslink hidden"><a href="#" target="_blank"><?php echo $l->t('See application page at apps.owncloud.com');?></a></p>
     <p class="license hidden"><?php echo $l->t('<span class="licence"></span>-licensed by <span class="author"></span>');?></p>
 	<input class="enable hidden" type="submit" />
-	<?php //if(isset($app['update']) ) echo('<input class="update " type="submit" value="'.$l->t('Update').' '.$app['update'].'" />');  ?>
 	<input class="update hidden" type="submit" value="<?php echo($l->t('Update')); ?>" />
 	</div>
 </div>
-- 
GitLab