diff --git a/domain_adv.module b/domain_adv.module
index fded9a3..144c430 100644
--- a/domain_adv.module
+++ b/domain_adv.module
@@ -12,6 +12,10 @@
 function domain_adv_menu_alter(&$callbacks) {
   foreach (array('node/%node', 'node/%node/edit', 'node/%node/delete') as $path) {
     $callbacks[$path]['access callback'] = 'domain_adv_node_access';
+    // Add in access arguments to callbacks for each node operation as empty or wrong $op values are sometimes otherwise passed
+    $callbacks['node/%node']['access arguments'] = array('view', 1); 
+    $callbacks['node/%node/edit']['access arguments'] = array('update', 1); 
+    $callbacks['node/%node/delete']['access arguments'] = array('delete', 1); 
   }
 }
 
@@ -63,6 +67,10 @@ function domain_adv_node_access($op, $node) {
       return FALSE;
     }
   }
+  // Respect OG's node_access if OG is installed
+  if (module_exists('og') && $op == 'update') {
+    return og_menu_access_node_edit($node);
+  }
   return node_access($op, $node);
 }
 
