def jobs(): if (int(curr_project()) > 0): form = job_form() job_t_form = job_test_form() def_city= ('0', 'Select City') form.city.choices = [def_city] + [(r.city, r.city) for r in db.session.query(scrape_task)] project_curr = db.session.query(Project).filter_by(id = int(curr_project())).first() form_group_job = job_group_form() form_group_job.temp_select.choices =[(r.name, r.name) for r in project_curr.template] # TODO create group contact assoc table for sending jobs to group form_group_job.group_select.choices =[(r.name, r.name) for r in db.session.query(template)] form.keyword.choices= [(r.keyword, r.keyword) for r in db.session.query(scrape_task.keyword).distinct(scrape_task.keyword)] form.campaign.choices= [(r.name, r.name) for r in project_curr.template] job_list = project_curr.jobs if form.validate_on_submit(): city= form.city.data keyword= form.keyword.data provider = "Whatsapp" campaign = db.session.query(template).filter_by(name = form.campaign.data).first() # Check if the city and keyword already exsists ? check_one = db.session.query(job_task).filter_by(city = city, provider = provider, keyword = keyword).first() if check_one is None: new_job= job_task(city = city, provider = provider, status = str(0), meta = str(1), keyword = keyword, template = campaign ,project_jo = project_curr ,job_test_form =job_t_form) project_curr.jobs.append(new_job) db.session.add(new_job) db.session.commit() session['mssg'] = " 👍 Job added to list." return redirect('/jobs') else: session['mssg'] = " 🙃 Job already exsists. You can re-run the job from the list below , or run a new job with different parameters." return redirect('/jobs') else: logging.error( 'Job Form submission error : '+ str(form.errors)) return render_template('jobs.html', form= form, job_list = job_list, mssg = session['mssg'] , user_projects = get_projects() , form_group_job = form_group_job , job_test_form= job_t_form), 200 if job_t_form.validate_on_submit(): pass else: logging.error( 'Job Form submission error : '+ str(job_t_form.errors)) return render_template('jobs.html', form= form, job_list = job_list, mssg = session['mssg'] , user_projects = get_projects() , form_group_job = form_group_job , job_test_form= job_test_form), 200 else: session['mssg'] = "No project selected . Redirecting to Projects page." return redirect('projects')
def jobs(): form = job_form() def_city = ('0', 'Select City') form.city.choices = [def_city] + [(r.city, r.city) for r in db.session.query(scrape_task)] form.keyword.choices = [(r.keyword, r.keyword) for r in db.session.query( scrape_task.keyword).distinct(scrape_task.keyword)] form.campaign.choices = [(r.name, r.name) for r in db.session.query(template)] job_list = db.session.query(job_task).all() if form.validate_on_submit(): city = form.city.data keyword = form.keyword.data provider = "Whatsapp" # Check if the city and keyword already exsists ? check_one = db.session.query(job_task).filter_by( city=city, provider=provider, keyword=keyword).first() if check_one is None: new_job = job_task(city=city, provider=provider, status=str(0), meta=str(''), keyword=keyword) db.session.add(new_job) db.session.commit() session['mssg'] = " 👍 Job added to list." return redirect('/jobs') else: session[ 'mssg'] = " 🙃 Job already exsists. You can re-run the job from the list below , or run a new job with different parameters." return redirect('/jobs') else: print(form.errors) return render_template('jobs.html', form=form, job_list=job_list, mssg=session['mssg']), 200