Beispiel #1
0
 def get(self,request):
     if request.is_ajax():
         group_id = request.GET.get("group_id")
         content = "删除了职位%s"%(Group.objects.get(pk=group_id).name.encode("utf8"),)
         create_log(request.user.username,content,log_type=1)
         Group.objects.get(pk=group_id).delete()
         return HttpResponse("删除成功")
Beispiel #2
0
    def post(self,request):
        if not request.user.has_perm("add_media_article") or not request.user.has_perm("modify_media_article"):
            self.template_name = "backend/error.html"
            error_message = "你没有权限"
            self.extra_context['error_message'] = error_message
            return render(request,self.template_name,self.extra_context)

        if request.is_ajax():
            try:
                base_dir = settings.BASE_DIR
                file = request.FILES['file']
                file_name = file.name
                url = "article_media/" + file_name
                path = base_dir + "/media/" + url
                handle_img(file,path)
                return HttpResponse(json.dumps({'code':0,'url':url}),content_type="application/json")
            except:
                print traceback.print_exc()

        cate_id = request.POST.get("cate")
        cate = Cate.objects.get(pk=cate_id)
        title = request.POST.get("title")
        description = request.POST.get("desc")
        author = request.POST.get("author")
        label = request.POST.get("label")
        media_url = request.POST.get("media_url")

        img_src = request.POST.get("img_src")

        article_id = request.POST.get("article_id")


        if article_id:
            article = MediaArticle.objects.get(pk=article_id)
            article.cate = cate
            article.title = title
            article.description = description
            article.author = author
            article.label = label
            article.media = media_url

            if img_src:
                cover = decode_base64_file(img_src)
                article.cover = cover
            article.save()
        else:
            if not img_src:
                self.template_name = "backend/error.html"
                error_message = "请上传封面图片"
                self.extra_context['error_message'] = error_message
                return render(request,self.template_name,self.extra_context)

            cover = decode_base64_file(img_src)

            article = MediaArticle.objects.create(cate=cate,title=title,description=description,author=author,label=label,cover=cover,media=media_url)

        content = "添加/修改视频文章%s"%(title.encode("utf8"),)
        create_log(request.user.username,content)

        return HttpResponseRedirect(reverse("backend:yingshinanguo"))
Beispiel #3
0
def execute(query):
    """
    This function is used for creating the connection with database and executing the queries.
    :param query: array having mysql query to be executed and values for the query
    :return: dictionary having mysql cursor, last row id and all the records.
    """
    try:
        conn = connect()
        if conn.is_connected():
            cursor = conn.cursor(dictionary=True, buffered=True)
            cursor.execute(query[0], query[1])
            output = dict()
            if 'SELECT' in cursor.statement:
                output["fetchall"] = cursor.fetchall()
            output["lastrowid"] = cursor.lastrowid
            output["cursor"] = cursor
            conn.commit()
            return output

    except Error as e:
        create_log("Connection.py : "+str(e))


    finally:
        conn.close()
Beispiel #4
0
def connect():
    """
    Creates mysql connection object
    :return: connection object
    """
    try:
        conn = mysql.connector.connect(option_files='constants.cnf')
        print(conn)
        return conn
    except Error as e:
        create_log("Connection.py : "+str(e))
Beispiel #5
0
 def get(self,request):
     if not request.user.has_perm("delete_media_article"):
         self.template_name = "backend/error.html"
         error_message = "你没有权限"
         self.extra_context['error_message'] = error_message
         return render(request,self.template_name,self.extra_context)
     if request.is_ajax():
         article_id = request.GET.get("article_id")
         content = "删除了文章%s"%(MediaArticle.objects.get(pk=article_id).title.encode("utf8"),)
         create_log(request.user.username,content)
         MediaArticle.objects.get(pk=article_id).delete()
         return HttpResponse("删除成功")
