def parseCategoryFromXML(self, user, cat_name, items_list): cat_to_parse_query = db.GqlQuery('SELECT * FROM category WHERE creator = \'%s\' AND name = \'%s\'' %(user.nickname(), cat_name)) cat_to_parse = cat_to_parse_query.get() if cat_to_parse: #replace old category self.replaceCategory(user, cat_name, items_list) else: #create new category new_category = categories.category(name=cat_name, creator=user.nickname()) new_category.put() for item in items_list: new_item = items.item(name=item, creator=user.nickname(), category=cat_name) new_item.put() self.rendering(user)
def add_category(): # Method to add new categories. global obj_categories catName = input("Enter the name of the category to be added: ") print('\n') newcategory = category() newcategory.catName = catName try: obj_categories.add_category(newcategory) except Exception as e: print(e) else: with open('categories.pickle', 'wb') as handle: pick.dump(obj_categories, handle) obj_categories.create_catDict() print('\n Category Added Successfully. \n')
def post(self): user = users.get_current_user() new_cat_name = self.request.get('newcatname', None) item_name = self.request.get('newitemname', None) import_cat_path = self.request.get('importcatpath', None) rename_type = self.request.get('renametype', None) if rename_type is not None: if rename_type == 'renameitem': cat_name = self.request.get('category', None) old_item_name = self.request.get('item', None) rename_item_name = self.request.get('renameitem', None) self.renameItem(user, cat_name, old_item_name, rename_item_name) self.editCategory(cat_name, user) else: if import_cat_path is None: if item_name is None: if new_cat_name is not None: #new category is to be added check_if_cat_exists_query = db.GqlQuery('SELECT * FROM category WHERE creator = \'%s\' AND name = \'%s\'' %(user.nickname(), new_cat_name)) check_if_cat_exists = check_if_cat_exists_query.get() if not check_if_cat_exists: #checks if the category already exists in the datastore, if not then adds it new_category = categories.category(name=new_cat_name, creator=user.nickname()) new_category.put() self.rendering(user) else: category_name = self.request.get('cat_name', None) #new item to be added check_if_item_exists_query = db.GqlQuery('SELECT * FROM item WHERE name = \'%s\' AND creator = \'%s\' AND category = \'%s\'' %(item_name, user.nickname(), category_name)) check_if_item_exists = check_if_item_exists_query.get() if not check_if_item_exists: #checks if the category already has that item, if not then adds it new_item = items.item(name=item_name, creator=user.nickname(), category=category_name) new_item.put() self.editCategory(category_name, user) else: #Existing category is to be imported from the given file tree=ET.parse(import_cat_path) root = tree.getroot() names = root.findall('NAME') for name in names: import_cat_name = name.text items_list = [] root_items = root.findall('ITEM/NAME') for item in root_items: import_item_name = item.text #logging.debug("new list %s" %item.text) items_list.append(import_item_name) self.parseCategoryFromXML(user, import_cat_name, items_list) del tree
infoComp, infoDesc, infoSite, infoLogo, infoFace, infoTwit, infoLinked, infoBeni, author = companyinfo.infofiller( companyName) with open(csvFile, 'rb') as mycsv: data = csv.reader(mycsv, dialect='mydialect') for row in data: clearL, keyL, keyw = '', '', '' title = row[0] desc = row[1] req = row[2] desc = row[3] loc = row[4] loc = re.sub("<.+>(.+)<.+>", r'\1', loc) title = re.sub("<.+>(.+)<.+>", r'\1', title) appUrl = req job_category = category(title, title) if re.match('Other', job_category): job_category = category(desc, title) if re.match('location', loc): LOG.write("Skipping header field") elif re.match('^$', loc): LOG.write("Empty location") elif len(desc) == 0: LOG.write("This one has an empty desc.") elif doneThis.has_key(req): LOG.write("Already done this crap...") else: doneThis[req] = "TRUE" # This is the final fix for REQ req = re.sub(".+ID=(\d+)\&.+", r'\1', req) clearance, clearL = clear.clear(desc)