Completed
Push — master ( 080abf...a1810f )
by Nicolaas
01:41
created

code/model/BuyableStockManualUpdate.php (2 issues)

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
/**
3
 *@author: Nicolaas [at] Sunny Side Up . Co . Nz
4
 *@description: manual change for a buyable
5
 * the buyable available quantity can be changed (manually overridden) using this class.
6
 *
7
 * All entries link to the BuyableStockCalculatedQuantity object.
8
 * The BuyableStockCalculatedQuantity objects calculates, for each buyable,
9
 * how many are available.
10
 *
11
 **/
12
13
class BuyableStockManualUpdate extends DataObject
14
{
15
    private static $db = array(
16
        "Quantity" => "Int",
17
        "ExternalUpdate" => "Boolean"
18
    );
19
20
    private static $has_one = array(
21
        "Parent" => "BuyableStockCalculatedQuantity",
22
        "Member" => "Member"
23
    );
24
25
    //MODEL ADMIN STUFF
26
27
    private static $searchable_fields = array(
28
        "Quantity",
29
        "MemberID"
30
    );
31
32
    private static $field_labels = array(
33
        "Quantity",
34
        "ParentID"  => "Buyable",
35
        "MemberID"  => "Updated by ..."
36
    );
37
38
    private static $summary_fields = array(
39
        "Parent.Name" => "Buyable",
40
        "Member.FirstName" => "Updater",
41
        "Quantity" => "Quantity"
42
    );
43
44
    private static $api_access = true;
45
46
47
    private static $indexes = [
0 ignored issues
show
The property $indexes is not used and could be removed.

This check marks private properties in classes that are never used. Those properties can be removed.

Loading history...
48
        'LastEdited' =>  true
49
    ];
50
51
    private static $default_sort = [
0 ignored issues
show
The property $default_sort is not used and could be removed.

This check marks private properties in classes that are never used. Those properties can be removed.

Loading history...
52
        'LastEdited' =>  'DESC',
53
        'ParentID' => 'ASC',
54
        'ID' => 'DESC'
55
    ];
56
57
    private static $singular_name = "Stock Manual Update Entry";
58
    public function i18n_singular_name()
59
    {
60
        return _t("BuyableStockManualUpdate.STOCKUPDATEENTRY", "Stock Manual Update Entry");
61
    }
62
63
    private static $plural_name = "Stock Manual Update Entries";
64
    public function i18n_plural_name()
65
    {
66
        return _t("BuyableStockManualUpdate.STOCKUPDATEENTRIES", "Stock Manual Update Entries");
67
    }
68
69
    public function canView($member = null)
70
    {
71
        return $this->canDoAnything($member);
72
    }
73
74
    public function canCreate($member = null)
75
    {
76
        return $this->canDoAnything($member);
77
    }
78
79
    public function canEdit($member = null)
80
    {
81
        return false;
82
    }
83
84
    public function canDelete($member = null)
85
    {
86
        return false;
87
    }
88
89 View Code Duplication
    protected function canDoAnything($member = null)
90
    {
91
        $shopAdminCode = EcommerceConfig::get("EcommerceRole", "admin_permission_code");
92
        if (!Permission::check($shopAdminCode)) {
93
            Security::permissionFailure($this, _t('Security.PERMFAILURE', ' This page is secured and you need administrator rights to access it. Enter your credentials below and we will send you right along.'));
94
        }
95
        return true;
96
    }
97
}
98