Beispiel #6
0
 def post(self,request):
     if not request.user.has_perm("delete_img_article"):
         self.template_name = "backend/error.html"
         error_message = "你没有权限"
         self.extra_context['error_message'] = error_message
         return render(request,self.template_name,self.extra_context)
     item_id = request.POST.get("item_id")
     item = Images.objects.get(pk=item_id)
     content = "删除了文章图片%s"%(item.title.encode("utf8"),)
     create_log(request.user.username,content)
     item.delete()
     return HttpResponseRedirect(reverse("backend:article"))
Beispiel #7
0
    def post(self,request):
        name = request.POST.get("name")
        permissions = request.POST.getlist("permission")


        group,created = Group.objects.get_or_create(name=name)
        group.permissions.clear() 
        for per in permissions:
            permission = Permission.objects.get(codename=per)
            group.permissions.add(permission)

        content = "添加/修改了职位%s"%(group.name.encode("utf8"),)
        create_log(request.user.username,content,log_type=1)

        return HttpResponseRedirect(reverse("backend:auth_group"))
Beispiel #8
0
    def get(self,request):
        if not request.user.has_perm("confirm_media_article"):
            self.template_name = "backend/error.html"
            error_message = "你没有权限"
            self.extra_context['error_message'] = error_message
            return render(request,self.template_name,self.extra_context)
        if request.is_ajax():
            article_id = request.GET.get("article_id")
            article = MediaArticle.objects.get(pk=article_id)
            article.status = not article.status
            article.save()

            content = "审核/反审核了文章%s"%(article.title.encode("utf8"),)
            create_log(request.user.username,content)

            return HttpResponse("操作成功")
Beispiel #9
0
    def post(self,request):
        if not request.user.has_perm("add_carousel_item"):
            self.template_name = "backend/error.html"
            error_message = "你没有权限"
            self.extra_context['error_message'] = error_message
            return render(request,self.template_name,self.extra_context)

        title = request.POST.get("title")
        url = request.POST.get("url")
        carousel_id = request.POST.get("carousel_id")
        desc = request.POST.get("desc")
        img_src = request.POST.get("img_src")

        item_id = request.POST.get("item_id")
        
        if img_src:
            img = decode_base64_file(img_src)

        if item_id:
            carousel_item = CarouselItem.objects.get(pk=item_id)
            carousel_item.title = title
            carousel_item.url = url
            carousel_item.desc = desc

            if img_src:
                carousel_item.img = img

            carousel_item.save()
        else:
            if not img_src:
                self.template_name = "backend/error.html"
                error_message = "请上传轮播图片"
                self.extra_context['error_message'] = error_message
                return render(request,self.template_name,self.extra_context)

            carousel = Carousel.objects.get(pk=carousel_id)

            CarouselItem.objects.create(title=title,url=url,desc=desc,img=img,carousel=carousel)


        content = "添加/修改了轮播%s"%(title.encode("utf8"),)
        create_log(request.user.username,content,1)



        return HttpResponseRedirect(reverse("backend:carousel_setting"))
Beispiel #10
0
    def post(self,request,article_id):
        if not request.user.has_perm("add_img_article") or not request.user.has_perm("modify_img_article"):
            self.template_name = "backend/error.html"
            error_message = "你没有权限"
            self.extra_context['error_message'] = error_message
            return render(request,self.template_name,self.extra_context)
        if request.is_ajax():
            try:
                article = ImgArticle.objects.get(pk=article_id)
                text = request.POST.get("text").encode("utf8")
                article.content = text
                article.save()

                content = "添加/修改了文章内容%s"%(article.title.encode("utf8"),)
                create_log(request.user.username,content)
            except:
                print traceback.print_exc()
        return HttpResponse("success")
Beispiel #11
0
def login(email_id):
    """
    Function is used to get user id and password details
    :param email_id: email id of user
    :return: dictionary having user id and password.
    """

    result = ''
    try:
        conn = connect()
        if conn.is_connected():
            cursor = conn.cursor(dictionary=True, buffered=True)
            cursor.execute("SELECT id,password,active FROM employee WHERE email=%s", (email_id,))
            result = cursor.fetchone()
            return result
    except Error as e:
        create_log("Connection.py : "+str(e))
        show_404()
