|
@@ -20,6 +20,7 @@ class RouteCollection
|
|
|
public $_groupIn = false;
|
|
public $_groupIn = false;
|
|
|
public $_groupBase = '';
|
|
public $_groupBase = '';
|
|
|
public $_groupList = [];
|
|
public $_groupList = [];
|
|
|
|
|
+ public $_groups = [];
|
|
|
|
|
|
|
|
|
|
|
|
|
//SINGLETON==============================================
|
|
//SINGLETON==============================================
|
|
@@ -197,7 +198,7 @@ class RouteCollection
|
|
|
*
|
|
*
|
|
|
* @ctag RouteCollection::group('base',function(){})
|
|
* @ctag RouteCollection::group('base',function(){})
|
|
|
*/
|
|
*/
|
|
|
- static function group($base = '', $callback)
|
|
|
|
|
|
|
+ static function group($base = '', $callback, $name = '')
|
|
|
{
|
|
{
|
|
|
$collection = self::getInstance();
|
|
$collection = self::getInstance();
|
|
|
$collection->_groupList = [];
|
|
$collection->_groupList = [];
|
|
@@ -206,7 +207,9 @@ class RouteCollection
|
|
|
call_user_func($callback);
|
|
call_user_func($callback);
|
|
|
$collection->_groupBase = '';
|
|
$collection->_groupBase = '';
|
|
|
$collection->_groupIn = false;
|
|
$collection->_groupIn = false;
|
|
|
- return new RouteGroup($collection->_groupList);
|
|
|
|
|
|
|
+ $group = new RouteGroup($collection->_groupList);
|
|
|
|
|
+ $collection->_groups[$name] = $group;
|
|
|
|
|
+ return $group;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//DEFINITORS=============================================
|
|
//DEFINITORS=============================================
|
|
@@ -355,4 +358,19 @@ class RouteCollection
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ public static function getGroupRoutesWithTags($group, $tag = '*')
|
|
|
|
|
+ {
|
|
|
|
|
+ $instance = self::getInstance();
|
|
|
|
|
+
|
|
|
|
|
+ if (!isset($instance->_groups[$group])) {
|
|
|
|
|
+ return [];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (!isset($tag)) {
|
|
|
|
|
+ return $instance->_groups[$group];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return $instance->_groups[$group]->getRoutesWithTag($group, $tag);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|