% if _get["choice"] == "dosave" save_hash = { :name => _post["texname"], :descr => _post["texdescr"], :project_id => _post["selproject"], :type => _post["seltype"], :status => _post["selstatus"], :priority => _post["selpriority"] } end if _get["task_id"].to_i > 0 task = _ob.get(:Task, _get["task_id"]) title = sprintf(_("Edit task: %s."), task.name.html) project_id = task[:project_id] if _get["choice"] == "dosave" task.update(save_hash) _hb.redirect("?show=task_show&task_id=#{task.id}") end if _get["choice"] == "dodelete" _ob.delete(task) _hb.redirect("?show=task_search") end else title = _("Add new task") project_id = _get["project_id"] if _get["project_id"].to_i > 0 if _get["choice"] == "dosave" begin task = _ob.add(:Task, save_hash) _hb.redirect("?show=task_show&task_id=#{task.id}") rescue => e _hb.alert(e.message).back end end end project_opts = _ob.list_optshash(:Project) if project_opts.empty? _hb.alert(_("No projects has been added to this installation yet - please do that first.")).back end #Generate user-projects for the select-box. projects_opts = {"" => _("None")} if _site.has_rank?("admin") _ob.list(:Project) do |project| projects_opts[project.id] = project.name end else _site.user.projects.each do |link| projects_opts[link[:project_id]] = link.project.name end end sorted = projects_opts.sort do |a, b| if a[0] == "" ret = -1 elsif b[0] == "" ret = 1 else ret = a[1].downcase <=> b[1].downcase end ret end projects_opts = {} sorted.each do |sort| projects_opts[sort[0]] = sort[1] end #Write page title. print _site.header(title) %>
<% browser = Knj::Web.browser %>