def typeOfBoy(type, gifts, c):
    b1 = 0
    b2 = 0
    for g in gifts:
        if (c.boy.budget >= 0) and (
            (g.cost - c.girl.maintenance_budget <= 100) or
            (g.cost
             == c.girl.maintenance_budget)) and (c.boy.budget - g.cost > 0):
            if g.type_of_gift == 'Luxury':
                b2 += 2 * g.cost
            else:
                b2 = b2 + g.cost
            b1 = b1 + g.cost
            c.gifts += [g]
            c.boy.budget = c.boy.budget - g.cost
            create_log(c.boy.name + '  gave ' + c.girl.name + ' a  Gift:| ' +
                       g.name + '| of price =Rs. ' + str(g.cost) + '\-.')
    if type == 'geek':
        for i in gifts:
            if (i not in c.gifts) and (i.type_of_gift == 'Luxury') and (
                    i.cost <= c.boy.budget):
                b2 += 2 * i.cost
                b1 = b1 + i.cost
                c.gifts += [i]
                c.boy.budget = c.boy.budget - i.cost
                create_log(c.boy.name + '  gave  ' + c.girl.name +
                           ' a  Gift:| ' + i.name + '| of price =Rs. ' +
                           str(i.cost) + '\-.')
                break
    if c.girl.type_of_gf == 'Choosy' and b2 > 0:
        c.girl.happiness = math.log10(b2)
    elif c.girl.type_of_gf == 'Normal':
        c.girl.happiness = b1
    else:
        c.girl.happiness = math.exp(b1)

    if type == 'Geek':
        c.boy.happiness = c.girl.intelligence
    elif type == 'Miser':
        c.boy.happiness = c.boy.budget
    elif type == 'Generous':
        c.boy.happiness = c.girl.happiness
    c.set_happiness()
    c.set_compatibility()
Beispiel #13
0
def main():
    query, num_start_pages, n, page_link_limit, mode, relevance_threshold = get_input(
    )
    start_time = time.time()
    start_pages = get_start_pages(query, num_start_pages)

    links_to_parse = PriorityQueue()
    parsed_urls = ParsedURLs()

    # get synonyms list and lemmatized words
    synonyms, lemmatized_words = get_synonyms_and_lemmatized(query)
    # creating a combined list of synonyms without duplicates
    synonyms_list = list(
        set([s for sublist in list(synonyms.values()) for s in sublist]))

    print('Found %d crawlable start pages:\n' % len(start_pages))
    # enqueue the start pages after computing their promises
    for s in start_pages:
        # promise = get_promise(query, s, mode, 0)  # initially, parent_relevance is 0
        promise = 1  # assuming that all the start pages are equally promising
        links_to_parse.enqueue([promise, s])

    # display the queue
    links_to_parse.display_queue()
    print('\n')

    while links_to_parse and page_count.get_page_num() < n:
        crawler = Crawler(links_to_parse, parsed_urls, query, n,
                          page_link_limit, mode, synonyms_list,
                          lemmatized_words)
        crawler.run()

    end_time = time.time()
    total_time = (end_time - start_time) / 60  # minutes

    # compute harvest rate
    harvest_rate = get_harvest_rate(parsed_urls, relevance_threshold)

    # create a crawler log file
    create_log(parsed_urls, query, len(start_pages),
               len(parsed_urls.get_keys()), page_link_limit, n, mode,
               harvest_rate, relevance_threshold, total_time)
Beispiel #14
0
def activate(email_id):
    """
    Function is used to activate profile of new users
    :param email_id: email id of user
    :return: lastrowid
    """

    result = ''
    try:
        conn = connect()
        if conn.is_connected():
            cursor = conn.cursor(dictionary=True, buffered=True)
            cursor.execute("UPDATE employee SET active = TRUE WHERE email = %s", (email_id,))
            result = cursor.lastrowid
            conn.commit()
            return result
    except Error as e:
        create_log("Connection.py : "+str(e))

    finally:
        conn.close()
