Skip to content

Commit

Permalink
Получение версии CSP
Browse files Browse the repository at this point in the history
  • Loading branch information
bankrot committed Sep 21, 2015
1 parent 6cfccdd commit bd5151b
Show file tree
Hide file tree
Showing 6 changed files with 67 additions and 16 deletions.
15 changes: 12 additions & 3 deletions src/alt_cadesplugin_api.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -126,18 +126,27 @@ AltCadesPlugin = class
Возвращает параметр из объекта
@method getParam
@param objectName {Object|String} Уже созданный объект, или ранее полученный параметр, или название объекта
@param paramName {String} Имя параметра
@param paramName {Object|String} Имя параметра.
Или объект с ключами paramName и options на случай если параметр нужно получить через выполнение функции
@return {jQuery.Deferred} Deferred объект с разультатом выполнения в качестве аргумента колбэка
###
getParam: (objectName, paramName)=>

param = (_object, _param)->
if typeof _param is 'object'
return _object[_param.paramName].apply null, _param.options
else
p = _object[_param]
return p

deferred = $.Deferred()

if typeof objectName is 'string'
chain = @pluginObject.CreateObjectAsync objectName
.then (object)->
object[paramName]
param object, paramName
else
chain = objectName[paramName]
chain = param objectName, paramName

chain.then (value)->
deferred.resolve value
Expand Down
18 changes: 14 additions & 4 deletions src/alt_cadesplugin_api.js
Original file line number Diff line number Diff line change
Expand Up @@ -173,19 +173,29 @@ AltCadesPlugin = (function() {
Возвращает параметр из объекта
@method getParam
@param objectName {Object|String} Уже созданный объект, или ранее полученный параметр, или название объекта
@param paramName {String} Имя параметра
@param paramName {Object|String} Имя параметра.
Или объект с ключами paramName и options на случай если параметр нужно получить через выполнение функции
@return {jQuery.Deferred} Deferred объект с разультатом выполнения в качестве аргумента колбэка
*/

_Class.prototype.getParam = function(objectName, paramName) {
var chain, deferred;
var chain, deferred, param;
param = function(_object, _param) {
var p;
if (typeof _param === 'object') {
return _object[_param.paramName].apply(null, _param.options);
} else {
p = _object[_param];
return p;
}
};
deferred = $.Deferred();
if (typeof objectName === 'string') {
chain = this.pluginObject.CreateObjectAsync(objectName).then(function(object) {
return object[paramName];
return param(object, paramName);
});
} else {
chain = objectName[paramName];
chain = param(objectName, paramName);
}
chain.then(function(value) {
return deferred.resolve(value);
Expand Down
2 changes: 1 addition & 1 deletion src/alt_cadesplugin_api.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 11 additions & 1 deletion test/coffee/main.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,17 @@ init = =>
if installedVersion is currentVersion[0]?.trim()
$logBlock.append '<p>У вас последняя версия плагина (' + installedVersion + ')<p>'
else
return $.Deferred -> @reject 'Плагин нужно обновить'
$logBlock.append '<p>У вас не последняя версия плагина. Рекомендуем обновить.<p>'

$.when(
altCadesPlugin.get 'CAdESCOM.About', {paramName: 'CSPVersion', options: ['', 75]}, 'MajorVersion'
altCadesPlugin.get 'CAdESCOM.About', {paramName: 'CSPVersion', options: ['', 75]}, 'MinorVersion'
altCadesPlugin.get 'CAdESCOM.About', {paramName: 'CSPVersion', options: ['', 75]}, 'BuildVersion'
)

.then (majorVersion, minorVersion, buildVersion)->
installedCspVersion = majorVersion + '.' + minorVersion + '.' + buildVersion
$logBlock.append '<p>Версия CSP (' + installedCspVersion + ')<p>'
$signBlock.show()

.fail (message)->
Expand Down
18 changes: 14 additions & 4 deletions test/js/alt_cadesplugin_api.js
Original file line number Diff line number Diff line change
Expand Up @@ -173,19 +173,29 @@ AltCadesPlugin = (function() {
Возвращает параметр из объекта
@method getParam
@param objectName {Object|String} Уже созданный объект, или ранее полученный параметр, или название объекта
@param paramName {String} Имя параметра
@param paramName {Object|String} Имя параметра.
Или объект с ключами paramName и options на случай если параметр нужно получить через выполнение функции
@return {jQuery.Deferred} Deferred объект с разультатом выполнения в качестве аргумента колбэка
*/

_Class.prototype.getParam = function(objectName, paramName) {
var chain, deferred;
var chain, deferred, param;
param = function(_object, _param) {
var p;
if (typeof _param === 'object') {
return _object[_param.paramName].apply(null, _param.options);
} else {
p = _object[_param];
return p;
}
};
deferred = $.Deferred();
if (typeof objectName === 'string') {
chain = this.pluginObject.CreateObjectAsync(objectName).then(function(object) {
return object[paramName];
return param(object, paramName);
});
} else {
chain = objectName[paramName];
chain = param(objectName, paramName);
}
chain.then(function(value) {
return deferred.resolve(value);
Expand Down
18 changes: 15 additions & 3 deletions test/js/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,22 @@ init = (function(_this) {
if (installedVersion === ((ref = currentVersion[0]) != null ? ref.trim() : void 0)) {
$logBlock.append('<p>У вас последняя версия плагина (' + installedVersion + ')<p>');
} else {
return $.Deferred(function() {
return this.reject('Плагин нужно обновить');
});
$logBlock.append('<p>У вас не последняя версия плагина. Рекомендуем обновить.<p>');
}
return $.when(altCadesPlugin.get('CAdESCOM.About', {
paramName: 'CSPVersion',
options: ['', 75]
}, 'MajorVersion'), altCadesPlugin.get('CAdESCOM.About', {
paramName: 'CSPVersion',
options: ['', 75]
}, 'MinorVersion'), altCadesPlugin.get('CAdESCOM.About', {
paramName: 'CSPVersion',
options: ['', 75]
}, 'BuildVersion'));
}).then(function(majorVersion, minorVersion, buildVersion) {
var installedCspVersion;
installedCspVersion = majorVersion + '.' + minorVersion + '.' + buildVersion;
$logBlock.append('<p>Версия CSP (' + installedCspVersion + ')<p>');
return $signBlock.show();
}).fail(function(message) {
return $logBlock.append('<p style="color: #E23131">' + message + '<p>');
Expand Down

0 comments on commit bd5151b

Please sign in to comment.