view frontend/mfrontend/utils.py @ 13:79cf8ca2a0e5

Dodałem pobieranie informacji o podanym zadaniu oraz pobieranie zadania oczekującego poprzez API
author Michał Rudowicz <michal.rudowicz@fl9.eu>
date Fri, 01 Apr 2011 19:02:08 +0200
parents 79fc37fe85a6
children
line wrap: on
line source

#!/usr/bin/python
# -*- coding: utf-8 -*-

import random, string, hashlib
from ConfigParser import SafeConfigParser

def randomString(n):
    """Funkcja generująca losowy łańcuch znaków, np. do haseł czy Secret Key.
       @param n Ilość znaków do wygenerowania.
       @return Losowo wygenerowany łańcuch znaków.
    """
    wynik = ''.join(random.choice(string.ascii_letters + string.digits) for i in range(n))
    return wynik

def default_ini():
    """Funkcja tworząca domyślny plik .ini z ustawieniami aplikacji"""
    config = SafeConfigParser()
    config.add_section('Basic')
    config.set('Basic', 'Database', 'baza.sqlite')
    config.set('Basic', 'Debug', '0')
    config.set('Basic', 'Secret_Key', randomString(10))
    config.set('Basic', 'HashCrypto', 'sha512')
    config.set('Basic', 'ApiKey', randomString(10))
    with open('config.ini', 'wb') as configfile:
        config.write(configfile)

def hashPassword(password):
    """Funkcja hashuje hasła."""
    config = SafeConfigParser()
    config.read('config.ini')
    m = hashlib.new(config.get('Basic', 'HashCrypto'))
    m.update(config.get('Basic', 'Secret_Key'))
    m.update(password)
    return m.hexdigest()