Beispiel #15
0
def public_profile(query):
    """
    Function is used to get all the public profiles
    :param query: SQL query for the public profiles
    :return: dictionary having total count and limited users details according to offset.
    """
    try:
        conn = connect()
        if conn.is_connected():
            cursor = conn.cursor(dictionary=True, buffered=True)
            cursor.execute(query[0], query[1])
            output = dict()
            output["fetchall"] = cursor.fetchall()
            cursor.execute("SELECT FOUND_ROWS()")
            output["total"] = cursor.fetchone()["FOUND_ROWS()"]
            conn.commit()
            return output
    except Error as e:
        create_log("Connection.py : "+str(e))
    finally:
        conn.close()
Beispiel #16
0
    def post(self,request):
        name = request.POST.get("name")
        short_description = request.POST.get("short_description")
        parent = request.POST.get("parent")
        cate_id = request.GET.get("cate_id")

        if parent:
            parent_cate = Cate.objects.get(pk=parent)
        else:
            parent_cate = None

        if cate_id:
            cate = Cate.objects.get(pk=cate_id)
            cate.description = short_description
            cate.name = name
            cate.parent = parent_cate
            cate.save()
        else:
            Cate.objects.create(parent=parent_cate,name=name,description=short_description)

        content = "添加了分类%s"%(name.encode("utf8"),)
        create_log(request.user.username,content)
        return HttpResponseRedirect(reverse("backend:cate_setting"))
Beispiel #17
0
    def post(self,request):
        if not request.user.has_perm("add_img_article"):
            self.template_name = "backend/error.html"
            error_message = "你没有权限"
            self.extra_context['error_message'] = error_message
            return render(request,self.template_name,self.extra_context)
        article_id = request.POST.get("article_id")
        article = ImgArticle.objects.get(pk=article_id)

        title = request.POST.get("title")
        desc = request.POST.get("desc")

        img_src = request.POST.get("img_src")

        img_id = request.POST.get("img_id")

        if img_id:
            img = Images.objects.get(pk=img_id)
            img.title = title
            img.description = desc
            if img_src:
                img.img = decode_base64_file(img_src)

            img.save()
        else:
            if not img_src:
                self.template_name = "backend/error.html"
                error_message = "请上传图片"
                self.extra_context['error_message'] = error_message
                return render(request,self.template_name,self.extra_context)

            Images.objects.create(title=title,description=desc,img=decode_base64_file(img_src),article=article)

        content = "添加/修改了文章图片%s"%(title.encode("utf8"),)
        create_log(request.user.username,content)

        return HttpResponseRedirect(reverse("backend:article"))
    employee_id = session.current_user()
    header = dict()
    header["title"] = "Edit Profile"

    if employee_id:
        header["homeUrl"] = "http://localhost/profiles.py"
        user = execute(BaseClass.user_name(employee_id))["fetchall"][0]
        user_name = user["firstName"] + ' ' + user["lastName"]
        top_right_link = '<a href="http://localhost/logout.py">Logout</a>'
        header[
            "navTopRight"] = '<li class="active"><a>%s</a></li><li class="active">%s</li>' % (
                user_name, top_right_link)
        header["css_version"] = config.get("version", "css")
        footer = {"js_version": config.get("version", "css")}
        if os.environ['REQUEST_METHOD'] == 'GET':
            print("Content-type: text/html\n")
            f = open('./template/header.html', encoding='utf-8')
            print(f.read() % header)
            f.close()
            f = open('./template/profiles.html')
            print(f.read())
            f.close()
            f = open('./template/footer.html', encoding="utf_8")
            print(f.read() % footer)
            f.close()
    else:
        print("Location: http://localhost/login.py\n")
except Exception as e:
    create_log("Profiles.py : " + str(e))
    show_404()
