diff --git a/features/dateaction.py b/features/dateaction.py
index 169f582..0cb3987 100644
--- a/features/dateaction.py
+++ b/features/dateaction.py
@@ -40,8 +40,7 @@
 TEMPLATE_PATH = framework_constants.TEMPLATE_PATH
 
 
-# TODO: change to FlaskInternalTask when convert to Flask
-class DateActionCron(jsonfeed.InternalTask):
+class DateActionCron(jsonfeed.FlaskInternalTask):
   """Find and process issues with date-type values that arrived today."""
 
   def HandleRequest(self, mr):
@@ -86,11 +85,8 @@
         urls.ISSUE_DATE_ACTION_TASK + '.do', params)
     cloud_tasks_helpers.create_task(task)
 
-  # def GetDateActionCron(self, **kwargs):
-  #   return self.handler(**kwargs)
-
-  # def PostDateActionCron(self, **kwargs):
-  #   return self.handler(**kwargs)
+  def GetDateActionCron(self, **kwargs):
+    return self.handler(**kwargs)
 
 
 def _GetTimestampRange(now):
@@ -234,8 +230,5 @@
     date_str = timestr.TimestampToDateWidgetStr(timestamp)
     return 'The %s date has arrived: %s' % (field.field_name, date_str)
 
-  # def GetIssueDateActionTask(self, **kwargs):
-  #   return self.handler(**kwargs)
-
-  # def PostIssueDateActionTask(self, **kwargs):
-  #   return self.handler(**kwargs)
+  def PostIssueDateActionTask(self, **kwargs):
+    return self.handler(**kwargs)
