diff --git a/src/gam/gamlib/glcfg.py b/src/gam/gamlib/glcfg.py index 227473ef..d22f3542 100644 --- a/src/gam/gamlib/glcfg.py +++ b/src/gam/gamlib/glcfg.py @@ -131,6 +131,8 @@ CSV_OUTPUT_ROW_DROP_FILTER = 'csv_output_row_drop_filter' CSV_OUTPUT_ROW_DROP_FILTER_MODE = 'csv_output_row_drop_filter_mode' # Limit number of output rows CSV_OUTPUT_ROW_LIMIT = 'csv_output_row_limit' +# Output sort headers +CSV_OUTPUT_SORT_HEADERS = 'csv_output_sort_headers' # Column header subfield name delimiter in CSV output file CSV_OUTPUT_SUBFIELD_DELIMITER = 'csv_output_subfield_delimiter' # Add timestamp column to CSV output file @@ -350,6 +352,7 @@ Defaults = { CSV_OUTPUT_ROW_DROP_FILTER: '', CSV_OUTPUT_ROW_DROP_FILTER_MODE: 'anymatch', CSV_OUTPUT_ROW_LIMIT: '0', + CSV_OUTPUT_SORT_HEADERS: '', CSV_OUTPUT_SUBFIELD_DELIMITER: '.', CSV_OUTPUT_TIMESTAMP_COLUMN: '', CSV_OUTPUT_USERS_AUDIT: FALSE, @@ -454,6 +457,7 @@ TYPE_LOCALE = 'locl' TYPE_PASSWORD = 'pass' TYPE_ROWFILTER = 'rowf' TYPE_STRING = 'stri' +TYPE_STRINGLIST = 'strl' TYPE_TIMEZONE = 'tmzn' VAR_TYPE = 'type' @@ -508,6 +512,7 @@ VAR_INFO = { CSV_OUTPUT_ROW_DROP_FILTER: {VAR_TYPE: TYPE_ROWFILTER}, CSV_OUTPUT_ROW_DROP_FILTER_MODE: {VAR_TYPE: TYPE_CHOICE, VAR_CHOICES: {'allmatch': True, 'anymatch': False}}, CSV_OUTPUT_ROW_LIMIT: {VAR_TYPE: TYPE_INTEGER, VAR_LIMITS: (0, None)}, + CSV_OUTPUT_SORT_HEADERS: {VAR_TYPE: TYPE_STRINGLIST}, CSV_OUTPUT_SUBFIELD_DELIMITER: {VAR_TYPE: TYPE_CHARACTER}, CSV_OUTPUT_TIMESTAMP_COLUMN: {VAR_TYPE: TYPE_STRING, VAR_LIMITS: (0, None)}, CSV_OUTPUT_USERS_AUDIT: {VAR_TYPE: TYPE_BOOLEAN}, diff --git a/src/gam/gamlib/glglobals.py b/src/gam/gamlib/glglobals.py index b33d54ab..4e42a37b 100644 --- a/src/gam/gamlib/glglobals.py +++ b/src/gam/gamlib/glglobals.py @@ -81,6 +81,8 @@ CSV_OUTPUT_ROW_FILTER_MODE = 'corm' CSV_OUTPUT_ROW_LIMIT = 'corl' # Add timestamp column to CSV output file CSV_OUTPUT_TIMESTAMP_COLUMN = 'csv_output_timestamp_column' +# Output sort headers +CSV_OUTPUT_SORT_HEADERS = 'cosh' # CSV todrive options CSV_TODRIVE = 'todr' # Current API services @@ -236,6 +238,7 @@ Globals = { CSV_OUTPUT_ROW_FILTER: [], CSV_OUTPUT_ROW_FILTER_MODE: True, CSV_OUTPUT_ROW_LIMIT: 0, + CSV_OUTPUT_SORT_HEADERS: [], CSV_OUTPUT_TIMESTAMP_COLUMN: None, CSV_TODRIVE: {}, CURRENT_API_SERVICES: {}, diff --git a/src/gam/gamlib/glmsgs.py b/src/gam/gamlib/glmsgs.py index ee26f725..2ccda24c 100644 --- a/src/gam/gamlib/glmsgs.py +++ b/src/gam/gamlib/glmsgs.py @@ -150,6 +150,7 @@ API_CALLS_RETRY_DATA = 'API calls retry data\n' API_CHECK_CLIENT_AUTHORIZATION = 'Please make sure the Client ID: {0} is authorized for the appropriate API or scopes:\n{1}\n\nRun: gam oauth create\n' API_CHECK_SVCACCT_AUTHORIZATION = 'Please make sure the Service Account Client name: {0} is authorized for the appropriate API or scopes:\n{1}\n\nRun: gam user {2} check serviceaccount\n' API_ERROR_SETTINGS = 'API error, some settings not set' +ARE_BOTH_REQUIRED = 'Arguments {0} and {1} are both required' ARE_MUTUALLY_EXCLUSIVE = 'Arguments {0} and {1} are mutually exclusive' AS = 'as' ATTENDEES_ADD = 'Add Attendees'