Beispiel #19
0
    def post(self,request):
        if not request.user.has_perm("add_img_article") or not request.user.has_perm("modify_img_article"):
            self.template_name = "backend/error.html"
            error_message = "你没有权限"
            self.extra_context['error_message'] = error_message
            return render(request,self.template_name,self.extra_context)

        cate_id = request.POST.get("cate")
        cate = Cate.objects.get(pk=cate_id)
        title = request.POST.get("title")
        description = request.POST.get("desc")
        author = request.POST.get("author")
        label = request.POST.get("label")
        mode = int(request.POST.get("mode"))
        area_id = request.POST.get("area_id")
        famous_id = request.POST.get("famous_id")

        if famous_id:
            famous = Famous.objects.get(pk=famous_id)
        else:
            famous = None
        if area_id:
            area = Area.objects.get(pk=area_id)
        else:
            area = None

        img_src = request.POST.get("img_src")

        article_id = request.POST.get("article_id")

        if article_id:
            article = ImgArticle.objects.get(pk=article_id)
            article.cate = cate
            article.title = title
            article.description = description
            article.author = author
            article.label = label
            article.display_mode = mode
            article.area = area
            article.famous = famous

            if img_src:
                cover = decode_base64_file(img_src)
                article.cover = cover
            article.save()
        else:
            if not img_src:
                self.template_name = "backend/error.html"
                error_message = "上传封面图片"
                self.extra_context['error_message'] = error_message
                return render(request,self.template_name,self.extra_context)

            cover = decode_base64_file(img_src)

            article = ImgArticle.objects.create(cate=cate,title=title,description=description,author=author,label=label,content="",display_mode=mode,cover=cover,area=area,famous=famous)

        content = "添加/修改了文章配置%s"%(title.encode("utf8"),)
        create_log(request.user.username,content)

        if mode == 0:
            return HttpResponseRedirect(reverse("backend:add_article_detail",args=[article.id]))
        elif mode == 1:
            return HttpResponseRedirect(reverse("backend:article"))
