Tech C**P
15 subscribers
161 photos
9 videos
59 files
304 links
مدرس و برنامه نویس پایتون و لینوکس @alirezastack
Download Telegram
Babel:
Babel is an integrated collection of utilities that assist in internationalizing and localizing Python applications, with an emphasis on web-based applications.

pip install Babel

More information:
- http://babel.pocoo.org/en/latest/index.html

#python #pocoo #pip #babel #internationalization #localization
How do you sort the below object based on the value in Javascript?

{
"en": "English (English)",
"fa": "French",
"ar": "العربیه",
"zh": "中文 (Chinese)"
}

Well first you need to make an array of arrays:

var sortable_langs = [];
$.each(languages, function(index, language) {
sortable_langs.push([index, language]);
});

sortable_langs.sort(function(a, b) {
if(a[1] < b[1]) { return -1; }
if(a[1] > b[1]) { return 1; }
return 0;
});

NOTE: a[1] and b[1] refers to the language value like: English (English). They are compared with each other. If a[1] is bigger than b[1] then it will be moved to the first to the top.

#javascript #sort #alphabetically
In-place value swapping

# Let's say we want to swap
# the values of a and b...
a = 23
b = 42

# The "classic" way to do it
# with a temporary variable:
tmp = a
a = b
b = tmp

# Python also lets us
# use this short-hand:
a, b = b, a

#python #swap #tricks
How to display a 3 dots for a long text in span?

span {
width: 110px;
display: inline-block;
white-space: nowrap;
overflow: hidden !important;
text-overflow: ellipsis;
}

#css #span #3dots
How to get only numbers in textbox using jQuery?

// Restricts input for each element in the set of matched elements to the given inputFilter.
(function($) {
$.fn.inputFilter = function(inputFilter) {
return this.on("input keydown keyup mousedown mouseup select contextmenu drop", function() {
if (inputFilter(this.value)) {
this.oldValue = this.value;
this.oldSelectionStart = this.selectionStart;
this.oldSelectionEnd = this.selectionEnd;
} else if (this.hasOwnProperty("oldValue")) {
this.value = this.oldValue;
this.setSelectionRange(this.oldSelectionStart, this.oldSelectionEnd);
}
});
};
}(jQuery));

// restrict input to receive just numbers
$("#my_input_num").inputFilter(function(value) {
return /^\d*$/.test(value);
});

#javascript #jquery #input #number
In Google OAUTH 2.0 in case you get a token from Google Login you can get user's information for that token by sending a simple GET request to the following URL:

https://www.googleapis.com/oauth2/v1/userinfo?alt=json&access_token=YOUR_GOOGLE_TOKEN

The response differs based on the given scope on the first login step. Mine was set to the below:

https://www.googleapis.com/auth/plus.me https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email

#google #login_with_google #oauth #scope #userinfo #oauth2
Move the first letter of each word to the end of it, then add "ay" to the end of the word. Leave punctuation marks untouched.

Examples:

pig_it('Pig latin is cool') # igPay atinlay siay oolcay
pig_it('Hello world !') # elloHay orldway !

#question #codewars #algorithm
How to find the query associated with a queryset in Django ORM?

Sometime you want to know how a Django ORM makes our queries execute or what is the corresponding SQL of the code you are writing. This is very strightforward. Youn can get str of any queryset.query to get the sql.

You have a model called Event. For getting all records, you will write something like Event.objects.all(), then do str(queryset.query)


>>> queryset = Event.objects.all()
>>> str(queryset.query)
SELECT "events_event"."id", "events_event"."epic_id",
"events_event"."details", "events_event"."years_ago"
FROM "events_event"



Example 2:

>>> queryset = Event.objects.filter(years_ago__gt=5)
>>> str(queryset.query)
SELECT "events_event"."id", "events_event"."epic_id", "events_event"."details",
"events_event"."years_ago" FROM "events_event"
WHERE "events_event"."years_ago" > 5


#python #django #orm
How to convert ByteArray to PDF and then upload it via jQuery?

var docData = [ yourByteArray ];
var blob = new Blob([new Uint8Array(docData)], { type: 'application/pdf' });

// Now create form to upload the file
var formData = new FormData();
formData.append("file", blob);

// Let's now upload the file
$.ajax({
type: 'POST',
url: 'https://www.YOUR-UPLOAD-FILE-ENDPOINT.com/storage',
beforeSend: request => set_ajax_headers(request),
data: formData,
processData: false,
contentType: false
}).done(function(data) {
console.log('File is uploaded!');
});

NOTE: function set_ajax_headers is a function that sets headers on the given request.

#javascript #ByteArray #PDF #Uint8Array #Blob #jQuery
Write a function that when given a URL as a string, parses out just the domain name and returns it as a string. For example:

domain_name("http://github.com/carbonfive/raygun") == "github" 
domain_name("http://www.zombie-bites.com") == "zombie-bites"
domain_name("https://www.cnet.com") == "cnet"

#python #codewars
MongoDB server Load Average: 0.5 (It can reach 16)
Database Size: 100GB (It is compressed in MySQL it reaches 300 GB in size!)
Req/Sec: 500

Our server seems hungry for more requests and more data.

#mongodb #mongo #awesomeness
You are given a node that is the beginning of a linked list. This list always contains a tail and a loop.

Your objective is to determine the length of the loop.

For example in the following picture the tail's size is 3 and the loop size is 11:
Tech C**P
Photo
# Use the `next' attribute to get the following node
node.next

Note: do NOT mutate the nodes!

#python #codewars
Tech C**P
# Use the `next' attribute to get the following node node.next Note: do NOT mutate the nodes! #python #codewars
Sample Tests:

# Make a short chain with a loop of 3
node1 = Node()
node2 = Node()
node3 = Node()
node4 = Node()
node1.next = node2
node2.next = node3
node3.next = node4
node4.next = node2
Test.assert_equals(loop_size(node1), 3, 'Loop size of 3 expected')

# Make a longer chain with a loop of 29
nodes = [Node() for _ in xrange(50)]
for node, next_node in zip(nodes, nodes[1:]):
node.next = next_node
nodes[49].next = nodes[21]
Test.assert_equals(loop_size(nodes[0]), 29, 'Loop size of 29 expected')

# Make a very long chain with a loop of 1087
chain = create_chain(3904, 1087)
Test.assert_equals(loop_size(chain), 1087, 'Loop size of 1087 expected')
Forwarded from Digiato | دیجیاتو
💢نخستین همایش ری‌اکت ایران ۱۱ بهمن ماه برگزار خواهد شد
👇🏻
https://dgto.ir/16z8

📱 @Digiato 📡