Showing posts with label Javascript. Show all posts
Showing posts with label Javascript. Show all posts

Saturday, January 19, 2019

How to De-obfuscate Javascript code. Easy way

Step 1: Access link http://www.jsnice.org/ and paste code javascript.
- Decode.
Step 2: Replace value in array was be decoded.
var _html  = all code;
function GetIndexByValue(arr, ){
for(var i=0, k=arr.length; i < k; i++) {
_html = _html.replace("name of array[" + i + "]", "\"" + arr[i] + "\"");
}
}


for(var i = 0 ; i < 20; i++){
GetIndexByValue();
}


Monday, August 21, 2017

How to load Resource from C# to javascript

HTML: Controller WEB: public class ResourcesController : Controller { // GET: Admin/Resources [OutputCache(CacheProfile = "CacheLang")] public JavaScriptResult Index(string lang) { var culture = new CultureInfo(lang); // return null; return HtmlHepper.JavascriptResources(Resources.Language.ResourceManager, "Lang", culture); } } Use in web: Lang.System_Error

Wednesday, May 31, 2017

Format Money string in javascript - ENCODE HTML

FORMAT MONEY, NUMBER
 var formatter = function (value) {  
    return value != null ? value.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.') : 0;  
 }  
ENCODE HTML
 var EncodeHtml = function (string) {  
     var entityMap = {  
       "&": "&amp;",  
       "<": "&lt;",  
       ">": "&gt;",  
       '"': '&quot;',  
       "'": '&#39;',  
       "/": '&#x2F;'  
     };  
     return String(string).replace(/[&<>"'\/]/g, function (s) {  
       return entityMap[s];  
     });  
   }  
ENCODE HTML2
 var encodeHtml = function (r) {  
     return r.replace(/[\x26\x0A\<>'"]/g, function (r) { return "&#" + r.charCodeAt(0) + ";" });  
   }  

Use Bootbox.js to show Dialog html

 var Dialog = {  
   Success: 'Thành công',  
   Warning: 'Cảnh báo',  
   Error: 'Lỗi',  
   CONFIRM: 'primary',  
   /* Description: Dialog thông báo  
            - message: Thông tin thông báo cần hiển thị.  
            - status: Trạng thái dialog (Success: Thành công, Warning: Cảnh báo, Error: Thất bại).  
            - callbackFuntion: Function Callback thực hiện sau khi ấn nút xác nhận form thông báo. */  
   Alert: function (message, status, dialogtitle, callbackFuntion, hideModalFuntion) {  
     var typeDialog = this._getTypeDialog(status);  
     bootbox.dialog({  
       message: message,  
       title: dialogtitle != 'undefine' ? dialogtitle : typeDialog.title,  
       closeButton: false,  
       className: typeDialog.className,  
       buttons: {  
         success: {  
           label: "<i class='fa fa-check'></i>" + language.Btn_Close,  
           className: typeDialog.buttonClass,  
           callback: callbackFuntion  
         }  
       }  
     }).on('shown.bs.modal', function () {  
       $('.bootbox').find('button:first').focus();  
     }).on('hidden.bs.modal', function () {  
       var p = $("body").css('padding-right');  
       var p1 = parseInt(p) - 17;  
       if (p1 >= 0)  
         $("body").css('padding-right', p1);  
       hideModalFuntion == undefined ? function () { } : hideModalFuntion();  
     });  
   },  
   /* Description: Dialog Config custom  
           - message: Thông tin thông báo cần hiển thị.  
           - callbackFuntion: Function Callback thực hiện sau khi ấn nút xác nhận form thông báo. */  
   ConfirmCustom: function (title, message, callbackFuntion, showModalFuntion) {  
     var typeDialog = this._getTypeDialog(this.CONFIRM);  
     bootbox.dialog({  
       message: message,  
       title: title ? title : typeDialog.title,// title ? typeDialog.title : title,  
       closeButton: false,  
       className: typeDialog.className,  
       buttons: {  
         success: {  
           label: "<i class='fa fa-check'></i>" + language.Btn_Confirm,  
           className: typeDialog.buttonClass,  
           callback: callbackFuntion  
         },  
         cancel: {  
           label: "<i class='fa fa-reply'></i>" + language.Btn_Close,  
           className: "btn btn-df"  
         }  
       }  
     }).on('shown.bs.modal', showModalFuntion == undefined ? function () {  
       //$('.bootbox').find('button:first').focus();  
     } : showModalFuntion);  
   },  
   /* Description: Hàm xác định kiểu của Dialog */  
   _getTypeDialog: function (status) {  
     var type = {};  
     switch (status) {  
       case 'success':  
         type = {  
           title: language.TitlePopupSuccess,  
           className: 'my-modal-success',  
           buttonClass: 'btn-sm btn-lue'  
         };  
         break;  
       case 'warning':  
         type = {  
           title: Status_Confirm,  
           className: 'my-modal-warning',  
           buttonClass: 'btn-sm btn-blue'  
         };  
         break;  
       case 'error':  
         type = {  
           title: language.TitlePopupError,  
           className: 'my-modal-error',  
           buttonClass: 'btn-sm btn-blue'  
         };  
         break;  
       case 'primary':  
         type = {  
           title: language.TitlePopupPrimary,  
           className: 'my-modal-primary',  
           buttonClass: 'btn-sm btn-blue'  
         };  
         break;  
     }  
     return type;  
   }  
 }  

Javascript - DateTime format

 var DefaultDate = function () {  
     var dfFormDate = new Date();  
     var dfToDate = new Date();  
     var dfMax = new Date();  
     dfFormDate.setHours(0);  
     dfFormDate.setMinutes(0);  
     dfFormDate.setSeconds(0);  
     dfFormDate.setMilliseconds(000);  
     dfToDate.setHours(23);  
     dfToDate.setMinutes(59);  
     dfToDate.setSeconds(59);  
     dfToDate.setMilliseconds(000);  
     dfMax.setHours(23);  
     dfMax.setMinutes(59);  
     dfMax.setSeconds(59);  
     dfMax.setMilliseconds(999);  
     return {  
       FormDate: dfFormDate,  
       ToDate: dfToDate,  
       MaxDate: dfMax,  
       MomentFromDate: moment(dfFormDate),  
       MomentToDate: moment(dfToDate),  
       MomentMaxDate: moment(dfMax)  
     }  
   }