aboutsummaryrefslogtreecommitdiffstats
path: root/datamaps/api
diff options
context:
space:
mode:
Diffstat (limited to 'datamaps/api')
-rw-r--r--datamaps/api/__init__.py1
-rw-r--r--datamaps/api/api.py24
2 files changed, 25 insertions, 0 deletions
diff --git a/datamaps/api/__init__.py b/datamaps/api/__init__.py
index 3f6a35c..947f8a6 100644
--- a/datamaps/api/__init__.py
+++ b/datamaps/api/__init__.py
@@ -1 +1,2 @@
from .api import project_data_from_master_api as project_data_from_master
+from .api import project_data_from_master_month_api as project_data_from_master_month
diff --git a/datamaps/api/api.py b/datamaps/api/api.py
index 6cc6f4e..c9f9a64 100644
--- a/datamaps/api/api.py
+++ b/datamaps/api/api.py
@@ -13,3 +13,27 @@ def project_data_from_master_api(master_file: str, quarter: int, year: int):
"""
m = Master(Quarter(quarter, year), master_file)
return m
+
+def project_data_from_master_month_api(master_file: str, month: int, year: int):
+ """Create a Master object directly without the need to explicitly pass
+ a Month object.
+
+ Args:
+ master_file (str): the path to a master file
+ month (int): an integer representing the month
+ year (int): an integer representing the year
+ """
+ # we need to work out what Quarter we are dealing with from the month
+ if month in [1, 2, 3]:
+ quarter = 4
+ elif month in [4, 5, 6]:
+ quarter = 1
+ elif month in [7, 8, 9]:
+ quarter = 2
+ elif month in [10, 11, 12]:
+ quarter = 3
+ else:
+ pass
+ # TODO: raise exception here
+ m = Master(Quarter(quarter, year), master_file)
+ return m