diff --git a/app/common/directives/toggle-flag.js b/app/common/directives/toggle-flag.js
index 008097c..6ac5fff 100644
--- a/app/common/directives/toggle-flag.js
+++ b/app/common/directives/toggle-flag.js
@@ -1,29 +1,31 @@
 window.angular && (function(angular) {
   'use strict';
 
-  angular.module('app.common.directives')
-      .directive('toggleFlag', function($document) {
-        return {
-          restrict: 'A',
-          link: function(scope, element, attrs) {
-            function elementClick(e) {
-              e.stopPropagation();
-            }
-
-            function documentClick(e) {
-              scope[attrs.toggleFlag] = false;
-              scope.$apply();
-            }
-
-            element.on('click', elementClick);
-            $document.on('click', documentClick);
-
-            // remove event handlers when directive is destroyed
-            scope.$on('$destroy', function() {
-              element.off('click', elementClick);
-              $document.off('click', documentClick);
-            });
+  angular.module('app.common.directives').directive('toggleFlag', [
+    '$document',
+    function($document) {
+      return {
+        restrict: 'A',
+        link: function(scope, element, attrs) {
+          function elementClick(e) {
+            e.stopPropagation();
           }
-        };
-      });
+
+          function documentClick(e) {
+            scope[attrs.toggleFlag] = false;
+            scope.$apply();
+          }
+
+          element.on('click', elementClick);
+          $document.on('click', documentClick);
+
+          // remove event handlers when directive is destroyed
+          scope.$on('$destroy', function() {
+            element.off('click', elementClick);
+            $document.off('click', documentClick);
+          });
+        }
+      };
+    }
+  ]);
 })(window.angular);
