where('eid',$attributes['eid'])->max('item_uid') + 1; $attributes['item_uid'] = $uid; static::query()->create($attributes); return Item::find($uid); } protected static function extended($columns=Array()){ return Item::whereNull('returned_at') ->join('containers','items.cid','=','containers.cid') ->leftJoin('currentfiles','items.iid','=','currentfiles.iid'); } static function byEvent($eid){ return Item::extended()->where('eid','=',$eid) ->select('items.*','currentfiles.hash as file', 'containers.name as box'); } static function all($columns=Array()){ return Item::extended($columns) ->select('items.*','currentfiles.hash as file', 'containers.name as box') ->get(); } static function find($id){ return Item::extended() ->select('items.*','currentfiles.hash as file', 'containers.name as box') ->where('items.iid', '=', $id)->first(); } }