Beispiel #20
0
            :return: user id.
            """

            if 'HTTP_COOKIE' in os.environ.keys():
                if 'session_id' in self.cookie.keys():
                    session_id = self.cookie['session_id'].value
                    if os.path.exists(os.path.join('.sessions', session_id)):
                        session_file = open(
                            os.path.join('.sessions', session_id), 'rb')
                        session_obj = pickle.load(session_file)
                        session_file.close()
                        return session_obj['userid']
            return False

        def session(self, user):
            """
            Create session.
            :param user: user id
            """

            user_id = user['id']
            current = self.current_user()
            if current:
                return current
            else:
                session_obj = dict()
                session_obj['userid'] = user_id
                self.create_cookie(session_obj)
except Exception as e:
    create_log("Session.py : " + str(e))
'''
main.py
End-to-end script for running all processes.  
'''
__author__='Charlie Guthrie'

from utils import create_log,plog,fplog
create_log(__file__)
import sys

#Command-line arguments
if len(sys.argv)<2:
    plog("Usage: python main.py [num_train_samples] [use_images|use_text]")
    sys.exit()
else:
    train_samples = int(sys.argv[1])
    if 'use_images' in sys.argv:
        use_images=True
    else:
        use_images=False
    if 'use_text' in sys.argv:
        use_text=True
    else:
        use_text=False

plog('importing main.py modules...')
import os
import data_prep
import models
import pdb
from datetime import datetime
Beispiel #22
0
    header["css_version"] = config.get("version", "css")
    footer = {"js_version": config.get("version", "css")}
    email = form.getvalue("email")
    value = form.getvalue("value")
    active = login(email)["active"]
    email_hash = generate_hash(email)

    if os.environ['REQUEST_METHOD'] == 'GET':
        print("Content-type: text/html\n")
        f = open('./template/header.html', encoding='utf-8')
        print(f.read() % header)
        f.close()
        if value == email_hash and not active:
            activate(email)
            print(
                "<p>Your account has been activated. Please log in with the password assigned to you</p>"
            )
        elif active:
            print(
                "<p>Your account was already activated. Please log in with the password assigned to you</p>"
            )
        else:
            print("<p>Please check your activation link</p>")
        f = open('./template/footer.html', encoding="utf_8")
        print(f.read() % footer)
        f.close()

except Exception as e:
    create_log("Activate.py : " + str(e))
    show_404()
def main():
    boys = open('./boys_list.csv')
    getBoy = csv.reader(boys, delimiter=',')

    girls = open('./girls_list.csv')
    getGirls = csv.reader(girls, delimiter=',')

    boy_list = []
    girl_list = []
    couple_list = []
    virtual_couple_list = []

    for i in getBoy:
        boy_list += [Boys(i[0], int(i[1]), int(i[2]), int(i[3]), int(i[4]), i[5])]

    for i in getGirls:
        girl_list += [Girls(i[0], int(i[1]), int(i[2]), int(i[3]), i[4])]

    # Create gift list to be sent to happiness calculator
    with open('./gift_list.csv', 'r') as gift_file:
        gift_list = csv.reader(gift_file, delimiter=',')
        for row in gift_list:
            gifts = [Gift(row[0], int(row[1]), int(row[2]), row[3])]
        gift_file.close()

    gifts = sorted(gifts, key=lambda item: item.cost)

    for girl in girl_list:
        for boy in boy_list:
            # Create Log
            create_log(boy.name + ' is trying for ' + girl.name)
            if boy.status == 'Single' and girl.status == 'Single' and \
                    boy.check_eligibility(girl.maintenance_budget, girl.attractiveness):
                boy.gf = girl.name
                girl.bf = boy.name

                # Update relationship status
                boy.status = 'Committed'
                girl.status = 'Committed'

                text = girl.name + ' is in relationship with ' + boy.name
                print(text)
                # Create Log
                create_log(text)
                couple_list += [(girl, boy)]
                break

    for i in couple_list:
        # Create couples first to be sent to happiness calculator
        virtual_couple_list += [Couple(i[0], i[1])]

    print("Couples in relationship are : ")
    for couple in virtual_couple_list:
        print(couple.girl.name + " is in a relationship with " + couple.boy.name)

    calc_happiness(virtual_couple_list, gifts)

    virtual_couple_list = sorted(virtual_couple_list, key=lambda x: x.happiness, reverse=True)
    print("\n")
    print("10 most happy couple : ")
    for i in range(0, 10):
        print(virtual_couple_list[i].boy.name + " and " + virtual_couple_list[i].girl.name)
    print("\n")
    # print(virtual_couple_list[i].happiness)
    print("10 most compatible couple : ")

    virtual_couple_list = sorted(virtual_couple_list, key=lambda x: x.compatibility, reverse=True)
    for i in range(0, 10):
        print(virtual_couple_list[i].boy.name + " and " + virtual_couple_list[i].girl.name)
    valid_values = {
        "First Name": "firstName",
        "Last Name": "lastName",
        "DOB": "dob",
        "email": "email",
        "Employment": "employment",
        "Employer": "employer",
        "Home Street": "homeStreet",
        "Home City": "homeCity",
        "Home State": "homeState",
        "Home Pin": "homePin",
        "Home Phone": "homePhone",
        "Home Fax": "homeFax",
        "Office Street": "officeStreet",
        "Office City": "officeCity",
        "Office State": "officeState",
        "Office Pin": "officePin",
        "Office Phone": "officePhone",
        "Office Fax": "officeFax"
    }
    for line in profile_file.split('\n'):
        line = line.split(',')
        if line[0] in valid_values.keys():
            values[valid_values[line[0]]] = line[1]

    if os.environ['REQUEST_METHOD'] == 'POST':
        print(json.dumps(values))
except Exception as e:
    create_log("Read_data.py : "+str(e))
    show_404()
def main():
    boys = open('./boys_list.csv')
    getBoy = csv.reader(boys, delimiter=',')

    girls = open('./girls_list.csv')
    getGirls = csv.reader(girls, delimiter=',')

    boy_list = []
    girl_list = []
    couple_list = []
    virtual_couple_list = []

    after_breakup_girl_list = []

    for i in getBoy:
        boy_list += [
            Boys(i[0], int(i[1]), int(i[2]), int(i[3]), int(i[4]), i[5])
        ]

    for i in getGirls:
        girl_list += [Girls(i[0], int(i[1]), int(i[2]), int(i[3]), i[4])]

    # Create gift list to be sent to happiness calculator
    with open('./gift_list.csv', 'r') as gift_file:
        gift_list = csv.reader(gift_file, delimiter=',')
        for row in gift_list:
            gifts = [Gift(row[0], int(row[1]), int(row[2]), row[3])]
        gift_file.close()

    gifts = sorted(gifts, key=lambda item: item.cost)

    for girl in girl_list:
        for boy in boy_list:
            # Create Log
            create_log(boy.name + ' is trying for ' + girl.name)
            if boy.status == 'Single' and girl.status == 'Single' and \
                    boy.check_eligibility(girl.maintenance_budget, girl.attractiveness):
                boy.gf = girl.name
                girl.bf = boy.name

                # Update relationship status
                boy.status = 'Committed'
                girl.status = 'Committed'

                text = girl.name + ' is in relationship with ' + boy.name
                print(text)
                # Create Log
                create_log(text)
                couple_list += [(girl, boy)]
                break

    for i in couple_list:
        # Create couples first to be sent to happiness calculator
        virtual_couple_list += [Couple(i[0], i[1])]

    print("Couples in relationship are : ")
    for couple in virtual_couple_list:
        print(couple.girl.name + " is in a relationship with " +
              couple.boy.name)

    calc_happiness(virtual_couple_list, gifts)

    for girl in girl_list:
        for i in range(0, 10):
            if girl == virtual_couple_list[i].girl:
                # Add the boy to girl's blacklist , thus removing any chance
                # of their matching up again
                girl.blacklist = virtual_couple_list[i].boy.name

                # Create the new list of girls after breakup
                after_breakup_girl_list.append(girl)

                # Remove them from couple list
                virtual_couple_list.remove(virtual_couple_list[i])

    # Now rerun the matchup loop after breakup
    for girl in after_breakup_girl_list:
        for boy in boy_list:
            # Create Log
            create_log(boy.name + ' is trying for ' + girl.name)
            if boy.status == 'Single' and girl.status == 'Single' and \
                    boy.check_eligibility(girl.maintenance_budget, girl.attractiveness):
                boy.gf = girl.name
                girl.bf = boy.name

                # Update relationship status
                boy.status = 'Committed'
                girl.status = 'Committed'

                text = girl.name + ' is in relationship with ' + boy.name
                print(text)
                # Create Log
                create_log(text)
                virtual_couple_list.append(Couple(girl, boy))
                break
        if current_user:
            print("Location: http://localhost/edit_profile.py\n")
        else:
            print("Content-type: text/html\n")
            f = open('./template/header.html', encoding='utf-8')
            print(f.read() % header)
            f.close()
            f = open('./template/login.html')
            print(f.read())
            f.close()
            f = open('./template/footer.html', encoding="utf_8")
            print(f.read() % footer)
            f.close()
    elif os.environ['REQUEST_METHOD'] == 'POST':
        form_email = form.getvalue('email')
        form_password = form.getvalue('password')
        user = login(form_email)

        if user:
            if user["password"] == form_password:
                session.session(user)
            else:
                print("Location: http://localhost/edit_profile.py\n")
                print('Check the password')
        else:
            print("Location: http://localhost/edit_profile.py\n")
            print('Check the username')
except Exception as e:
    create_log("Login.py : " + str(e))
    show_404()
            result['user_name'] = ' '.join([self.first_name, self.last_name])
            return result

        @staticmethod
        def set_image(image_ext, id):
            """
            Sets user profile image
            :param image_ext: profile image extension
            :param id: user id
            :return: SQL query array
            """
            return [
                "UPDATE employee SET image_extension=%s WHERE id=%s",
                (
                    image_ext,
                    id,
                )
            ]

    class EmployeeAddress(BaseClass):
        def __init__(self, employee):
            self.name = 'empAddress'
            self.street = employee['homeStreet']
            self.city = employee['homeCity']
            self.state = employee['homeState']
            self.pin = employee['homePin']
            self.phone = employee['homePhone']
            self.fax = employee['homeFax']
except Exception as e:
    create_log("Model.py : " + str(e))
Beispiel #28
0
    import json
    import os

    from connection import public_profile
    from model import BaseClass
    from utils import create_log, show_404

    form = cgi.FieldStorage()
    page = form.getvalue("page", 0)
    config = configparser.ConfigParser()
    config.read('constants.cnf')
    print("Content-type: text/html\n")

    if os.environ['REQUEST_METHOD'] == 'GET':
        user_query = BaseClass.user_profile_data(page)
        user_data = public_profile(user_query)
        for i in range(len(user_data["fetchall"])):
            user_data["fetchall"][i][
                "image_extension"] = '<img src="%s" class="img-responsive img-thumbnail profile-img " ' \
                                     'alt="Profile Image">' % (
                                         config.get('profile', 'img_path') + str(
                                             user_data["fetchall"][i]["id"]) + '.' +
                                         user_data["fetchall"][i]["image_extension"])
        users = dict()
        users["data"] = user_data['fetchall']
        users["total"] = user_data["total"]
        print(json.dumps(users))
except Exception as e:
    create_log("User_data.py : "+str(e))
    show_404()
Beispiel #29
0
'''
data_prep.py

Starting with the csv's, ending with X_train, y_train, X_val, y_val, X_test, y_test
Where X's are feature vectors and y's are classifier integers
'''
__author__ = 'Charlie Guthrie'

from utils import create_log, plog
create_log(__file__)

plog('importing modules...')
from datetime import datetime
import os
import pandas as pd
import numpy as np
import pdb
import cPickle as pkl
import bag_of_words
from sklearn.preprocessing import OneHotEncoder


def shuffle_and_downsample(df, samples):
    '''
    shuffle dataframe, including previous indexes, then downsample
    args:
        samples: number of samples
    '''
    #random seed 9 makes sure we always get the same shuffle.
    np.random.seed(9)
    assert df.shape[0] > 2
Beispiel #30
0
            print("Content-type: text/html\n")
            f = open('./template/header.html', encoding='utf-8')
            print(f.read() % header)
            f.close()
            f = open('./template/edit_profile.html')
            print(f.read() % employee_columns)
            f.close()
            f = open('./template/footer.html', encoding="utf_8")
            print(f.read() % footer)
            f.close()

        elif os.environ['REQUEST_METHOD'] == 'POST':
            dict_fields = get_formvalues()
            e = Employee(dict_fields)
            employee_id = str(employee_id)
            update_query = e.update_employee(employee_id)
            execute(update_query)
            if dict_fields['photo'].filename:
                image_ext = dict_fields['photo'].filename.split('.')[-1]
                image_name = employee_id + '.' + image_ext
                image_query = e.set_image(image_ext, employee_id)
                execute(image_query)
                save_uploaded_file(dict_fields['photo'], config.get('profile', 'path'), image_name)
            print("Location: http://localhost/edit_profile.py\n")
    else:
        print("Location: http://localhost/login.py\n")

except Exception as e:
    create_log("Edit_profile.py : "+str(e))
    show_404()
def calc_happiness(H, gifts):
    create_log('\n\nDetails of Gifts:\n')
    for i in H:
        typeOfBoy(i.boy.type_of, gifts, i)

    return gifts_details(H)