<commit_before>#encoding: utf-8
require 'rubygems'
require 'sinatra'
require 'sinatra/reloader'
require 'sqlite3'

#процедура инициализации БД

def init_db
	@db = SQLite3::Database.new "MyBlog.db"
	@db.results_as_hash = true
end

#before вызывается каждый раз при перезагрузке
#любой страницы

before do
	#инициализация БД
	init_db
end

#configure вызывается каждый раз при инициализации приложения
#когда изменился код программы и  перезагрузилась страница

configure do
	#инициализауия БД
	init_db
	#создается таблица если ее еще не существует
	@db.execute 'CREATE TABLE IF NOT EXISTS	Posts
	(
	id	INTEGER PRIMARY KEY AUTOINCREMENT,
	created_date DATE,
	content	TEXT
	)'
end


get '/' do

	#выбираем список постов
	
	@results = @db.execute 'select * from Posts order by id desc'

	erb :index			
end

#обработчик get-запроса /new
#браузер получает страницу с сервера

get '/new' do
  erb :new
end

#обработчие post-запроса /new
#браузер отправляет страницу на сервер

post '/new' do
#получаем переменную из post-запроса 
  content = params[:content]

  if content.length <= 0
  		@error = "Введите текст поста"
  		return erb :new
  end

  #сщхранение данных в БД

  @db.execute 'insert into Posts (content, created_date) values (?, datetime())', [content]
  erb "You typed #{content}"
end<commit_msg>Redirect to main page while adding a post<commit_after>#encoding: utf-8
require 'rubygems'
require 'sinatra'
require 'sinatra/reloader'
require 'sqlite3'

#процедура инициализации БД

def init_db
	@db = SQLite3::Database.new "MyBlog.db"
	@db.results_as_hash = true
end

#before вызывается каждый раз при перезагрузке
#любой страницы

before do
	#инициализация БД
	init_db
end

#configure вызывается каждый раз при инициализации приложения
#когда изменился код программы и  перезагрузилась страница

configure do
	#инициализауия БД
	init_db
	#создается таблица если ее еще не существует
	@db.execute 'CREATE TABLE IF NOT EXISTS	Posts
	(
	id	INTEGER PRIMARY KEY AUTOINCREMENT,
	created_date DATE,
	content	TEXT
	)'
end


get '/' do

	#выбираем список постов
	
	@results = @db.execute 'select * from Posts order by id desc'

	erb :index			
end

#обработчик get-запроса /new
#браузер получает страницу с сервера

get '/new' do
  erb :new
end

#обработчие post-запроса /new
#браузер отправляет страницу на сервер

post '/new' do
#получаем переменную из post-запроса 
  content = params[:content]

  if content.length <= 0
  		@error = "Введите текст поста"
  		return erb :new
  end

  #сщхранение данных в БД

  @db.execute 'insert into Posts (content, created_date) values (?, datetime())', [content]
  
  #перенапрвление на главную страницу

  redirect to ('/')
  
end
{'fraction_non_alphanumeric': 0.07908545727136432, 'fraction_numerical': 0.0029985007496251873, 'mean_word_length': 4.243614931237721, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2377766', 'n_tokens_mistral': 1098, 'n_tokens_neox': 1163, 'n_words': 318}