Move "Fix Worktime" page to core
parent
8fd0b23144
commit
89a565f437
|
@ -1,9 +1,11 @@
|
||||||
#!/usr/bin/perl
|
#!/usr/bin/perl
|
||||||
# CustIS Bug 68921 - "Супер-TodayWorktime", или массовая фиксация трудозатрат
|
# "Super-Fix-Worktime" page - allows to enter worktime for many bugs at once,
|
||||||
# по нескольким багам, за нескольких сотрудников, за различные периоды.
|
# even for past dates and/or for other users, if you have 'superworktime' privilege.
|
||||||
# Для фиксации времени задним числом / другим юзером требует группу worktimeadmin.
|
# Originally CustIS Bug 68921.
|
||||||
|
# License: Dual-license GPL 3.0+ or MPL 1.1+
|
||||||
|
# Author: Vitaliy Filippov <vitalif@mail.ru>
|
||||||
|
|
||||||
package BugWorkTime;
|
package Bugzilla::FixWorktimePage;
|
||||||
|
|
||||||
use strict;
|
use strict;
|
||||||
use POSIX;
|
use POSIX;
|
|
@ -47,6 +47,7 @@ use Bugzilla::Keyword;
|
||||||
use Bugzilla::Field;
|
use Bugzilla::Field;
|
||||||
use Bugzilla::Status;
|
use Bugzilla::Status;
|
||||||
use Bugzilla::Token;
|
use Bugzilla::Token;
|
||||||
|
use Bugzilla::FixWorktimePage;
|
||||||
|
|
||||||
use Time::HiRes qw(gettimeofday);
|
use Time::HiRes qw(gettimeofday);
|
||||||
use Date::Parse;
|
use Date::Parse;
|
||||||
|
@ -77,10 +78,9 @@ Bugzilla->login();
|
||||||
my $superworktime;
|
my $superworktime;
|
||||||
if (($ARGS->{format}||'') eq 'superworktime')
|
if (($ARGS->{format}||'') eq 'superworktime')
|
||||||
{
|
{
|
||||||
require BugWorkTime;
|
|
||||||
$superworktime = 1;
|
$superworktime = 1;
|
||||||
Bugzilla->login(LOGIN_REQUIRED);
|
Bugzilla->login(LOGIN_REQUIRED);
|
||||||
BugWorkTime::HandleSuperWorktime($vars, $ARGS);
|
Bugzilla::FixWorktimePage::HandleSuperWorktime($vars, $ARGS);
|
||||||
}
|
}
|
||||||
|
|
||||||
# If a parameter starts with cmd-, this means the And or Or button has been
|
# If a parameter starts with cmd-, this means the And or Or button has been
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
[% IF error == "move_worktime_empty" %]
|
|
||||||
Вы пытаетесь перенести время или распределить его в пропорции, взятой из
|
|
||||||
<a href="show_bug.cgi?id=[% bug_id | html %]">[% terms.Bug %] [% bug_id | html %]</a>,
|
|
||||||
но в нём нет списанного
|
|
||||||
[% IF who %]пользователем [% who.identity | html %][% END %]
|
|
||||||
[% IF from || to %]за период [% IF from %]с [% from | html%][% IF to %] по [% END %][% END %][% to | html %][% END %]
|
|
||||||
времени.
|
|
||||||
[% END %]
|
|
|
@ -15,8 +15,7 @@ use Bugzilla::Search;
|
||||||
use Bugzilla::Search::Saved;
|
use Bugzilla::Search::Saved;
|
||||||
use Bugzilla::Constants;
|
use Bugzilla::Constants;
|
||||||
use Bugzilla::CheckerUtils;
|
use Bugzilla::CheckerUtils;
|
||||||
|
use Bugzilla::FixWorktimePage;
|
||||||
use BugWorkTime; # extensions/custis/lib/
|
|
||||||
|
|
||||||
my $user = Bugzilla->login(LOGIN_REQUIRED);
|
my $user = Bugzilla->login(LOGIN_REQUIRED);
|
||||||
my $userid = $user->id;
|
my $userid = $user->id;
|
||||||
|
@ -90,7 +89,7 @@ if (@idlist || @lines)
|
||||||
foreach my $id (@{$wtime->{IDS}})
|
foreach my $id (@{$wtime->{IDS}})
|
||||||
{
|
{
|
||||||
$dbh->bz_start_transaction();
|
$dbh->bz_start_transaction();
|
||||||
if (!BugWorkTime::FixWorktime($id, $wtime->{$id}->{time}, join("\n", @{$wtime->{$id}->{comments} || []})))
|
if (!Bugzilla::FixWorktimePage::FixWorktime($id, $wtime->{$id}->{time}, join("\n", @{$wtime->{$id}->{comments} || []})))
|
||||||
{
|
{
|
||||||
$rollback = 1;
|
$rollback = 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1380,6 +1380,21 @@
|
||||||
[% END %]
|
[% END %]
|
||||||
[% END %]
|
[% END %]
|
||||||
|
|
||||||
|
[% BLOCK error_move_worktime_empty %]
|
||||||
|
[% title = "No Worktime In Selected Bug" %]
|
||||||
|
You are trying to move or split Hours Worked by in ratio taken from
|
||||||
|
<a href="show_bug.cgi?id=[% bug_id | html %]">[% terms.Bug %] [% bug_id | html %]</a>,
|
||||||
|
bug there is no working time entered
|
||||||
|
[% IF who %]by user [% who.identity | html %][% END %]
|
||||||
|
[% IF from && to %]
|
||||||
|
between [% from | html %] and [% to | html %]
|
||||||
|
[% ELSIF from %]
|
||||||
|
after [% from | html %]
|
||||||
|
[% ELSIF to %]
|
||||||
|
before [% to | html %]
|
||||||
|
[% END %].
|
||||||
|
[% END %]
|
||||||
|
|
||||||
[% BLOCK error_need_quip %]
|
[% BLOCK error_need_quip %]
|
||||||
[% title = "Quip Required" %]
|
[% title = "Quip Required" %]
|
||||||
[% docslinks = {'quips.html' => 'About quips'} %]
|
[% docslinks = {'quips.html' => 'About quips'} %]
|
||||||
|
|
Loading…
Reference in New Issue