123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399 |
- (window["webpackJsonp"] = window["webpackJsonp"] || []).push([[2],{
- /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu.vue?vue&type=script&lang=js&":
- /*!***************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/popoverMenu.vue?vue&type=script&lang=js& ***!
- \***************************************************************************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _popoverMenu_popoverItem__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./popoverMenu/popoverItem */ "./src/components/popoverMenu/popoverItem.vue");
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ __webpack_exports__["default"] = ({
- name: 'popoverMenu',
- props: ['menu'],
- components: {
- popoverItem: _popoverMenu_popoverItem__WEBPACK_IMPORTED_MODULE_0__["default"]
- }
- });
- /***/ }),
- /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu/popoverItem.vue?vue&type=script&lang=js&":
- /*!***************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/popoverMenu/popoverItem.vue?vue&type=script&lang=js& ***!
- \***************************************************************************************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ __webpack_exports__["default"] = ({
- props: ['item']
- });
- /***/ }),
- /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/userList.vue?vue&type=script&lang=js&":
- /*!************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/userList.vue?vue&type=script&lang=js& ***!
- \************************************************************************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _userList_userRow__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./userList/userRow */ "./src/components/userList/userRow.vue");
- /* harmony import */ var vue_multiselect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-multiselect */ "./node_modules/vue-multiselect/dist/vue-multiselect.min.js");
- /* harmony import */ var vue_multiselect__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(vue_multiselect__WEBPACK_IMPORTED_MODULE_1__);
- /* harmony import */ var vue_infinite_loading__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-infinite-loading */ "./node_modules/vue-infinite-loading/dist/vue-infinite-loading.js");
- /* harmony import */ var vue_infinite_loading__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(vue_infinite_loading__WEBPACK_IMPORTED_MODULE_2__);
- /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- /* harmony default export */ __webpack_exports__["default"] = ({
- name: 'userList',
- props: ['users', 'showConfig', 'selectedGroup', 'externalActions'],
- components: {
- userRow: _userList_userRow__WEBPACK_IMPORTED_MODULE_0__["default"],
- Multiselect: vue_multiselect__WEBPACK_IMPORTED_MODULE_1___default.a,
- InfiniteLoading: vue_infinite_loading__WEBPACK_IMPORTED_MODULE_2___default.a
- },
- data: function data() {
- var unlimitedQuota = {
- id: 'none',
- label: t('settings', 'Unlimited')
- },
- defaultQuota = {
- id: 'default',
- label: t('settings', 'Default quota')
- };
- return {
- unlimitedQuota: unlimitedQuota,
- defaultQuota: defaultQuota,
- loading: {
- all: false,
- groups: false
- },
- scrolled: false,
- searchQuery: '',
- newUser: {
- id: '',
- displayName: '',
- password: '',
- mailAddress: '',
- groups: [],
- subAdminsGroups: [],
- quota: defaultQuota,
- language: {
- code: 'en',
- name: t('settings', 'Default language')
- }
- }
- };
- },
- mounted: function mounted() {
- if (!this.settings.canChangePassword) {
- OC.Notification.showTemporary(t('settings', 'Password change is disabled because the master key is disabled'));
- }
- /**
- * Init default language from server data. The use of this.settings
- * requires a computed variable, which break the v-model binding of the form,
- * this is a much easier solution than getter and setter on a computed var
- */
- vue__WEBPACK_IMPORTED_MODULE_3__["default"].set(this.newUser.language, 'code', this.settings.defaultLanguage);
- /**
- * In case the user directly loaded the user list within a group
- * the watch won't be triggered. We need to initialize it.
- */
- this.setNewUserDefaultGroup(this.$route.params.selectedGroup);
- /**
- * Register search
- */
- this.userSearch = new OCA.Search(this.search, this.resetSearch);
- },
- computed: {
- settings: function settings() {
- return this.$store.getters.getServerData;
- },
- filteredUsers: function filteredUsers() {
- if (this.selectedGroup === 'disabled') {
- var disabledUsers = this.users.filter(function (user) {
- return user.enabled === false;
- });
- if (disabledUsers.length === 0 && this.$refs.infiniteLoading && this.$refs.infiniteLoading.isComplete) {
- // disabled group is empty, redirection to all users
- this.$router.push({
- name: 'users'
- });
- this.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');
- }
- return disabledUsers;
- }
- if (!this.settings.isAdmin) {
- // we don't want subadmins to edit themselves
- return this.users.filter(function (user) {
- return user.enabled !== false && user.id !== oc_current_user;
- });
- }
- return this.users.filter(function (user) {
- return user.enabled !== false;
- });
- },
- groups: function groups() {
- // data provided php side + remove the disabled group
- return this.$store.getters.getGroups.filter(function (group) {
- return group.id !== 'disabled';
- }).sort(function (a, b) {
- return a.name.localeCompare(b.name);
- });
- },
- canAddGroups: function canAddGroups() {
- // disabled if no permission to add new users to group
- return this.groups.map(function (group) {
- // clone object because we don't want
- // to edit the original groups
- group = Object.assign({}, group);
- group.$isDisabled = group.canAdd === false;
- return group;
- });
- },
- subAdminsGroups: function subAdminsGroups() {
- // data provided php side
- return this.$store.getters.getSubadminGroups;
- },
- quotaOptions: function quotaOptions() {
- // convert the preset array into objects
- var quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {
- return acc.concat({
- id: cur,
- label: cur
- });
- }, []); // add default presets
- quotaPreset.unshift(this.unlimitedQuota);
- quotaPreset.unshift(this.defaultQuota);
- return quotaPreset;
- },
- minPasswordLength: function minPasswordLength() {
- return this.$store.getters.getPasswordPolicyMinLength;
- },
- usersOffset: function usersOffset() {
- return this.$store.getters.getUsersOffset;
- },
- usersLimit: function usersLimit() {
- return this.$store.getters.getUsersLimit;
- },
- /* LANGUAGES */
- languages: function languages() {
- return Array({
- label: t('settings', 'Common languages'),
- languages: this.settings.languages.commonlanguages
- }, {
- label: t('settings', 'All languages'),
- languages: this.settings.languages.languages
- });
- }
- },
- watch: {
- // watch url change and group select
- selectedGroup: function selectedGroup(val, old) {
- this.$store.commit('resetUsers');
- this.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');
- this.setNewUserDefaultGroup(val);
- }
- },
- methods: {
- onScroll: function onScroll(event) {
- this.scrolled = event.target.scrollTo > 0;
- },
- /**
- * Validate quota string to make sure it's a valid human file size
- *
- * @param {string} quota Quota in readable format '5 GB'
- * @returns {Object}
- */
- validateQuota: function validateQuota(quota) {
- // only used for new presets sent through @Tag
- var validQuota = OC.Util.computerFileSize(quota);
- if (validQuota !== null && validQuota >= 0) {
- // unify format output
- quota = OC.Util.humanFileSize(OC.Util.computerFileSize(quota));
- return this.newUser.quota = {
- id: quota,
- label: quota
- };
- } // Default is unlimited
- return this.newUser.quota = this.quotaOptions[0];
- },
- infiniteHandler: function infiniteHandler($state) {
- this.$store.dispatch('getUsers', {
- offset: this.usersOffset,
- limit: this.usersLimit,
- group: this.selectedGroup !== 'disabled' ? this.selectedGroup : '',
- search: this.searchQuery
- }).then(function (response) {
- response ? $state.loaded() : $state.complete();
- });
- },
- /* SEARCH */
- search: function search(query) {
- this.searchQuery = query;
- this.$store.commit('resetUsers');
- this.$refs.infiniteLoading.$emit('$InfiniteLoading:reset');
- },
- resetSearch: function resetSearch() {
- this.search('');
- },
- resetForm: function resetForm() {
- // revert form to original state
- Object.assign(this.newUser, this.$options.data.call(this).newUser);
- this.loading.all = false;
- },
- createUser: function createUser() {
- var _this = this;
- this.loading.all = true;
- this.$store.dispatch('addUser', {
- userid: this.newUser.id,
- password: this.newUser.password,
- displayName: this.newUser.displayName,
- email: this.newUser.mailAddress,
- groups: this.newUser.groups.map(function (group) {
- return group.id;
- }),
- subadmin: this.newUser.subAdminsGroups.map(function (group) {
- return group.id;
- }),
- quota: this.newUser.quota.id,
- language: this.newUser.language.code
- }).then(function () {
- return _this.resetForm();
- }).catch(function (error) {
- _this.loading.all = false;
- if (error.response && error.response.data && error.response.data.ocs && error.response.data.ocs.meta) {
- var statuscode = error.response.data.ocs.meta.statuscode;
- if (statuscode === 102) {
- // wrong username
- _this.$refs.newusername.focus();
- } else if (statuscode === 107) {
- // wrong password
- _this.$refs.newuserpassword.focus();
- }
- }
- });
- },
- setNewUserDefaultGroup: function setNewUserDefaultGroup(value) {
- if (value && value.length > 0) {
- // setting new user default group to the current selected one
- var currentGroup = this.groups.find(function (group) {
- return group.id === value;
- });
- if (currentGroup) {
- this.newUser.groups = [currentGroup];
- return;
- }
- } // fallback, empty selected group
- this.newUser.groups = [];
- },
- /**
- * Create a new group
- *
- * @param {string} groups Group id
- * @returns {Promise}
- */
- createGroup: function createGroup(gid) {
- var _this2 = this;
- this.loading.groups = true;
- this.$store.dispatch('addGroup', gid).then(function (group) {
- _this2.newUser.groups.push(_this2.groups.find(function (group) {
- return group.id === gid;
- }));
- _this2.loading.groups = false;
- }).catch(function () {
- _this2.loading.groups = false;
- });
- return this.$store.getters.getGroups[this.groups.length];
- }
- }
- });
- /***/ }),
- /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/userList/userRow.vue?vue&type=script&lang=js&":
- /*!********************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/components/userList/userRow.vue?vue&type=script&lang=js& ***!
- \********************************************************************************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _popoverMenu__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../popoverMenu */ "./src/components/popoverMenu.vue");
- /* harmony import */ var vue_click_outside__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-click-outside */ "./node_modules/vue-click-outside/index.js");
- /* harmony import */ var vue_click_outside__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(vue_click_outside__WEBPACK_IMPORTED_MODULE_1__);
- /* harmony import */ var vue_multiselect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-multiselect */ "./node_modules/vue-multiselect/dist/vue-multiselect.min.js");
- /* harmony import */ var vue_multiselect__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(vue_multiselect__WEBPACK_IMPORTED_MODULE_2__);
- /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
- /* harmony import */ var v_tooltip__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! v-tooltip */ "./node_modules/v-tooltip/dist/v-tooltip.esm.js");
- function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- vue__WEBPACK_IMPORTED_MODULE_3__["default"].use(v_tooltip__WEBPACK_IMPORTED_MODULE_4__["default"]);
- /* harmony default export */ __webpack_exports__["default"] = ({
- name: 'userRow',
- props: ['user', 'settings', 'groups', 'subAdminsGroups', 'quotaOptions', 'showConfig', 'languages', 'externalActions'],
- components: {
- popoverMenu: _popoverMenu__WEBPACK_IMPORTED_MODULE_0__["default"],
- Multiselect: vue_multiselect__WEBPACK_IMPORTED_MODULE_2___default.a
- },
- directives: {
- ClickOutside: vue_click_outside__WEBPACK_IMPORTED_MODULE_1___default.a
- },
- mounted: function mounted() {// required if popup needs to stay opened after menu click
- // since we only have disable/delete actions, let's close it directly
- // this.popupItem = this.$el;
- },
- data: function data() {
- return {
- rand: parseInt(Math.random() * 1000),
- openedMenu: false,
- feedbackMessage: '',
- loading: {
- all: false,
- displayName: false,
- password: false,
- mailAddress: false,
- groups: false,
- subadmins: false,
- quota: false,
- delete: false,
- disable: false,
- languages: false
- }
- };
- },
- computed: {
- /* USER POPOVERMENU ACTIONS */
- userActions: function userActions() {
- var actions = [{
- icon: 'icon-delete',
- text: t('settings', 'Delete user'),
- action: this.deleteUser
- }, {
- icon: this.user.enabled ? 'icon-close' : 'icon-add',
- text: this.user.enabled ? t('settings', 'Disable user') : t('settings', 'Enable user'),
- action: this.enableDisableUser
- }];
- if (this.user.email !== null && this.user.email !== '') {
- actions.push({
- icon: 'icon-mail',
- text: t('settings', 'Resend welcome email'),
- action: this.sendWelcomeMail
- });
- }
- return actions.concat(this.externalActions);
- },
- /* GROUPS MANAGEMENT */
- userGroups: function userGroups() {
- var _this = this;
- var userGroups = this.groups.filter(function (group) {
- return _this.user.groups.includes(group.id);
- });
- return userGroups;
- },
- userSubAdminsGroups: function userSubAdminsGroups() {
- var _this2 = this;
- var userSubAdminsGroups = this.subAdminsGroups.filter(function (group) {
- return _this2.user.subadmin.includes(group.id);
- });
- return userSubAdminsGroups;
- },
- availableGroups: function availableGroups() {
- var _this3 = this;
- return this.groups.map(function (group) {
- // clone object because we don't want
- // to edit the original groups
- var groupClone = Object.assign({}, group); // two settings here:
- // 1. user NOT in group but no permission to add
- // 2. user is in group but no permission to remove
- groupClone.$isDisabled = group.canAdd === false && !_this3.user.groups.includes(group.id) || group.canRemove === false && _this3.user.groups.includes(group.id);
- return groupClone;
- });
- },
- /* QUOTA MANAGEMENT */
- usedSpace: function usedSpace() {
- if (this.user.quota.used) {
- return t('settings', '{size} used', {
- size: OC.Util.humanFileSize(this.user.quota.used)
- });
- }
- return t('settings', '{size} used', {
- size: OC.Util.humanFileSize(0)
- });
- },
- usedQuota: function usedQuota() {
- var quota = this.user.quota.quota;
- if (quota > 0) {
- quota = Math.min(100, Math.round(this.user.quota.used / quota * 100));
- } else {
- var usedInGB = this.user.quota.used / (10 * Math.pow(2, 30)); //asymptotic curve approaching 50% at 10GB to visualize used stace with infinite quota
- quota = 95 * (1 - 1 / (usedInGB + 1));
- }
- return isNaN(quota) ? 0 : quota;
- },
- // Mapping saved values to objects
- userQuota: function userQuota() {
- if (this.user.quota.quota >= 0) {
- // if value is valid, let's map the quotaOptions or return custom quota
- var humanQuota = OC.Util.humanFileSize(this.user.quota.quota);
- var userQuota = this.quotaOptions.find(function (quota) {
- return quota.id === humanQuota;
- });
- return userQuota ? userQuota : {
- id: humanQuota,
- label: humanQuota
- };
- } else if (this.user.quota.quota === 'default') {
- // default quota is replaced by the proper value on load
- return this.quotaOptions[0];
- }
- return this.quotaOptions[1]; // unlimited
- },
- /* PASSWORD POLICY? */
- minPasswordLength: function minPasswordLength() {
- return this.$store.getters.getPasswordPolicyMinLength;
- },
- /* LANGUAGE */
- userLanguage: function userLanguage() {
- var _this4 = this;
- var availableLanguages = this.languages[0].languages.concat(this.languages[1].languages);
- var userLang = availableLanguages.find(function (lang) {
- return lang.code === _this4.user.language;
- });
- if (_typeof(userLang) !== 'object' && this.user.language !== '') {
- return {
- code: this.user.language,
- name: this.user.language
- };
- } else if (this.user.language === '') {
- return false;
- }
- return userLang;
- }
- },
- methods: {
- /* MENU HANDLING */
- toggleMenu: function toggleMenu() {
- this.openedMenu = !this.openedMenu;
- },
- hideMenu: function hideMenu() {
- this.openedMenu = false;
- },
- /**
- * Generate avatar url
- *
- * @param {string} user The user name
- * @param {int} size Size integer, default 32
- * @returns {string}
- */
- generateAvatar: function generateAvatar(user) {
- var size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 32;
- return OC.generateUrl('/avatar/{user}/{size}?v={version}', {
- user: user,
- size: size,
- version: oc_userconfig.avatar.version
- });
- },
- /**
- * Format array of groups objects to a string for the popup
- *
- * @param {array} groups The groups
- * @returns {string}
- */
- formatGroupsTitle: function formatGroupsTitle(groups) {
- var names = groups.map(function (group) {
- return group.name;
- });
- return names.slice(2).join(', ');
- },
- deleteUser: function deleteUser() {
- var _this5 = this;
- this.loading.delete = true;
- this.loading.all = true;
- var userid = this.user.id;
- return this.$store.dispatch('deleteUser', userid).then(function () {
- _this5.loading.delete = false;
- _this5.loading.all = false;
- });
- },
- enableDisableUser: function enableDisableUser() {
- var _this6 = this;
- this.loading.delete = true;
- this.loading.all = true;
- var userid = this.user.id;
- var enabled = !this.user.enabled;
- return this.$store.dispatch('enableDisableUser', {
- userid: userid,
- enabled: enabled
- }).then(function () {
- _this6.loading.delete = false;
- _this6.loading.all = false;
- });
- },
- /**
- * Set user displayName
- *
- * @param {string} displayName The display name
- * @returns {Promise}
- */
- updateDisplayName: function updateDisplayName() {
- var _this7 = this;
- var displayName = this.$refs.displayName.value;
- this.loading.displayName = true;
- this.$store.dispatch('setUserData', {
- userid: this.user.id,
- key: 'displayname',
- value: displayName
- }).then(function () {
- _this7.loading.displayName = false;
- _this7.$refs.displayName.value = displayName;
- });
- },
- /**
- * Set user password
- *
- * @param {string} password The email adress
- * @returns {Promise}
- */
- updatePassword: function updatePassword() {
- var _this8 = this;
- var password = this.$refs.password.value;
- this.loading.password = true;
- this.$store.dispatch('setUserData', {
- userid: this.user.id,
- key: 'password',
- value: password
- }).then(function () {
- _this8.loading.password = false;
- _this8.$refs.password.value = ''; // empty & show placeholder
- });
- },
- /**
- * Set user mailAddress
- *
- * @param {string} mailAddress The email adress
- * @returns {Promise}
- */
- updateEmail: function updateEmail() {
- var _this9 = this;
- var mailAddress = this.$refs.mailAddress.value;
- this.loading.mailAddress = true;
- this.$store.dispatch('setUserData', {
- userid: this.user.id,
- key: 'email',
- value: mailAddress
- }).then(function () {
- _this9.loading.mailAddress = false;
- _this9.$refs.mailAddress.value = mailAddress;
- });
- },
- /**
- * Create a new group and add user to it
- *
- * @param {string} groups Group id
- * @returns {Promise}
- */
- createGroup: function createGroup(gid) {
- var _this10 = this;
- this.loading = {
- groups: true,
- subadmins: true
- };
- this.$store.dispatch('addGroup', gid).then(function () {
- _this10.loading = {
- groups: false,
- subadmins: false
- };
- var userid = _this10.user.id;
- _this10.$store.dispatch('addUserGroup', {
- userid: userid,
- gid: gid
- });
- }).catch(function () {
- _this10.loading = {
- groups: false,
- subadmins: false
- };
- });
- return this.$store.getters.getGroups[this.groups.length];
- },
- /**
- * Add user to group
- *
- * @param {object} group Group object
- * @returns {Promise}
- */
- addUserGroup: function addUserGroup(group) {
- var _this11 = this;
- if (group.canAdd === false) {
- return false;
- }
- this.loading.groups = true;
- var userid = this.user.id;
- var gid = group.id;
- return this.$store.dispatch('addUserGroup', {
- userid: userid,
- gid: gid
- }).then(function () {
- return _this11.loading.groups = false;
- });
- },
- /**
- * Remove user from group
- *
- * @param {object} group Group object
- * @returns {Promise}
- */
- removeUserGroup: function removeUserGroup(group) {
- var _this12 = this;
- if (group.canRemove === false) {
- return false;
- }
- this.loading.groups = true;
- var userid = this.user.id;
- var gid = group.id;
- return this.$store.dispatch('removeUserGroup', {
- userid: userid,
- gid: gid
- }).then(function () {
- _this12.loading.groups = false; // remove user from current list if current list is the removed group
- if (_this12.$route.params.selectedGroup === gid) {
- _this12.$store.commit('deleteUser', userid);
- }
- }).catch(function () {
- _this12.loading.groups = false;
- });
- },
- /**
- * Add user to group
- *
- * @param {object} group Group object
- * @returns {Promise}
- */
- addUserSubAdmin: function addUserSubAdmin(group) {
- var _this13 = this;
- this.loading.subadmins = true;
- var userid = this.user.id;
- var gid = group.id;
- return this.$store.dispatch('addUserSubAdmin', {
- userid: userid,
- gid: gid
- }).then(function () {
- return _this13.loading.subadmins = false;
- });
- },
- /**
- * Remove user from group
- *
- * @param {object} group Group object
- * @returns {Promise}
- */
- removeUserSubAdmin: function removeUserSubAdmin(group) {
- var _this14 = this;
- this.loading.subadmins = true;
- var userid = this.user.id;
- var gid = group.id;
- return this.$store.dispatch('removeUserSubAdmin', {
- userid: userid,
- gid: gid
- }).then(function () {
- return _this14.loading.subadmins = false;
- });
- },
- /**
- * Dispatch quota set request
- *
- * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}
- * @returns {string}
- */
- setUserQuota: function setUserQuota() {
- var _this15 = this;
- var quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';
- this.loading.quota = true; // ensure we only send the preset id
- quota = quota.id ? quota.id : quota;
- this.$store.dispatch('setUserData', {
- userid: this.user.id,
- key: 'quota',
- value: quota
- }).then(function () {
- return _this15.loading.quota = false;
- });
- return quota;
- },
- /**
- * Validate quota string to make sure it's a valid human file size
- *
- * @param {string} quota Quota in readable format '5 GB'
- * @returns {Promise|boolean}
- */
- validateQuota: function validateQuota(quota) {
- // only used for new presets sent through @Tag
- var validQuota = OC.Util.computerFileSize(quota);
- if (validQuota !== null && validQuota >= 0) {
- // unify format output
- return this.setUserQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));
- } // if no valid do not change
- return false;
- },
- /**
- * Dispatch language set request
- *
- * @param {Object} lang language object {code:'en', name:'English'}
- * @returns {Object}
- */
- setUserLanguage: function setUserLanguage(lang) {
- var _this16 = this;
- this.loading.languages = true; // ensure we only send the preset id
- this.$store.dispatch('setUserData', {
- userid: this.user.id,
- key: 'language',
- value: lang.code
- }).then(function () {
- return _this16.loading.languages = false;
- });
- return lang;
- },
- /**
- * Dispatch new welcome mail request
- */
- sendWelcomeMail: function sendWelcomeMail() {
- var _this17 = this;
- this.loading.all = true;
- this.$store.dispatch('sendWelcomeMail', this.user.id).then(function (success) {
- if (success) {
- // Show feedback to indicate the success
- _this17.feedbackMessage = t('setting', 'Welcome mail sent!');
- setTimeout(function () {
- _this17.feedbackMessage = '';
- }, 2000);
- }
- _this17.loading.all = false;
- });
- }
- }
- });
- /***/ }),
- /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/views/Users.vue?vue&type=script&lang=js&":
- /*!****************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Users.vue?vue&type=script&lang=js& ***!
- \****************************************************************************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! nextcloud-vue */ "./node_modules/nextcloud-vue/dist/ncvuecomponents.js");
- /* harmony import */ var nextcloud_vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__);
- /* harmony import */ var _components_userList__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/userList */ "./src/components/userList.vue");
- /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js");
- /* harmony import */ var vue_localstorage__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-localstorage */ "./node_modules/vue-localstorage/dist/vue-local-storage.js");
- /* harmony import */ var vue_localstorage__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(vue_localstorage__WEBPACK_IMPORTED_MODULE_3__);
- /* harmony import */ var vue_multiselect__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vue-multiselect */ "./node_modules/vue-multiselect/dist/vue-multiselect.min.js");
- /* harmony import */ var vue_multiselect__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(vue_multiselect__WEBPACK_IMPORTED_MODULE_4__);
- /* harmony import */ var _store_api__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../store/api */ "./src/store/api.js");
- function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- //
- vue__WEBPACK_IMPORTED_MODULE_2__["default"].use(vue_localstorage__WEBPACK_IMPORTED_MODULE_3___default.a);
- /* harmony default export */ __webpack_exports__["default"] = ({
- name: 'Users',
- props: ['selectedGroup'],
- components: {
- AppNavigation: nextcloud_vue__WEBPACK_IMPORTED_MODULE_0__["AppNavigation"],
- userList: _components_userList__WEBPACK_IMPORTED_MODULE_1__["default"],
- Multiselect: vue_multiselect__WEBPACK_IMPORTED_MODULE_4___default.a
- },
- beforeMount: function beforeMount() {
- this.$store.commit('initGroups', {
- groups: this.$store.getters.getServerData.groups,
- orderBy: this.$store.getters.getServerData.sortGroups,
- userCount: this.$store.getters.getServerData.userCount
- });
- this.$store.dispatch('getPasswordPolicyMinLength');
- },
- created: function created() {
- // init the OCA.Settings.UserList object
- // and add the registerAction method
- Object.assign(OCA, {
- Settings: {
- UserList: {
- registerAction: this.registerAction
- }
- }
- });
- },
- data: function data() {
- return {
- // default quota is set to unlimited
- unlimitedQuota: {
- id: 'none',
- label: t('settings', 'Unlimited')
- },
- // temporary value used for multiselect change
- selectedQuota: false,
- externalActions: [],
- showAddGroupEntry: false,
- loadingAddGroup: false,
- showConfig: {
- showStoragePath: false,
- showUserBackend: false,
- showLastLogin: false,
- showNewUserForm: false,
- showLanguages: false
- }
- };
- },
- methods: {
- toggleNewUserMenu: function toggleNewUserMenu() {
- this.showConfig.showNewUserForm = !this.showConfig.showNewUserForm;
- if (this.showConfig.showNewUserForm) {
- vue__WEBPACK_IMPORTED_MODULE_2__["default"].nextTick(function () {
- window.newusername.focus();
- });
- }
- },
- getLocalstorage: function getLocalstorage(key) {
- // force initialization
- var localConfig = this.$localStorage.get(key); // if localstorage is null, fallback to original values
- this.showConfig[key] = localConfig !== null ? localConfig === 'true' : this.showConfig[key];
- return this.showConfig[key];
- },
- setLocalStorage: function setLocalStorage(key, status) {
- this.showConfig[key] = status;
- this.$localStorage.set(key, status);
- return status;
- },
- removeGroup: function removeGroup(groupid) {
- var self = this; // TODO migrate to a vue js confirm dialog component
- OC.dialogs.confirm(t('settings', 'You are about to remove the group {group}. The users will NOT be deleted.', {
- group: groupid
- }), t('settings', 'Please confirm the group removal '), function (success) {
- if (success) {
- self.$store.dispatch('removeGroup', groupid);
- }
- });
- },
- /**
- * Dispatch default quota set request
- *
- * @param {string|Object} quota Quota in readable format '5 GB' or Object {id: '5 GB', label: '5GB'}
- * @returns {string}
- */
- setDefaultQuota: function setDefaultQuota() {
- var _this = this;
- var quota = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';
- this.$store.dispatch('setAppConfig', {
- app: 'files',
- key: 'default_quota',
- // ensure we only send the preset id
- value: quota.id ? quota.id : quota
- }).then(function () {
- if (_typeof(quota) !== 'object') {
- quota = {
- id: quota,
- label: quota
- };
- }
- _this.defaultQuota = quota;
- });
- },
- /**
- * Validate quota string to make sure it's a valid human file size
- *
- * @param {string} quota Quota in readable format '5 GB'
- * @returns {Promise|boolean}
- */
- validateQuota: function validateQuota(quota) {
- // only used for new presets sent through @Tag
- var validQuota = OC.Util.computerFileSize(quota);
- if (validQuota === 0) {
- return this.setDefaultQuota('none');
- } else if (validQuota !== null) {
- // unify format output
- return this.setDefaultQuota(OC.Util.humanFileSize(OC.Util.computerFileSize(quota)));
- } // if no valid do not change
- return false;
- },
- /**
- * Register a new action for the user menu
- *
- * @param {string} icon the icon class
- * @param {string} text the text to display
- * @param {function} action the function to run
- */
- registerAction: function registerAction(icon, text, action) {
- this.externalActions.push({
- icon: icon,
- text: text,
- action: action
- });
- return this.externalActions;
- },
- /**
- * Create a new group
- *
- * @param {Object} event The form submit event
- */
- createGroup: function createGroup(event) {
- var _this2 = this;
- var gid = event.target[0].value;
- this.loadingAddGroup = true;
- this.$store.dispatch('addGroup', gid).then(function () {
- _this2.showAddGroupEntry = false;
- _this2.loadingAddGroup = false;
- }).catch(function () {
- _this2.loadingAddGroup = false;
- });
- }
- },
- computed: {
- users: function users() {
- return this.$store.getters.getUsers;
- },
- loading: function loading() {
- return Object.keys(this.users).length === 0;
- },
- usersOffset: function usersOffset() {
- return this.$store.getters.getUsersOffset;
- },
- usersLimit: function usersLimit() {
- return this.$store.getters.getUsersLimit;
- },
- // Local settings
- showLanguages: {
- get: function get() {
- return this.getLocalstorage('showLanguages');
- },
- set: function set(status) {
- this.setLocalStorage('showLanguages', status);
- }
- },
- showLastLogin: {
- get: function get() {
- return this.getLocalstorage('showLastLogin');
- },
- set: function set(status) {
- this.setLocalStorage('showLastLogin', status);
- }
- },
- showUserBackend: {
- get: function get() {
- return this.getLocalstorage('showUserBackend');
- },
- set: function set(status) {
- this.setLocalStorage('showUserBackend', status);
- }
- },
- showStoragePath: {
- get: function get() {
- return this.getLocalstorage('showStoragePath');
- },
- set: function set(status) {
- this.setLocalStorage('showStoragePath', status);
- }
- },
- userCount: function userCount() {
- return this.$store.getters.getUserCount;
- },
- settings: function settings() {
- return this.$store.getters.getServerData;
- },
- // default quota
- quotaOptions: function quotaOptions() {
- // convert the preset array into objects
- var quotaPreset = this.settings.quotaPreset.reduce(function (acc, cur) {
- return acc.concat({
- id: cur,
- label: cur
- });
- }, []); // add default presets
- quotaPreset.unshift(this.unlimitedQuota);
- return quotaPreset;
- },
- // mapping saved values to objects
- defaultQuota: {
- get: function get() {
- if (this.selectedQuota !== false) {
- return this.selectedQuota;
- }
- if (OC.Util.computerFileSize(this.settings.defaultQuota) > 0) {
- // if value is valid, let's map the quotaOptions or return custom quota
- return {
- id: this.settings.defaultQuota,
- label: this.settings.defaultQuota
- };
- }
- return this.unlimitedQuota; // unlimited
- },
- set: function set(quota) {
- this.selectedQuota = quota;
- }
- },
- // BUILD APP NAVIGATION MENU OBJECT
- menu: function menu() {
- var _this3 = this;
- // Data provided php side
- var self = this;
- var groups = this.$store.getters.getGroups;
- groups = Array.isArray(groups) ? groups : []; // Map groups
- groups = groups.map(function (group) {
- var item = {};
- item.id = group.id.replace(' ', '_');
- item.key = item.id;
- item.utils = {}; // router link to
- item.router = {
- name: 'group',
- params: {
- selectedGroup: group.id
- }
- }; // group name
- item.text = group.name; // users count for all groups
- if (group.usercount - group.disabled > 0 || group.usercount === -1) {
- item.utils.counter = group.usercount - group.disabled;
- }
- if (item.id !== 'admin' && item.id !== 'disabled' && _this3.settings.isAdmin) {
- // add delete button on real groups
- item.utils.actions = [{
- icon: 'icon-delete',
- text: t('settings', 'Remove group'),
- action: function action() {
- self.removeGroup(group.id);
- }
- }];
- }
- ;
- return item;
- }); // Every item is added on top of the array, so we're going backward
- // Groups, separator, disabled, admin, everyone
- // Add separator
- var realGroups = groups.find(function (group) {
- return group.id !== 'disabled' && group.id !== 'admin';
- });
- realGroups = typeof realGroups === 'undefined' ? [] : realGroups;
- realGroups = Array.isArray(realGroups) ? realGroups : [realGroups];
- if (realGroups.length > 0) {
- var separator = {
- caption: true,
- text: t('settings', 'Groups')
- };
- groups.unshift(separator);
- } // Adjust admin and disabled groups
- var adminGroup = groups.find(function (group) {
- return group.id == 'admin';
- });
- var disabledGroup = groups.find(function (group) {
- return group.id == 'disabled';
- }); // filter out admin and disabled
- groups = groups.filter(function (group) {
- return ['admin', 'disabled'].indexOf(group.id) === -1;
- });
- if (adminGroup && adminGroup.text) {
- adminGroup.text = t('settings', 'Admins'); // rename admin group
- adminGroup.icon = 'icon-user-admin'; // set icon
- groups.unshift(adminGroup); // add admin group if present
- }
- if (disabledGroup && disabledGroup.text) {
- disabledGroup.text = t('settings', 'Disabled users'); // rename disabled group
- disabledGroup.icon = 'icon-disabled-users'; // set icon
- if (disabledGroup.utils && (disabledGroup.utils.counter > 0 // add disabled if not empty
- || disabledGroup.utils.counter === -1) // add disabled if ldap enabled
- ) {
- groups.unshift(disabledGroup);
- }
- } // Add everyone group
- var everyoneGroup = {
- id: 'everyone',
- key: 'everyone',
- icon: 'icon-contacts-dark',
- router: {
- name: 'users'
- },
- text: t('settings', 'Everyone')
- }; // users count
- if (this.userCount > 0) {
- vue__WEBPACK_IMPORTED_MODULE_2__["default"].set(everyoneGroup, 'utils', {
- counter: this.userCount
- });
- }
- groups.unshift(everyoneGroup);
- var addGroup = {
- id: 'addgroup',
- key: 'addgroup',
- icon: 'icon-add',
- text: t('settings', 'Add group'),
- classes: this.loadingAddGroup ? 'icon-loading-small' : ''
- };
- if (this.showAddGroupEntry) {
- vue__WEBPACK_IMPORTED_MODULE_2__["default"].set(addGroup, 'edit', {
- text: t('settings', 'Add group'),
- action: this.createGroup,
- reset: function reset() {
- self.showAddGroupEntry = false;
- }
- });
- addGroup.classes = 'editing';
- } else {
- vue__WEBPACK_IMPORTED_MODULE_2__["default"].set(addGroup, 'action', function () {
- self.showAddGroupEntry = true;
- });
- }
- groups.unshift(addGroup); // Return
- return {
- id: 'usergrouplist',
- new: {
- id: 'new-user-button',
- text: t('settings', 'New user'),
- icon: 'icon-add',
- action: this.toggleNewUserMenu
- },
- items: groups
- };
- }
- }
- });
- /***/ }),
- /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu.vue?vue&type=template&id=04ea21c4&":
- /*!*****************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/components/popoverMenu.vue?vue&type=template&id=04ea21c4& ***!
- \*****************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- var render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "ul",
- _vm._l(_vm.menu, function(item, key) {
- return _c("popover-item", { key: key, attrs: { item: item } })
- })
- )
- }
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu/popoverItem.vue?vue&type=template&id=4c6af9e6&":
- /*!*****************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/components/popoverMenu/popoverItem.vue?vue&type=template&id=4c6af9e6& ***!
- \*****************************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- var render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c("li", [
- _vm.item.href
- ? _c(
- "a",
- {
- attrs: {
- href: _vm.item.href ? _vm.item.href : "#",
- target: _vm.item.target ? _vm.item.target : "",
- rel: "noreferrer noopener"
- },
- on: { click: _vm.item.action }
- },
- [
- _c("span", { class: _vm.item.icon }),
- _vm._v(" "),
- _vm.item.text
- ? _c("span", [_vm._v(_vm._s(_vm.item.text))])
- : _vm.item.longtext
- ? _c("p", [_vm._v(_vm._s(_vm.item.longtext))])
- : _vm._e()
- ]
- )
- : _vm.item.action
- ? _c("button", { on: { click: _vm.item.action } }, [
- _c("span", { class: _vm.item.icon }),
- _vm._v(" "),
- _vm.item.text
- ? _c("span", [_vm._v(_vm._s(_vm.item.text))])
- : _vm.item.longtext
- ? _c("p", [_vm._v(_vm._s(_vm.item.longtext))])
- : _vm._e()
- ])
- : _c("span", { staticClass: "menuitem" }, [
- _c("span", { class: _vm.item.icon }),
- _vm._v(" "),
- _vm.item.text
- ? _c("span", [_vm._v(_vm._s(_vm.item.text))])
- : _vm.item.longtext
- ? _c("p", [_vm._v(_vm._s(_vm.item.longtext))])
- : _vm._e()
- ])
- ])
- }
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/userList.vue?vue&type=template&id=40745299&":
- /*!**************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/components/userList.vue?vue&type=template&id=40745299& ***!
- \**************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- var render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- {
- staticClass: "user-list-grid",
- attrs: { id: "app-content" },
- on: {
- "&scroll": function($event) {
- return _vm.onScroll($event)
- }
- }
- },
- [
- _c(
- "div",
- {
- staticClass: "row",
- class: { sticky: _vm.scrolled && !_vm.showConfig.showNewUserForm },
- attrs: { id: "grid-header" }
- },
- [
- _c("div", { staticClass: "avatar", attrs: { id: "headerAvatar" } }),
- _vm._v(" "),
- _c("div", { staticClass: "name", attrs: { id: "headerName" } }, [
- _vm._v(_vm._s(_vm.t("settings", "Username")))
- ]),
- _vm._v(" "),
- _c(
- "div",
- { staticClass: "displayName", attrs: { id: "headerDisplayName" } },
- [_vm._v(_vm._s(_vm.t("settings", "Display name")))]
- ),
- _vm._v(" "),
- _c(
- "div",
- { staticClass: "password", attrs: { id: "headerPassword" } },
- [_vm._v(_vm._s(_vm.t("settings", "Password")))]
- ),
- _vm._v(" "),
- _c(
- "div",
- { staticClass: "mailAddress", attrs: { id: "headerAddress" } },
- [_vm._v(_vm._s(_vm.t("settings", "Email")))]
- ),
- _vm._v(" "),
- _c("div", { staticClass: "groups", attrs: { id: "headerGroups" } }, [
- _vm._v(_vm._s(_vm.t("settings", "Groups")))
- ]),
- _vm._v(" "),
- _vm.subAdminsGroups.length > 0 && _vm.settings.isAdmin
- ? _c(
- "div",
- { staticClass: "subadmins", attrs: { id: "headerSubAdmins" } },
- [_vm._v(_vm._s(_vm.t("settings", "Group admin for")))]
- )
- : _vm._e(),
- _vm._v(" "),
- _c("div", { staticClass: "quota", attrs: { id: "headerQuota" } }, [
- _vm._v(_vm._s(_vm.t("settings", "Quota")))
- ]),
- _vm._v(" "),
- _vm.showConfig.showLanguages
- ? _c(
- "div",
- { staticClass: "languages", attrs: { id: "headerLanguages" } },
- [_vm._v(_vm._s(_vm.t("settings", "Language")))]
- )
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showStoragePath
- ? _c(
- "div",
- { staticClass: "headerStorageLocation storageLocation" },
- [_vm._v(_vm._s(_vm.t("settings", "Storage location")))]
- )
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showUserBackend
- ? _c("div", { staticClass: "headerUserBackend userBackend" }, [
- _vm._v(_vm._s(_vm.t("settings", "User backend")))
- ])
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showLastLogin
- ? _c("div", { staticClass: "headerLastLogin lastLogin" }, [
- _vm._v(_vm._s(_vm.t("settings", "Last login")))
- ])
- : _vm._e(),
- _vm._v(" "),
- _c("div", { staticClass: "userActions" })
- ]
- ),
- _vm._v(" "),
- _c(
- "form",
- {
- directives: [
- {
- name: "show",
- rawName: "v-show",
- value: _vm.showConfig.showNewUserForm,
- expression: "showConfig.showNewUserForm"
- }
- ],
- staticClass: "row",
- class: { sticky: _vm.scrolled && _vm.showConfig.showNewUserForm },
- attrs: { id: "new-user", disabled: _vm.loading.all },
- on: {
- submit: function($event) {
- $event.preventDefault()
- return _vm.createUser($event)
- }
- }
- },
- [
- _c("div", {
- class: _vm.loading.all ? "icon-loading-small" : "icon-add"
- }),
- _vm._v(" "),
- _c("div", { staticClass: "name" }, [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.newUser.id,
- expression: "newUser.id"
- }
- ],
- ref: "newusername",
- attrs: {
- id: "newusername",
- type: "text",
- required: "",
- placeholder: _vm.t("settings", "Username"),
- name: "username",
- autocomplete: "off",
- autocapitalize: "none",
- autocorrect: "off",
- pattern: "[a-zA-Z0-9 _\\.@\\-']+"
- },
- domProps: { value: _vm.newUser.id },
- on: {
- input: function($event) {
- if ($event.target.composing) {
- return
- }
- _vm.$set(_vm.newUser, "id", $event.target.value)
- }
- }
- })
- ]),
- _vm._v(" "),
- _c("div", { staticClass: "displayName" }, [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.newUser.displayName,
- expression: "newUser.displayName"
- }
- ],
- attrs: {
- id: "newdisplayname",
- type: "text",
- placeholder: _vm.t("settings", "Display name"),
- name: "displayname",
- autocomplete: "off",
- autocapitalize: "none",
- autocorrect: "off"
- },
- domProps: { value: _vm.newUser.displayName },
- on: {
- input: function($event) {
- if ($event.target.composing) {
- return
- }
- _vm.$set(_vm.newUser, "displayName", $event.target.value)
- }
- }
- })
- ]),
- _vm._v(" "),
- _c("div", { staticClass: "password" }, [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.newUser.password,
- expression: "newUser.password"
- }
- ],
- ref: "newuserpassword",
- attrs: {
- id: "newuserpassword",
- type: "password",
- required: _vm.newUser.mailAddress === "",
- placeholder: _vm.t("settings", "Password"),
- name: "password",
- autocomplete: "new-password",
- autocapitalize: "none",
- autocorrect: "off",
- minlength: _vm.minPasswordLength
- },
- domProps: { value: _vm.newUser.password },
- on: {
- input: function($event) {
- if ($event.target.composing) {
- return
- }
- _vm.$set(_vm.newUser, "password", $event.target.value)
- }
- }
- })
- ]),
- _vm._v(" "),
- _c("div", { staticClass: "mailAddress" }, [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.newUser.mailAddress,
- expression: "newUser.mailAddress"
- }
- ],
- attrs: {
- id: "newemail",
- type: "email",
- required: _vm.newUser.password === "",
- placeholder: _vm.t("settings", "Email"),
- name: "email",
- autocomplete: "off",
- autocapitalize: "none",
- autocorrect: "off"
- },
- domProps: { value: _vm.newUser.mailAddress },
- on: {
- input: function($event) {
- if ($event.target.composing) {
- return
- }
- _vm.$set(_vm.newUser, "mailAddress", $event.target.value)
- }
- }
- })
- ]),
- _vm._v(" "),
- _c(
- "div",
- { staticClass: "groups" },
- [
- !_vm.settings.isAdmin
- ? _c("input", {
- class: { "icon-loading-small": _vm.loading.groups },
- attrs: {
- type: "text",
- tabindex: "-1",
- id: "newgroups",
- required: !_vm.settings.isAdmin
- },
- domProps: { value: _vm.newUser.groups }
- })
- : _vm._e(),
- _vm._v(" "),
- _c(
- "multiselect",
- {
- staticClass: "multiselect-vue",
- attrs: {
- options: _vm.canAddGroups,
- disabled: _vm.loading.groups || _vm.loading.all,
- "tag-placeholder": "create",
- placeholder: _vm.t("settings", "Add user in group"),
- label: "name",
- "track-by": "id",
- multiple: true,
- taggable: true,
- "close-on-select": false
- },
- on: { tag: _vm.createGroup },
- model: {
- value: _vm.newUser.groups,
- callback: function($$v) {
- _vm.$set(_vm.newUser, "groups", $$v)
- },
- expression: "newUser.groups"
- }
- },
- [
- _c(
- "span",
- { attrs: { slot: "noResult" }, slot: "noResult" },
- [_vm._v(_vm._s(_vm.t("settings", "No results")))]
- )
- ]
- )
- ],
- 1
- ),
- _vm._v(" "),
- _vm.subAdminsGroups.length > 0 && _vm.settings.isAdmin
- ? _c(
- "div",
- { staticClass: "subadmins" },
- [
- _c(
- "multiselect",
- {
- staticClass: "multiselect-vue",
- attrs: {
- options: _vm.subAdminsGroups,
- placeholder: _vm.t("settings", "Set user as admin for"),
- label: "name",
- "track-by": "id",
- multiple: true,
- "close-on-select": false
- },
- model: {
- value: _vm.newUser.subAdminsGroups,
- callback: function($$v) {
- _vm.$set(_vm.newUser, "subAdminsGroups", $$v)
- },
- expression: "newUser.subAdminsGroups"
- }
- },
- [
- _c(
- "span",
- { attrs: { slot: "noResult" }, slot: "noResult" },
- [_vm._v(_vm._s(_vm.t("settings", "No results")))]
- )
- ]
- )
- ],
- 1
- )
- : _vm._e(),
- _vm._v(" "),
- _c(
- "div",
- { staticClass: "quota" },
- [
- _c("multiselect", {
- staticClass: "multiselect-vue",
- attrs: {
- options: _vm.quotaOptions,
- placeholder: _vm.t("settings", "Select user quota"),
- label: "label",
- "track-by": "id",
- allowEmpty: false,
- taggable: true
- },
- on: { tag: _vm.validateQuota },
- model: {
- value: _vm.newUser.quota,
- callback: function($$v) {
- _vm.$set(_vm.newUser, "quota", $$v)
- },
- expression: "newUser.quota"
- }
- })
- ],
- 1
- ),
- _vm._v(" "),
- _vm.showConfig.showLanguages
- ? _c(
- "div",
- { staticClass: "languages" },
- [
- _c("multiselect", {
- staticClass: "multiselect-vue",
- attrs: {
- options: _vm.languages,
- placeholder: _vm.t("settings", "Default language"),
- label: "name",
- "track-by": "code",
- allowEmpty: false,
- "group-values": "languages",
- "group-label": "label"
- },
- model: {
- value: _vm.newUser.language,
- callback: function($$v) {
- _vm.$set(_vm.newUser, "language", $$v)
- },
- expression: "newUser.language"
- }
- })
- ],
- 1
- )
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showStoragePath
- ? _c("div", { staticClass: "storageLocation" })
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showUserBackend
- ? _c("div", { staticClass: "userBackend" })
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showLastLogin
- ? _c("div", { staticClass: "lastLogin" })
- : _vm._e(),
- _vm._v(" "),
- _c("div", { staticClass: "userActions" }, [
- _c("input", {
- staticClass: "button primary icon-checkmark-white has-tooltip",
- attrs: {
- type: "submit",
- id: "newsubmit",
- value: "",
- title: _vm.t("settings", "Add a new user")
- }
- })
- ])
- ]
- ),
- _vm._v(" "),
- _vm._l(_vm.filteredUsers, function(user, key) {
- return _c("user-row", {
- key: key,
- attrs: {
- user: user,
- settings: _vm.settings,
- showConfig: _vm.showConfig,
- groups: _vm.groups,
- subAdminsGroups: _vm.subAdminsGroups,
- quotaOptions: _vm.quotaOptions,
- languages: _vm.languages,
- externalActions: _vm.externalActions
- }
- })
- }),
- _vm._v(" "),
- _c(
- "infinite-loading",
- { ref: "infiniteLoading", on: { infinite: _vm.infiniteHandler } },
- [
- _c("div", { attrs: { slot: "spinner" }, slot: "spinner" }, [
- _c("div", { staticClass: "users-icon-loading icon-loading" })
- ]),
- _vm._v(" "),
- _c("div", { attrs: { slot: "no-more" }, slot: "no-more" }, [
- _c("div", { staticClass: "users-list-end" })
- ]),
- _vm._v(" "),
- _c("div", { attrs: { slot: "no-results" }, slot: "no-results" }, [
- _c("div", { attrs: { id: "emptycontent" } }, [
- _c("div", { staticClass: "icon-contacts-dark" }),
- _vm._v(" "),
- _c("h2", [_vm._v(_vm._s(_vm.t("settings", "No users in here")))])
- ])
- ])
- ]
- )
- ],
- 2
- )
- }
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/userList/userRow.vue?vue&type=template&id=d19586ce&":
- /*!**********************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/components/userList/userRow.vue?vue&type=template&id=d19586ce& ***!
- \**********************************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- var render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return Object.keys(_vm.user).length === 1
- ? _c("div", { staticClass: "row", attrs: { "data-id": _vm.user.id } }, [
- _c(
- "div",
- {
- staticClass: "avatar",
- class: {
- "icon-loading-small": _vm.loading.delete || _vm.loading.disable
- }
- },
- [
- !_vm.loading.delete && !_vm.loading.disable
- ? _c("img", {
- attrs: {
- alt: "",
- width: "32",
- height: "32",
- src: _vm.generateAvatar(_vm.user.id, 32),
- srcset:
- _vm.generateAvatar(_vm.user.id, 64) +
- " 2x, " +
- _vm.generateAvatar(_vm.user.id, 128) +
- " 4x"
- }
- })
- : _vm._e()
- ]
- ),
- _vm._v(" "),
- _c("div", { staticClass: "name" }, [_vm._v(_vm._s(_vm.user.id))]),
- _vm._v(" "),
- _c("div", { staticClass: "obfuscated" }, [
- _vm._v(
- _vm._s(
- _vm.t(
- "settings",
- "You do not have permissions to see the details of this user"
- )
- )
- )
- ])
- ])
- : _c(
- "div",
- {
- staticClass: "row",
- class: { disabled: _vm.loading.delete || _vm.loading.disable },
- attrs: { "data-id": _vm.user.id }
- },
- [
- _c(
- "div",
- {
- staticClass: "avatar",
- class: {
- "icon-loading-small": _vm.loading.delete || _vm.loading.disable
- }
- },
- [
- !_vm.loading.delete && !_vm.loading.disable
- ? _c("img", {
- attrs: {
- alt: "",
- width: "32",
- height: "32",
- src: _vm.generateAvatar(_vm.user.id, 32),
- srcset:
- _vm.generateAvatar(_vm.user.id, 64) +
- " 2x, " +
- _vm.generateAvatar(_vm.user.id, 128) +
- " 4x"
- }
- })
- : _vm._e()
- ]
- ),
- _vm._v(" "),
- _c("div", { staticClass: "name" }, [_vm._v(_vm._s(_vm.user.id))]),
- _vm._v(" "),
- _c(
- "form",
- {
- staticClass: "displayName",
- class: { "icon-loading-small": _vm.loading.displayName },
- on: {
- submit: function($event) {
- $event.preventDefault()
- return _vm.updateDisplayName($event)
- }
- }
- },
- [
- _vm.user.backendCapabilities.setDisplayName
- ? [
- _vm.user.backendCapabilities.setDisplayName
- ? _c("input", {
- ref: "displayName",
- attrs: {
- id: "displayName" + _vm.user.id + _vm.rand,
- type: "text",
- disabled:
- _vm.loading.displayName || _vm.loading.all,
- autocomplete: "new-password",
- autocorrect: "off",
- autocapitalize: "off",
- spellcheck: "false"
- },
- domProps: { value: _vm.user.displayname }
- })
- : _vm._e(),
- _vm._v(" "),
- _vm.user.backendCapabilities.setDisplayName
- ? _c("input", {
- staticClass: "icon-confirm",
- attrs: { type: "submit", value: "" }
- })
- : _vm._e()
- ]
- : _c(
- "div",
- {
- directives: [
- {
- name: "tooltip",
- rawName: "v-tooltip.auto",
- value: _vm.t(
- "settings",
- "The backend does not support changing the display name"
- ),
- expression:
- "t('settings', 'The backend does not support changing the display name')",
- modifiers: { auto: true }
- }
- ],
- staticClass: "name"
- },
- [_vm._v(_vm._s(_vm.user.displayname))]
- )
- ],
- 2
- ),
- _vm._v(" "),
- _vm.settings.canChangePassword &&
- _vm.user.backendCapabilities.setPassword
- ? _c(
- "form",
- {
- staticClass: "password",
- class: { "icon-loading-small": _vm.loading.password },
- on: {
- submit: function($event) {
- $event.preventDefault()
- return _vm.updatePassword($event)
- }
- }
- },
- [
- _c("input", {
- ref: "password",
- attrs: {
- id: "password" + _vm.user.id + _vm.rand,
- type: "password",
- required: "",
- disabled: _vm.loading.password || _vm.loading.all,
- minlength: _vm.minPasswordLength,
- value: "",
- placeholder: _vm.t("settings", "New password"),
- autocomplete: "new-password",
- autocorrect: "off",
- autocapitalize: "off",
- spellcheck: "false"
- }
- }),
- _vm._v(" "),
- _c("input", {
- staticClass: "icon-confirm",
- attrs: { type: "submit", value: "" }
- })
- ]
- )
- : _c("div"),
- _vm._v(" "),
- _c(
- "form",
- {
- staticClass: "mailAddress",
- class: { "icon-loading-small": _vm.loading.mailAddress },
- on: {
- submit: function($event) {
- $event.preventDefault()
- return _vm.updateEmail($event)
- }
- }
- },
- [
- _c("input", {
- ref: "mailAddress",
- attrs: {
- id: "mailAddress" + _vm.user.id + _vm.rand,
- type: "email",
- disabled: _vm.loading.mailAddress || _vm.loading.all,
- autocomplete: "new-password",
- autocorrect: "off",
- autocapitalize: "off",
- spellcheck: "false"
- },
- domProps: { value: _vm.user.email }
- }),
- _vm._v(" "),
- _c("input", {
- staticClass: "icon-confirm",
- attrs: { type: "submit", value: "" }
- })
- ]
- ),
- _vm._v(" "),
- _c(
- "div",
- {
- staticClass: "groups",
- class: { "icon-loading-small": _vm.loading.groups }
- },
- [
- _c(
- "multiselect",
- {
- staticClass: "multiselect-vue",
- attrs: {
- value: _vm.userGroups,
- options: _vm.availableGroups,
- disabled: _vm.loading.groups || _vm.loading.all,
- "tag-placeholder": "create",
- placeholder: _vm.t("settings", "Add user in group"),
- label: "name",
- "track-by": "id",
- limit: 2,
- multiple: true,
- taggable: _vm.settings.isAdmin,
- closeOnSelect: false
- },
- on: {
- tag: _vm.createGroup,
- select: _vm.addUserGroup,
- remove: _vm.removeUserGroup
- }
- },
- [
- _c(
- "span",
- {
- directives: [
- {
- name: "tooltip",
- rawName: "v-tooltip.auto",
- value: _vm.formatGroupsTitle(_vm.userGroups),
- expression: "formatGroupsTitle(userGroups)",
- modifiers: { auto: true }
- }
- ],
- staticClass: "multiselect__limit",
- attrs: { slot: "limit" },
- slot: "limit"
- },
- [_vm._v("+" + _vm._s(_vm.userGroups.length - 2))]
- ),
- _vm._v(" "),
- _c(
- "span",
- { attrs: { slot: "noResult" }, slot: "noResult" },
- [_vm._v(_vm._s(_vm.t("settings", "No results")))]
- )
- ]
- )
- ],
- 1
- ),
- _vm._v(" "),
- _vm.subAdminsGroups.length > 0 && _vm.settings.isAdmin
- ? _c(
- "div",
- {
- staticClass: "subadmins",
- class: { "icon-loading-small": _vm.loading.subadmins }
- },
- [
- _c(
- "multiselect",
- {
- staticClass: "multiselect-vue",
- attrs: {
- value: _vm.userSubAdminsGroups,
- options: _vm.subAdminsGroups,
- disabled: _vm.loading.subadmins || _vm.loading.all,
- placeholder: _vm.t("settings", "Set user as admin for"),
- label: "name",
- "track-by": "id",
- limit: 2,
- multiple: true,
- closeOnSelect: false
- },
- on: {
- select: _vm.addUserSubAdmin,
- remove: _vm.removeUserSubAdmin
- }
- },
- [
- _c(
- "span",
- {
- directives: [
- {
- name: "tooltip",
- rawName: "v-tooltip.auto",
- value: _vm.formatGroupsTitle(
- _vm.userSubAdminsGroups
- ),
- expression:
- "formatGroupsTitle(userSubAdminsGroups)",
- modifiers: { auto: true }
- }
- ],
- staticClass: "multiselect__limit",
- attrs: { slot: "limit" },
- slot: "limit"
- },
- [
- _vm._v(
- "+" + _vm._s(_vm.userSubAdminsGroups.length - 2)
- )
- ]
- ),
- _vm._v(" "),
- _c(
- "span",
- { attrs: { slot: "noResult" }, slot: "noResult" },
- [_vm._v(_vm._s(_vm.t("settings", "No results")))]
- )
- ]
- )
- ],
- 1
- )
- : _vm._e(),
- _vm._v(" "),
- _c(
- "div",
- {
- directives: [
- {
- name: "tooltip",
- rawName: "v-tooltip.auto",
- value: _vm.usedSpace,
- expression: "usedSpace",
- modifiers: { auto: true }
- }
- ],
- staticClass: "quota",
- class: { "icon-loading-small": _vm.loading.quota }
- },
- [
- _c("multiselect", {
- staticClass: "multiselect-vue",
- attrs: {
- value: _vm.userQuota,
- options: _vm.quotaOptions,
- disabled: _vm.loading.quota || _vm.loading.all,
- "tag-placeholder": "create",
- placeholder: _vm.t("settings", "Select user quota"),
- label: "label",
- "track-by": "id",
- allowEmpty: false,
- taggable: true
- },
- on: { tag: _vm.validateQuota, input: _vm.setUserQuota }
- }),
- _vm._v(" "),
- _c("progress", {
- staticClass: "quota-user-progress",
- class: { warn: _vm.usedQuota > 80 },
- attrs: { max: "100" },
- domProps: { value: _vm.usedQuota }
- })
- ],
- 1
- ),
- _vm._v(" "),
- _vm.showConfig.showLanguages
- ? _c(
- "div",
- {
- staticClass: "languages",
- class: { "icon-loading-small": _vm.loading.languages }
- },
- [
- _c("multiselect", {
- staticClass: "multiselect-vue",
- attrs: {
- value: _vm.userLanguage,
- options: _vm.languages,
- disabled: _vm.loading.languages || _vm.loading.all,
- placeholder: _vm.t("settings", "No language set"),
- label: "name",
- "track-by": "code",
- allowEmpty: false,
- "group-values": "languages",
- "group-label": "label"
- },
- on: { input: _vm.setUserLanguage }
- })
- ],
- 1
- )
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showStoragePath
- ? _c("div", { staticClass: "storageLocation" }, [
- _vm._v(_vm._s(_vm.user.storageLocation))
- ])
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showUserBackend
- ? _c("div", { staticClass: "userBackend" }, [
- _vm._v(_vm._s(_vm.user.backend))
- ])
- : _vm._e(),
- _vm._v(" "),
- _vm.showConfig.showLastLogin
- ? _c(
- "div",
- {
- directives: [
- {
- name: "tooltip",
- rawName: "v-tooltip.auto",
- value:
- _vm.user.lastLogin > 0
- ? _vm.OC.Util.formatDate(_vm.user.lastLogin)
- : "",
- expression:
- "user.lastLogin>0 ? OC.Util.formatDate(user.lastLogin) : ''",
- modifiers: { auto: true }
- }
- ],
- staticClass: "lastLogin"
- },
- [
- _vm._v(
- "\n\t\t" +
- _vm._s(
- _vm.user.lastLogin > 0
- ? _vm.OC.Util.relativeModifiedDate(_vm.user.lastLogin)
- : _vm.t("settings", "Never")
- ) +
- "\n\t"
- )
- ]
- )
- : _vm._e(),
- _vm._v(" "),
- _c("div", { staticClass: "userActions" }, [
- _vm.OC.currentUser !== _vm.user.id &&
- _vm.user.id !== "admin" &&
- !_vm.loading.all
- ? _c("div", { staticClass: "toggleUserActions" }, [
- _c("div", {
- directives: [
- {
- name: "click-outside",
- rawName: "v-click-outside",
- value: _vm.hideMenu,
- expression: "hideMenu"
- }
- ],
- staticClass: "icon-more",
- on: { click: _vm.toggleMenu }
- }),
- _vm._v(" "),
- _c(
- "div",
- {
- staticClass: "popovermenu",
- class: { open: _vm.openedMenu }
- },
- [_c("popover-menu", { attrs: { menu: _vm.userActions } })],
- 1
- )
- ])
- : _vm._e(),
- _vm._v(" "),
- _c(
- "div",
- {
- staticClass: "feedback",
- style: { opacity: _vm.feedbackMessage !== "" ? 1 : 0 }
- },
- [
- _c("div", { staticClass: "icon-checkmark" }),
- _vm._v("\n\t\t\t" + _vm._s(_vm.feedbackMessage) + "\n\t\t")
- ]
- )
- ])
- ]
- )
- }
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/views/Users.vue?vue&type=template&id=68be103e&":
- /*!******************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Users.vue?vue&type=template&id=68be103e& ***!
- \******************************************************************************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
- var render = function() {
- var _vm = this
- var _h = _vm.$createElement
- var _c = _vm._self._c || _h
- return _c(
- "div",
- { staticClass: "app-settings", attrs: { id: "content" } },
- [
- _c(
- "app-navigation",
- { attrs: { menu: _vm.menu } },
- [
- _c("template", { slot: "settings-content" }, [
- _c(
- "div",
- [
- _c("p", [_vm._v(_vm._s(_vm.t("settings", "Default quota:")))]),
- _vm._v(" "),
- _c("multiselect", {
- staticClass: "multiselect-vue",
- attrs: {
- value: _vm.defaultQuota,
- options: _vm.quotaOptions,
- "tag-placeholder": "create",
- placeholder: _vm.t("settings", "Select default quota"),
- label: "label",
- "track-by": "id",
- allowEmpty: false,
- taggable: true
- },
- on: { tag: _vm.validateQuota, input: _vm.setDefaultQuota }
- })
- ],
- 1
- ),
- _vm._v(" "),
- _c("div", [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.showLanguages,
- expression: "showLanguages"
- }
- ],
- staticClass: "checkbox",
- attrs: { type: "checkbox", id: "showLanguages" },
- domProps: {
- checked: Array.isArray(_vm.showLanguages)
- ? _vm._i(_vm.showLanguages, null) > -1
- : _vm.showLanguages
- },
- on: {
- change: function($event) {
- var $$a = _vm.showLanguages,
- $$el = $event.target,
- $$c = $$el.checked ? true : false
- if (Array.isArray($$a)) {
- var $$v = null,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.showLanguages = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.showLanguages = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.showLanguages = $$c
- }
- }
- }
- }),
- _vm._v(" "),
- _c("label", { attrs: { for: "showLanguages" } }, [
- _vm._v(_vm._s(_vm.t("settings", "Show Languages")))
- ])
- ]),
- _vm._v(" "),
- _c("div", [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.showLastLogin,
- expression: "showLastLogin"
- }
- ],
- staticClass: "checkbox",
- attrs: { type: "checkbox", id: "showLastLogin" },
- domProps: {
- checked: Array.isArray(_vm.showLastLogin)
- ? _vm._i(_vm.showLastLogin, null) > -1
- : _vm.showLastLogin
- },
- on: {
- change: function($event) {
- var $$a = _vm.showLastLogin,
- $$el = $event.target,
- $$c = $$el.checked ? true : false
- if (Array.isArray($$a)) {
- var $$v = null,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.showLastLogin = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.showLastLogin = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.showLastLogin = $$c
- }
- }
- }
- }),
- _vm._v(" "),
- _c("label", { attrs: { for: "showLastLogin" } }, [
- _vm._v(_vm._s(_vm.t("settings", "Show last login")))
- ])
- ]),
- _vm._v(" "),
- _c("div", [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.showUserBackend,
- expression: "showUserBackend"
- }
- ],
- staticClass: "checkbox",
- attrs: { type: "checkbox", id: "showUserBackend" },
- domProps: {
- checked: Array.isArray(_vm.showUserBackend)
- ? _vm._i(_vm.showUserBackend, null) > -1
- : _vm.showUserBackend
- },
- on: {
- change: function($event) {
- var $$a = _vm.showUserBackend,
- $$el = $event.target,
- $$c = $$el.checked ? true : false
- if (Array.isArray($$a)) {
- var $$v = null,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.showUserBackend = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.showUserBackend = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.showUserBackend = $$c
- }
- }
- }
- }),
- _vm._v(" "),
- _c("label", { attrs: { for: "showUserBackend" } }, [
- _vm._v(_vm._s(_vm.t("settings", "Show user backend")))
- ])
- ]),
- _vm._v(" "),
- _c("div", [
- _c("input", {
- directives: [
- {
- name: "model",
- rawName: "v-model",
- value: _vm.showStoragePath,
- expression: "showStoragePath"
- }
- ],
- staticClass: "checkbox",
- attrs: { type: "checkbox", id: "showStoragePath" },
- domProps: {
- checked: Array.isArray(_vm.showStoragePath)
- ? _vm._i(_vm.showStoragePath, null) > -1
- : _vm.showStoragePath
- },
- on: {
- change: function($event) {
- var $$a = _vm.showStoragePath,
- $$el = $event.target,
- $$c = $$el.checked ? true : false
- if (Array.isArray($$a)) {
- var $$v = null,
- $$i = _vm._i($$a, $$v)
- if ($$el.checked) {
- $$i < 0 && (_vm.showStoragePath = $$a.concat([$$v]))
- } else {
- $$i > -1 &&
- (_vm.showStoragePath = $$a
- .slice(0, $$i)
- .concat($$a.slice($$i + 1)))
- }
- } else {
- _vm.showStoragePath = $$c
- }
- }
- }
- }),
- _vm._v(" "),
- _c("label", { attrs: { for: "showStoragePath" } }, [
- _vm._v(_vm._s(_vm.t("settings", "Show storage path")))
- ])
- ])
- ])
- ],
- 2
- ),
- _vm._v(" "),
- _c("user-list", {
- attrs: {
- users: _vm.users,
- showConfig: _vm.showConfig,
- selectedGroup: _vm.selectedGroup,
- externalActions: _vm.externalActions
- }
- })
- ],
- 1
- )
- }
- var staticRenderFns = []
- render._withStripped = true
- /***/ }),
- /***/ "./src/components/popoverMenu.vue":
- /*!****************************************!*\
- !*** ./src/components/popoverMenu.vue ***!
- \****************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _popoverMenu_vue_vue_type_template_id_04ea21c4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./popoverMenu.vue?vue&type=template&id=04ea21c4& */ "./src/components/popoverMenu.vue?vue&type=template&id=04ea21c4&");
- /* harmony import */ var _popoverMenu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./popoverMenu.vue?vue&type=script&lang=js& */ "./src/components/popoverMenu.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
- /* normalize component */
- var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
- _popoverMenu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _popoverMenu_vue_vue_type_template_id_04ea21c4___WEBPACK_IMPORTED_MODULE_0__["render"],
- _popoverMenu_vue_vue_type_template_id_04ea21c4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var api; }
- component.options.__file = "src/components/popoverMenu.vue"
- /* harmony default export */ __webpack_exports__["default"] = (component.exports);
- /***/ }),
- /***/ "./src/components/popoverMenu.vue?vue&type=script&lang=js&":
- /*!*****************************************************************!*\
- !*** ./src/components/popoverMenu.vue?vue&type=script&lang=js& ***!
- \*****************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverMenu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib!../../node_modules/vue-loader/lib??vue-loader-options!./popoverMenu.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverMenu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
- /***/ }),
- /***/ "./src/components/popoverMenu.vue?vue&type=template&id=04ea21c4&":
- /*!***********************************************************************!*\
- !*** ./src/components/popoverMenu.vue?vue&type=template&id=04ea21c4& ***!
- \***********************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverMenu_vue_vue_type_template_id_04ea21c4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib??vue-loader-options!./popoverMenu.vue?vue&type=template&id=04ea21c4& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu.vue?vue&type=template&id=04ea21c4&");
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverMenu_vue_vue_type_template_id_04ea21c4___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverMenu_vue_vue_type_template_id_04ea21c4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /***/ }),
- /***/ "./src/components/popoverMenu/popoverItem.vue":
- /*!****************************************************!*\
- !*** ./src/components/popoverMenu/popoverItem.vue ***!
- \****************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _popoverItem_vue_vue_type_template_id_4c6af9e6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./popoverItem.vue?vue&type=template&id=4c6af9e6& */ "./src/components/popoverMenu/popoverItem.vue?vue&type=template&id=4c6af9e6&");
- /* harmony import */ var _popoverItem_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./popoverItem.vue?vue&type=script&lang=js& */ "./src/components/popoverMenu/popoverItem.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
- /* normalize component */
- var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
- _popoverItem_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _popoverItem_vue_vue_type_template_id_4c6af9e6___WEBPACK_IMPORTED_MODULE_0__["render"],
- _popoverItem_vue_vue_type_template_id_4c6af9e6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var api; }
- component.options.__file = "src/components/popoverMenu/popoverItem.vue"
- /* harmony default export */ __webpack_exports__["default"] = (component.exports);
- /***/ }),
- /***/ "./src/components/popoverMenu/popoverItem.vue?vue&type=script&lang=js&":
- /*!*****************************************************************************!*\
- !*** ./src/components/popoverMenu/popoverItem.vue?vue&type=script&lang=js& ***!
- \*****************************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverItem_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib!../../../node_modules/vue-loader/lib??vue-loader-options!./popoverItem.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu/popoverItem.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverItem_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
- /***/ }),
- /***/ "./src/components/popoverMenu/popoverItem.vue?vue&type=template&id=4c6af9e6&":
- /*!***********************************************************************************!*\
- !*** ./src/components/popoverMenu/popoverItem.vue?vue&type=template&id=4c6af9e6& ***!
- \***********************************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverItem_vue_vue_type_template_id_4c6af9e6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./popoverItem.vue?vue&type=template&id=4c6af9e6& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/popoverMenu/popoverItem.vue?vue&type=template&id=4c6af9e6&");
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverItem_vue_vue_type_template_id_4c6af9e6___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_popoverItem_vue_vue_type_template_id_4c6af9e6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /***/ }),
- /***/ "./src/components/userList.vue":
- /*!*************************************!*\
- !*** ./src/components/userList.vue ***!
- \*************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _userList_vue_vue_type_template_id_40745299___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./userList.vue?vue&type=template&id=40745299& */ "./src/components/userList.vue?vue&type=template&id=40745299&");
- /* harmony import */ var _userList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./userList.vue?vue&type=script&lang=js& */ "./src/components/userList.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
- /* normalize component */
- var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
- _userList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _userList_vue_vue_type_template_id_40745299___WEBPACK_IMPORTED_MODULE_0__["render"],
- _userList_vue_vue_type_template_id_40745299___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var api; }
- component.options.__file = "src/components/userList.vue"
- /* harmony default export */ __webpack_exports__["default"] = (component.exports);
- /***/ }),
- /***/ "./src/components/userList.vue?vue&type=script&lang=js&":
- /*!**************************************************************!*\
- !*** ./src/components/userList.vue?vue&type=script&lang=js& ***!
- \**************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_userList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib!../../node_modules/vue-loader/lib??vue-loader-options!./userList.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/userList.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_userList_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
- /***/ }),
- /***/ "./src/components/userList.vue?vue&type=template&id=40745299&":
- /*!********************************************************************!*\
- !*** ./src/components/userList.vue?vue&type=template&id=40745299& ***!
- \********************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_userList_vue_vue_type_template_id_40745299___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib??vue-loader-options!./userList.vue?vue&type=template&id=40745299& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/userList.vue?vue&type=template&id=40745299&");
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_userList_vue_vue_type_template_id_40745299___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_userList_vue_vue_type_template_id_40745299___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /***/ }),
- /***/ "./src/components/userList/userRow.vue":
- /*!*********************************************!*\
- !*** ./src/components/userList/userRow.vue ***!
- \*********************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _userRow_vue_vue_type_template_id_d19586ce___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./userRow.vue?vue&type=template&id=d19586ce& */ "./src/components/userList/userRow.vue?vue&type=template&id=d19586ce&");
- /* harmony import */ var _userRow_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./userRow.vue?vue&type=script&lang=js& */ "./src/components/userList/userRow.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
- /* normalize component */
- var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
- _userRow_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _userRow_vue_vue_type_template_id_d19586ce___WEBPACK_IMPORTED_MODULE_0__["render"],
- _userRow_vue_vue_type_template_id_d19586ce___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var api; }
- component.options.__file = "src/components/userList/userRow.vue"
- /* harmony default export */ __webpack_exports__["default"] = (component.exports);
- /***/ }),
- /***/ "./src/components/userList/userRow.vue?vue&type=script&lang=js&":
- /*!**********************************************************************!*\
- !*** ./src/components/userList/userRow.vue?vue&type=script&lang=js& ***!
- \**********************************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_userRow_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib!../../../node_modules/vue-loader/lib??vue-loader-options!./userRow.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/userList/userRow.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_userRow_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
- /***/ }),
- /***/ "./src/components/userList/userRow.vue?vue&type=template&id=d19586ce&":
- /*!****************************************************************************!*\
- !*** ./src/components/userList/userRow.vue?vue&type=template&id=d19586ce& ***!
- \****************************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_userRow_vue_vue_type_template_id_d19586ce___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../node_modules/vue-loader/lib??vue-loader-options!./userRow.vue?vue&type=template&id=d19586ce& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/components/userList/userRow.vue?vue&type=template&id=d19586ce&");
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_userRow_vue_vue_type_template_id_d19586ce___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_userRow_vue_vue_type_template_id_d19586ce___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /***/ }),
- /***/ "./src/views/Users.vue":
- /*!*****************************!*\
- !*** ./src/views/Users.vue ***!
- \*****************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _Users_vue_vue_type_template_id_68be103e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Users.vue?vue&type=template&id=68be103e& */ "./src/views/Users.vue?vue&type=template&id=68be103e&");
- /* harmony import */ var _Users_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Users.vue?vue&type=script&lang=js& */ "./src/views/Users.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
- /* normalize component */
- var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
- _Users_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _Users_vue_vue_type_template_id_68be103e___WEBPACK_IMPORTED_MODULE_0__["render"],
- _Users_vue_vue_type_template_id_68be103e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
- false,
- null,
- null,
- null
-
- )
- /* hot reload */
- if (false) { var api; }
- component.options.__file = "src/views/Users.vue"
- /* harmony default export */ __webpack_exports__["default"] = (component.exports);
- /***/ }),
- /***/ "./src/views/Users.vue?vue&type=script&lang=js&":
- /*!******************************************************!*\
- !*** ./src/views/Users.vue?vue&type=script&lang=js& ***!
- \******************************************************/
- /*! exports provided: default */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Users_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib!../../node_modules/vue-loader/lib??vue-loader-options!./Users.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/views/Users.vue?vue&type=script&lang=js&");
- /* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Users_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
- /***/ }),
- /***/ "./src/views/Users.vue?vue&type=template&id=68be103e&":
- /*!************************************************************!*\
- !*** ./src/views/Users.vue?vue&type=template&id=68be103e& ***!
- \************************************************************/
- /*! exports provided: render, staticRenderFns */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Users_vue_vue_type_template_id_68be103e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib??vue-loader-options!./Users.vue?vue&type=template&id=68be103e& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./src/views/Users.vue?vue&type=template&id=68be103e&");
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Users_vue_vue_type_template_id_68be103e___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Users_vue_vue_type_template_id_68be103e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /***/ })
- }]);
- //# sourceMappingURL=2.js.map
|