Index: public_html/sites/all/modules/block_access/block_access.module
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>windows-1252
===================================================================
--- public_html/sites/all/modules/block_access/block_access.module	(revision )
+++ public_html/sites/all/modules/block_access/block_access.module	(revision )
@@ -89,6 +89,15 @@
 function block_access_menu_alter(&$items) {
   $items[BLOCK_ACCESS_BLOCK_ADMIN_PAGE]['access arguments'] = array(BLOCK_ACCESS_BLOCK_ADMIN);
 
+  foreach (list_themes() as $key => $theme) {
+    $items[BLOCK_ACCESS_BLOCK_ADMIN_PAGE . '/list/' . $key]['access arguments'] = array(BLOCK_ACCESS_BLOCK_ADMIN . ' theme ' . $key);
+    unset($items[BLOCK_ACCESS_BLOCK_ADMIN_PAGE . '/list/' . $key]['access callback']);
+    $items[BLOCK_ACCESS_BLOCK_ADMIN_PAGE . '/demo/' . $key]['access arguments'] = array(BLOCK_ACCESS_BLOCK_ADMIN . ' theme ' . $key);
+    unset($items[BLOCK_ACCESS_BLOCK_ADMIN_PAGE . '/demo/' . $key]['access callback']);
+  }
+
+  $items[BLOCK_ACCESS_BLOCK_ADMIN_PAGE]['access arguments'] = array(BLOCK_ACCESS_BLOCK_ADMIN);
+
   $items[BLOCK_ACCESS_MENU_ADD]['access arguments'] = array(BLOCK_ACCESS_CREATE);
 
   $items[BLOCK_ACCESS_MENU_DELETE]['access callback'] = 'block_access_check_delete';
@@ -133,6 +142,12 @@
     BLOCK_ACCESS_ALL_CONFIG_ROLE => array('title' => t(ucfirst(BLOCK_ACCESS_ALL_CONFIG_ROLE))),
     BLOCK_ACCESS_ALL_CONFIG_PAGE => array('title' => t(ucfirst(BLOCK_ACCESS_ALL_CONFIG_PAGE))),
   );
+
+
+  foreach (list_themes() as $key => $theme) {
+    $access[BLOCK_ACCESS_BLOCK_ADMIN . ' theme ' . $key] = array('title' => t(ucfirst(BLOCK_ACCESS_BLOCK_ADMIN . ' theme ' . $key)));
+  }
+
   // The content type visibility settings only gets added if the node module is enabled.
   // I'm not sure who uses drupal without node enabled but it's possible...
   if (module_exists('node')) {
