-v 3ddlmZddlmZddlmZddlZddlZddlZddlZddlm Z ddl m Z de fdZ de fd Zde fd Zd Zd Zd ZdZdS))print_function)division)absolute_importN)UIConfig)FormattedExceptionidc t|}t|dkrdSttd||d}dg}|dgt|zd|}t |t|g|zzt dt||D][}|g}|ttd ||t |t|z\dS) z" Prints data as pure text rNc|dSNrxs ./commons/lib/clquota/utils.pyzprint_text.. 1z%32sz%16szP--------------------------------------------------------------------------------keyc|dSNr r s rrzprint_text.." adr) listkeyslenmapextendjoinprinttuplesorted) datatitlesort_key data_keysfieldsfmt_listfmtitemrows r print_textr,s(TYY[[!!I 9~~ #~~Yq\(:;; < .-rrquoting,z%src|dSrr r s rrzprint_csv..4rr)rrrrcsvwritersysstdout QUOTE_MINIMALrr r!r"rwriterow) r#r$r%r&r'csv_outr)r*r+s r print_csvr:&sTYY[[!!I 9~~ #~~Yq\(:;; < ???G ((D6CKK' ( (C #f yh///f 4]]T$Z8899:::rc ttjdtj|t dddS)z Prints data as json success)result timestampitems quota_showrindentN)r jsondumpstimecheck_quota_show)r#r$r%s r print_jsonrG8sZ $*Y[[&((      rct|tr8ttj|j|j|jdddSttjdt|iddS)zI Prints error in json format that is later used by cl-limits )r=contextdetailsrrAr=N) isinstancerr rCrDmessagerIrJstr)errors rprint_json_errorrODs %+,,  djm}}         dj c%jj      rc*td|zdS)Nz ERROR: %s)r )rLs rprint_text_errorrQUs + !"""""rctjtjtj}|d|gdS)Nr/ERROR)r3r4r5r6 QUOTE_ALLr8)rLr9s rprint_csv_errorrUYs9jS];;;G gw'(((((rcJtddduS)z. Show quota enabled :return: bool showUserInodesUsage inodeLimitsT)r get_paramr rrrFrF^s$ ::   5} E E MMr) __future__rrrrCr5r3rEclcommon.ui_configrclcommonrrMr,r:rGrOrQrUrFr rrr]s!&%%%%%&&&&&& '''''''''''' #    &$ #    "###))) NNNNNr