| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | 
							- <?php
 
- /**
 
-  * Implements hook_features_export().
 
-  */
 
- function context_features_export($data, &$export, $module_name = '') {
 
-   $pipe = ctools_component_features_export('context', $data, $export, $module_name);
 
-   $contexts = context_load();
 
-   foreach ($data as $identifier) {
 
-     if (isset($contexts[$identifier])) {
 
-       $context = $contexts[$identifier];
 
-       // Conditions.
 
-       // Currently only node and views conditions are supported.
 
-       // @TODO: Should this be delegated to a method on the plugin?
 
-       foreach (array('node', 'views') as $key) {
 
-         if (!empty($context->conditions{$key}['values'])) {
 
-           foreach ($context->conditions{$key}['values'] as $item) {
 
-             // Special pipe for views
 
-             if ($key === 'views') {
 
-               $split = explode(':', $item);
 
-               $view_name = array_shift($split);
 
-               $pipe[$key][$view_name] = $view_name;
 
-             }
 
-             else {
 
-               $pipe[$key][$item] = $item;
 
-             }
 
-           }
 
-         }
 
-       }
 
-       // Reactions.
 
-       if (!empty($context->reactions['block']['blocks'])) {
 
-         foreach ($context->reactions['block']['blocks'] as $block) {
 
-           $block = (array) $block;
 
-           $bid = "{$block['module']}-{$block['delta']}";
 
-           $pipe['block'][$bid] = $bid;
 
-         }
 
-       }
 
-     }
 
-   }
 
-   return $pipe;
 
- }
 
- /**
 
-  * Implements hook_features_revert().
 
-  *
 
-  * @param $module
 
-  * name of module to revert content for
 
-  */
 
- function context_features_revert($module = NULL) {
 
-   $return = ctools_component_features_revert('context', $module);
 
-   context_invalidate_cache();
 
-   return $return;
 
- }
 
 
  |