View | Details | Raw Unified | Return to bug 11897
Collapse All | Expand All

(-)a/installer/data/mysql/atomicupdate/stockrot_tables.sql (+62 lines)
Line 0 Link Here
1
-- Stock Rotation Rotas
2
3
CREATE TABLE IF NOT EXISTS stockrotationrotas (
4
    rota_id int(11) auto_increment,          -- Stockrotation rota ID
5
    title varchar(100) NOT NULL,            -- Title for this rota
6
    description text NOT NULL default '',   -- Description for this rota
7
    cyclical tinyint(1) NOT NULL default 0, -- Should items on this rota keep cycling?
8
    active tinyint(1) NOT NULL default 0,   -- Is this rota currently active?
9
    PRIMARY KEY (`rota_id`)
10
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
11
12
-- Stock Rotation Stages
13
14
CREATE TABLE IF NOT EXISTS stockrotationstages (
15
    stage_id int(11) auto_increment,     -- Unique stage ID
16
    position int(11) NOT NULL,           -- The position of this stage within its rota
17
    rota_id int(11) NOT NULL,            -- The rota this stage belongs to
18
    branchcode_id varchar(10) NOT NULL,  -- Branch this stage relates to
19
    duration int(11) NOT NULL default 4, -- The number of days items shoud occupy this stage
20
    PRIMARY KEY (`stage_id`),
21
    CONSTRAINT `stockrotationstages_rifk`
22
      FOREIGN KEY (`rota_id`)
23
      REFERENCES `stockrotationrotas` (`rota_id`)
24
      ON UPDATE CASCADE ON DELETE CASCADE,
25
    CONSTRAINT `stockrotationstages_bifk`
26
      FOREIGN KEY (`branchcode_id`)
27
      REFERENCES `branches` (`branchcode`)
28
      ON UPDATE CASCADE ON DELETE CASCADE
29
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
30
31
-- Stock Rotation Items
32
33
CREATE TABLE IF NOT EXISTS stockrotationitems (
34
    itemnumber_id int(11) NOT NULL,         -- Itemnumber to link to a stage & rota
35
    stage_id int(11) NOT NULL,              -- stage ID to link the item to
36
    indemand tinyint(1) NOT NULL default 0, -- Should this item be skipped for rotation?
37
    fresh tinyint(1) NOT NULL default 0,    -- Flag showing item is only just added to rota
38
    PRIMARY KEY (itemnumber_id),
39
    CONSTRAINT `stockrotationitems_iifk`
40
      FOREIGN KEY (`itemnumber_id`)
41
      REFERENCES `items` (`itemnumber`)
42
      ON UPDATE CASCADE ON DELETE CASCADE,
43
    CONSTRAINT `stockrotationitems_sifk`
44
      FOREIGN KEY (`stage_id`)
45
      REFERENCES `stockrotationstages` (`stage_id`)
46
      ON UPDATE CASCADE ON DELETE CASCADE
47
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
48
49
-- System preferences
50
51
INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES
52
       ('StockRotation','0','If ON, enables the stock rotation module','','YesNo'),
53
       ('RotationPreventTransfers','0','If ON, prevent any transfers for items on stock rotation rotas, except for stock rotation transfers','','YesNo');
54
55
-- Permissions
56
57
INSERT IGNORE INTO userflags (bit, flag, flagdesc, defaulton) VALUES
58
       (21, 'stockrotation', 'Manage stockrotation operations', 0);
59
60
INSERT IGNORE INTO permissions (module_bit, code, description) VALUES
61
       (21, 'can_edit_rotas', 'Create, edit and delete rotas'),
62
       (21, 'can_add_items_rotas', 'Add and remove items from rotas');
(-)a/installer/data/mysql/kohastructure.sql (+54 lines)
Lines 4147-4152 CREATE TABLE illrequests ( Link Here
4147
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4147
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4148
4148
4149
--
4149
--
4150
-- Table structure for table `stockrotationrotas`
4151
--
4152
4153
CREATE TABLE IF NOT EXISTS stockrotationrotas (
4154
    rota_id int(11) auto_increment,          -- Stockrotation rota ID
4155
    title varchar(100) NOT NULL,            -- Title for this rota
4156
    description text NOT NULL default '',   -- Description for this rota
4157
    cyclical tinyint(1) NOT NULL default 0, -- Should items on this rota keep cycling?
4158
    active tinyint(1) NOT NULL default 0,   -- Is this rota currently active?
4159
    PRIMARY KEY (`rota_id`)
4160
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4161
4162
--
4163
-- Table structure for table `stockrotationstages`
4164
--
4165
4166
CREATE TABLE IF NOT EXISTS stockrotationstages (
4167
    stage_id int(11) auto_increment,     -- Unique stage ID
4168
    position int(11) NOT NULL,           -- The position of this stage within its rota
4169
    rota_id int(11) NOT NULL,            -- The rota this stage belongs to
4170
    branchcode_id varchar(10) NOT NULL,  -- Branch this stage relates to
4171
    duration int(11) NOT NULL default 4, -- The number of days items shoud occupy this stage
4172
    PRIMARY KEY (`stage_id`),
4173
    CONSTRAINT `stockrotationstages_rifk`
4174
      FOREIGN KEY (`rota_id`)
4175
      REFERENCES `stockrotationrotas` (`rota_id`)
4176
      ON UPDATE CASCADE ON DELETE CASCADE,
4177
    CONSTRAINT `stockrotationstages_bifk`
4178
      FOREIGN KEY (`branchcode_id`)
4179
      REFERENCES `branches` (`branchcode`)
4180
      ON UPDATE CASCADE ON DELETE CASCADE
4181
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4182
4183
--
4150
-- Table structure for table `illrequestattributes`
4184
-- Table structure for table `illrequestattributes`
4151
--
4185
--
4152
4186
Lines 4162-4167 CREATE TABLE illrequestattributes ( Link Here
4162
      ON UPDATE CASCADE ON DELETE CASCADE
4196
      ON UPDATE CASCADE ON DELETE CASCADE
4163
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4197
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4164
4198
4199
--
4200
-- Table structure for table `stockrotationitems`
4201
--
4202
4203
CREATE TABLE IF NOT EXISTS stockrotationitems (
4204
    itemnumber_id int(11) NOT NULL,         -- Itemnumber to link to a stage & rota
4205
    stage_id int(11) NOT NULL,              -- stage ID to link the item to
4206
    indemand tinyint(1) NOT NULL default 0, -- Should this item be skipped for rotation?
4207
    fresh tinyint(1) NOT NULL default 0,    -- Flag showing item is only just added to rota
4208
    PRIMARY KEY (itemnumber_id),
4209
    CONSTRAINT `stockrotationitems_iifk`
4210
      FOREIGN KEY (`itemnumber_id`)
4211
      REFERENCES `items` (`itemnumber`)
4212
      ON UPDATE CASCADE ON DELETE CASCADE,
4213
    CONSTRAINT `stockrotationitems_sifk`
4214
      FOREIGN KEY (`stage_id`)
4215
      REFERENCES `stockrotationstages` (`stage_id`)
4216
      ON UPDATE CASCADE ON DELETE CASCADE
4217
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
4218
4165
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
4219
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
4166
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
4220
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
4167
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
4221
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
(-)a/installer/data/mysql/sysprefs.sql (-1 / +3 lines)
Lines 600-604 INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` Link Here
600
('XSLTListsDisplay','default','','Enable XSLT stylesheet control over lists pages display on intranet','Free'),
600
('XSLTListsDisplay','default','','Enable XSLT stylesheet control over lists pages display on intranet','Free'),
601
('XSLTResultsDisplay','default','','Enable XSL stylesheet control over results page display on intranet','Free'),
601
('XSLTResultsDisplay','default','','Enable XSL stylesheet control over results page display on intranet','Free'),
602
('z3950AuthorAuthFields','701,702,700',NULL,'Define the MARC biblio fields for Personal Name Authorities to fill biblio.author','free'),
602
('z3950AuthorAuthFields','701,702,700',NULL,'Define the MARC biblio fields for Personal Name Authorities to fill biblio.author','free'),
603
('z3950NormalizeAuthor','0','','If ON, Personal Name Authorities will replace authors in biblio.author','YesNo')
603
('z3950NormalizeAuthor','0','','If ON, Personal Name Authorities will replace authors in biblio.author','YesNo'),
604
('StockRotation','0',NULL,'If ON, enables the stock rotation module','YesNo'),
605
('RotationPreventTransfers','0',NULL,'If ON, prevent any transfers for items on stock rotation rotas, except for stock rotation transfers','YesNo')
604
;
606
;
(-)a/installer/data/mysql/userflags.sql (+1 lines)
Lines 20-23 INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES Link Here
20
(20, 'lists', 'Lists', 0),
20
(20, 'lists', 'Lists', 0),
21
(21, 'clubs', 'Patron clubs', '0'),
21
(21, 'clubs', 'Patron clubs', '0'),
22
(22,'ill','The Interlibrary Loans Module',0)
22
(22,'ill','The Interlibrary Loans Module',0)
23
(23, 'stockrotation', 'Manage stockrotation operations', 0)
23
;
24
;
(-)a/installer/data/mysql/userpermissions.sql (-1 / +3 lines)
Lines 81-85 INSERT INTO permissions (module_bit, code, description) VALUES Link Here
81
   (20, 'delete_public_lists', 'Delete public lists'),
81
   (20, 'delete_public_lists', 'Delete public lists'),
82
   (21, 'edit_templates', 'Create and update club templates'),
82
   (21, 'edit_templates', 'Create and update club templates'),
83
   (21, 'edit_clubs', 'Create and update clubs'),
83
   (21, 'edit_clubs', 'Create and update clubs'),
84
   (21, 'enroll', 'Enroll patrons in clubs')
84
   (21, 'enroll', 'Enroll patrons in clubs'),
85
   (22, 'can_edit_rotas', 'Create, edit and delete rotas'),
86
   (22, 'can_add_items_rotas', 'Add and remove items from rotas')
85
;
87
;
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc (+1 lines)
Lines 21-26 Link Here
21
    [%- CASE 'lists' -%]<span>Lists</span>
21
    [%- CASE 'lists' -%]<span>Lists</span>
22
    [%- CASE 'clubs' -%]<span>Patron clubs</span>
22
    [%- CASE 'clubs' -%]<span>Patron clubs</span>
23
    [%- CASE 'ill' -%]<span>Create and modify Interlibrary loan requests</span>
23
    [%- CASE 'ill' -%]<span>Create and modify Interlibrary loan requests</span>
24
    [%- CASE 'stockrotation' -%]<span>Manage stockrotation operations</span>
24
    [%- END -%]
25
    [%- END -%]
25
[%- END -%]
26
[%- END -%]
26
27
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref (-1 / +13 lines)
Lines 868-873 Circulation: Link Here
868
                  yes: Enable
868
                  yes: Enable
869
                  no: Disable
869
                  no: Disable
870
            - "housebound module"
870
            - "housebound module"
871
    Stockrotation module:
872
        -
873
            - pref: StockRotation
874
              choices:
875
                  yes: Enable
876
                  no: Disable
877
            - "Enable the stock rotation module"
878
        -
879
            - pref: RotationPreventTransfers
880
              choices:
881
                  yes: Enable
882
                  no: Disable
883
            - "Prevent branchtransfers on items in stockrotation rotas"
871
    Article Requests:
884
    Article Requests:
872
        -
885
        -
873
            - pref: ArticleRequests
886
            - pref: ArticleRequests
874
- 

Return to bug 11897