Skip to content

Commit 1684b9c

Browse files
authored
Merge pull request #11 from barbossa/master
Moved sign params logic to separate method
2 parents 06115c6 + 736867f commit 1684b9c

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed

liqpay/liqpay.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ def cnb_form(self, params):
9898
currency=currency if currency != 'RUR' else 'RUB',
9999
sandbox=int(bool(params.get('sandbox')))
100100
)
101-
params_templ = {'data': self.cnb_data(params)}
101+
params_templ = {'data': self.data_to_sign(params)}
102102
params_templ['signature'] = self._make_signature(self._private_key, params_templ['data'], self._private_key)
103103
form_action_url = urljoin(self._host, '3/checkout/')
104104
format_input = lambda k, v: self.INPUT_TEMPLATE.format(name=k, value=to_unicode(v))
@@ -112,12 +112,15 @@ def cnb_form(self, params):
112112
def cnb_signature(self, params):
113113
params = self._prepare_params(params)
114114

115-
data_to_sign = self.cnb_data(params)
115+
data_to_sign = self.data_to_sign(params)
116116
return self._make_signature(self._private_key, data_to_sign, self._private_key)
117117

118118
def cnb_data(self, params):
119119
params = self._prepare_params(params)
120-
return base64.b64encode(json.dumps(params))
120+
return self.data_to_sign(params)
121121

122122
def str_to_sign(self, str):
123123
return base64.b64encode(hashlib.sha1(str).digest())
124+
125+
def data_to_sign(self, params):
126+
return base64.b64encode(json.dumps(params))

liqpay/liqpay3.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ def cnb_form(self, params):
8282
sandbox=int(bool(params.get("sandbox")))
8383
)
8484

85-
encoded_data = self.cnb_data(params)
85+
encoded_data = self.data_to_sign(params)
8686
params_templ = {"data": encoded_data}
8787

8888
params_templ["signature"] = self._make_signature(self._private_key, params_templ["data"], self._private_key)
@@ -98,12 +98,15 @@ def cnb_form(self, params):
9898
def cnb_signature(self, params):
9999
params = self._prepare_params(params)
100100

101-
data_to_sign = self.cnb_data(params)
101+
data_to_sign = self.data_to_sign(params)
102102
return self._make_signature(self._private_key, data_to_sign, self._private_key)
103103

104104
def cnb_data(self, params):
105105
params = self._prepare_params(params)
106-
return base64.b64encode(json.dumps(params).encode("utf-8")).decode("ascii")
106+
return self.data_to_sign(params)
107107

108108
def str_to_sign(self, str):
109109
return base64.b64encode(hashlib.sha1(str.encode("utf-8")).digest()).decode("ascii")
110+
111+
def data_to_sign(self, params):
112+
return base64.b64encode(json.dumps(params).encode("utf-8")).decode("ascii")

0 commit comments

Comments
 (0)