function fetchHttpInput($http, $module)
 {
     if ($http->hasPostVariable('NewRule_' . self::NOTIFICATION_HANDLER_ID)) {
         eZContentBrowse::browse(array('action_name' => 'AddSubtreeSubscribingNode', 'from_page' => '/notification/settings/'), $module);
     } else {
         if ($http->hasPostVariable('RemoveRule_' . self::NOTIFICATION_HANDLER_ID) and $http->hasPostVariable('SelectedRuleIDArray_' . self::NOTIFICATION_HANDLER_ID)) {
             $user = eZUser::currentUser();
             $userList = eZSubtreeNotificationRule::fetchList($user->attribute('contentobject_id'), false);
             foreach ($userList as $userRow) {
                 $listID[] = $userRow['id'];
             }
             $ruleIDList = $http->postVariable('SelectedRuleIDArray_' . self::NOTIFICATION_HANDLER_ID);
             foreach ($ruleIDList as $ruleID) {
                 if (in_array($ruleID, $listID)) {
                     eZPersistentObject::removeObject(eZSubtreeNotificationRule::definition(), array('id' => $ruleID));
                 }
             }
         } else {
             if ($http->hasPostVariable("BrowseActionName") and $http->postVariable("BrowseActionName") == "AddSubtreeSubscribingNode" and !$http->hasPostVariable('BrowseCancelButton')) {
                 $selectedNodeIDArray = $http->postVariable("SelectedNodeIDArray");
                 $user = eZUser::currentUser();
                 $existingNodes = eZSubtreeNotificationRule::fetchNodesForUserID($user->attribute('contentobject_id'), false);
                 foreach ($selectedNodeIDArray as $nodeID) {
                     if (!in_array($nodeID, $existingNodes)) {
                         $rule = eZSubtreeNotificationRule::create($nodeID, $user->attribute('contentobject_id'));
                         $rule->store();
                     }
                 }
                 //            $Module->redirectTo( "//list/" );
             }
         }
     }
 }