You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shindig.apache.org by ch...@apache.org on 2008/05/23 15:02:54 UTC
svn commit: r659526 - in /incubator/shindig/trunk/php/src/gadgets:
JsFeatureLoader.php JsLibrary.php
Author: chabotc
Date: Fri May 23 06:02:53 2008
New Revision: 659526
URL: http://svn.apache.org/viewvc?rev=659526&view=rev
Log:
Features seem to be broken since we have the opensocial-0.8, -current etc... part 1 of 2 to fix it (and some debugging message, will be removed aaap)
Modified:
incubator/shindig/trunk/php/src/gadgets/JsFeatureLoader.php
incubator/shindig/trunk/php/src/gadgets/JsLibrary.php
Modified: incubator/shindig/trunk/php/src/gadgets/JsFeatureLoader.php
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/gadgets/JsFeatureLoader.php?rev=659526&r1=659525&r2=659526&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/gadgets/JsFeatureLoader.php (original)
+++ incubator/shindig/trunk/php/src/gadgets/JsFeatureLoader.php Fri May 23 06:02:53 2008
@@ -37,13 +37,27 @@
return $entries;
}
+ private function sortFeaturesFiles($feature1, $feature2)
+ {
+ $feature1 = basename(str_replace('/feature.xml','', $feature1));
+ $feature2 = basename(str_replace('/feature.xml','', $feature2));
+ if ($feature1 == $feature2) {
+ return 0;
+ }
+ return ($feature1 < $feature2) ? -1 : 1;
+ }
+
private function loadFiles($path, &$features)
{
- foreach (glob("$path/*") as $file) {
- $file = realpath($file.'/feature.xml');
- if (file_exists($file) && is_readable($file)) {
- $feature = $this->processFile($file);
- if ($feature != null) {
+ $featuresFile = $path.'/features.txt';
+ if (file_exists($featuresFile) && is_readable($featuresFile)) {
+ $files = explode("\n", file_get_contents($featuresFile));
+ // custom sort, else core.io seems to bubble up before core, which breaks the dep chain order
+ usort($files, array($this,'sortFeaturesFiles'));
+ foreach ($files as $file) {
+ if (!empty($file) && strpos($file, 'feature.xml') !== false && substr($file, 0, 1) != '#' && substr($file, 0, 2) != '//') {
+ $file = realpath($path.'/../'.$file);
+ $feature = $this->processFile($file);
$features[$feature->name] = $feature;
}
}
@@ -56,7 +70,7 @@
$feature = null;
if (file_exists($file) && is_file($file) && is_readable($file)) {
if (($content = @file_get_contents($file))) {
- $feature = $this->parse($content, dirname($file) . '/');
+ $feature = $this->parse($content, dirname($file));
}
}
return $feature;
Modified: incubator/shindig/trunk/php/src/gadgets/JsLibrary.php
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/gadgets/JsLibrary.php?rev=659526&r1=659525&r2=659526&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/gadgets/JsLibrary.php (original)
+++ incubator/shindig/trunk/php/src/gadgets/JsLibrary.php Fri May 23 06:02:53 2008
@@ -55,7 +55,9 @@
}
$this->loaded = true;
}
- return $this->content;
+ //FIXME purely for debugging, remove this asap!
+ // puts a //LIB: <name of feature> above the JS of the feature
+ return "\n\n//LIB: ".$this->featureName."\n".$this->content;
}
public function getFeatureName()