imurmurhash 11e3a9652a first 8 years ago in-publish 11e3a9652a first 8 years ago indent-string 11e3a9652a first 8 years ago indexes-of 11e3a9652a first 8 years ago indexof 11e3a9652a first 8 years ago inflight 11e3a9652a first 8 years ago inherits 11e3a9652a first 8 years ago ini 11e3a9652a first 8 years ago inquirer 11e3a9652a first 8 years ago internal-ip 11e3a9652a first 8 years ago interpret 11e3a9652a first 8 years ago invariant 11e3a9652a first 8 years ago invert-kv 11e3a9652a first 8 years ago ip 11e3a9652a first 8 years ago ipaddr.js 11e3a9652a first 8 years ago is-absolute-url 11e3a9652a first 8 years ago is-accessor-descriptor 11e3a9652a first 8 years ago is-arrayish 11e3a9652a first 8 years ago is-binary-path 11e3a9652a first 8 years ago is-buffer 11e3a9652a first 8 years ago is-builtin-module 11e3a9652a first 8 years ago is-callable 11e3a9652a first 8 years ago is-ci 11e3a9652a first 8 years ago is-data-descriptor 11e3a9652a first 8 years ago is-date-object 11e3a9652a first 8 years ago is-descriptor 11e3a9652a first 8 years ago is-directory 11e3a9652a first 8 years ago is-dotfile 11e3a9652a first 8 years ago is-equal-shallow 11e3a9652a first 8 years ago is-extendable 11e3a9652a first 8 years ago is-extglob 11e3a9652a first 8 years ago is-finite 11e3a9652a first 8 years ago is-fullwidth-code-point 11e3a9652a first 8 years ago is-generator-fn 11e3a9652a first 8 years ago is-glob 11e3a9652a first 8 years ago is-my-ip-valid 11e3a9652a first 8 years ago is-my-json-valid 11e3a9652a first 8 years ago is-number 11e3a9652a first 8 years ago is-odd 11e3a9652a first 8 years ago is-path-cwd 11e3a9652a first 8 years ago is-path-in-cwd 11e3a9652a first 8 years ago is-path-inside 11e3a9652a first 8 years ago is-plain-obj 11e3a9652a first 8 years ago is-plain-object 11e3a9652a first 8 years ago is-posix-bracket 11e3a9652a first 8 years ago is-primitive 11e3a9652a first 8 years ago is-promise 11e3a9652a first 8 years ago is-property 11e3a9652a first 8 years ago is-regex 11e3a9652a first 8 years ago is-resolvable 11e3a9652a first 8 years ago is-stream 11e3a9652a first 8 years ago is-svg 11e3a9652a first 8 years ago is-symbol 11e3a9652a first 8 years ago is-typedarray 11e3a9652a first 8 years ago is-utf8 11e3a9652a first 8 years ago is-whitespace 11e3a9652a first 8 years ago is-windows 11e3a9652a first 8 years ago is-wsl 11e3a9652a first 8 years ago isarray 11e3a9652a first 8 years ago isexe 11e3a9652a first 8 years ago isobject 11e3a9652a first 8 years ago isstream 11e3a9652a first 8 years ago istanbul-api 11e3a9652a first 8 years ago istanbul-lib-coverage 11e3a9652a first 8 years ago istanbul-lib-hook 11e3a9652a first 8 years ago istanbul-lib-instrument 11e3a9652a first 8 years ago istanbul-lib-report 11e3a9652a first 8 years ago istanbul-lib-source-maps 11e3a9652a first 8 years ago istanbul-reports 11e3a9652a first 8 years ago jest 11e3a9652a first 8 years ago jest-changed-files 11e3a9652a first 8 years ago jest-config 11e3a9652a first 8 years ago jest-diff 11e3a9652a first 8 years ago jest-docblock 11e3a9652a first 8 years ago jest-environment-jsdom 11e3a9652a first 8 years ago jest-environment-node 11e3a9652a first 8 years ago jest-get-type 11e3a9652a first 8 years ago jest-haste-map 11e3a9652a first 8 years ago jest-jasmine2 11e3a9652a first 8 years ago jest-leak-detector 11e3a9652a first 8 years ago jest-matcher-utils 11e3a9652a first 8 years ago jest-message-util 11e3a9652a first 8 years ago jest-mock 11e3a9652a first 8 years ago jest-regex-util 11e3a9652a first 8 years ago jest-resolve 11e3a9652a first 8 years ago jest-resolve-dependencies 11e3a9652a first 8 years ago jest-runner 11e3a9652a first 8 years ago jest-runtime 11e3a9652a first 8 years ago jest-serializer 11e3a9652a first 8 years ago jest-serializer-vue 11e3a9652a first 8 years ago jest-snapshot 11e3a9652a first 8 years ago jest-util 11e3a9652a first 8 years ago jest-validate 11e3a9652a first 8 years ago jest-worker 11e3a9652a first 8 years ago js-base64 11e3a9652a first 8 years ago js-beautify 11e3a9652a first 8 years ago js-tokens 11e3a9652a first 8 years ago js-yaml 11e3a9652a first 8 years ago jsbn 11e3a9652a first 8 years ago jsdom 11e3a9652a first 8 years ago jsesc 11e3a9652a first 8 years ago json-loader 11e3a9652a first 8 years ago json-schema 11e3a9652a first 8 years ago json-schema-traverse 11e3a9652a first 8 years ago json-stable-stringify 11e3a9652a first 8 years ago json-stable-stringify-without-jsonify 11e3a9652a first 8 years ago json-stringify-safe 11e3a9652a first 8 years ago json3 11e3a9652a first 8 years ago json5 11e3a9652a first 8 years ago jsonify 11e3a9652a first 8 years ago jsonpointer 11e3a9652a first 8 years ago jsprim 11e3a9652a first 8 years ago kew 11e3a9652a first 8 years ago killable 11e3a9652a first 8 years ago kind-of 11e3a9652a first 8 years ago last-call-webpack-plugin 11e3a9652a first 8 years ago lazy-cache 11e3a9652a first 8 years ago lcid 11e3a9652a first 8 years ago left-pad 11e3a9652a first 8 years ago leven 11e3a9652a first 8 years ago levn 11e3a9652a first 8 years ago load-json-file 11e3a9652a first 8 years ago loader-fs-cache 11e3a9652a first 8 years ago loader-runner 11e3a9652a first 8 years ago loader-utils 11e3a9652a first 8 years ago locate-path 11e3a9652a first 8 years ago lodash 11e3a9652a first 8 years ago lodash._arraycopy 11e3a9652a first 8 years ago lodash._arrayeach 11e3a9652a first 8 years ago lodash._baseassign 11e3a9652a first 8 years ago lodash._baseclone 11e3a9652a first 8 years ago lodash._basecopy 11e3a9652a first 8 years ago lodash._basecreate 11e3a9652a first 8 years ago lodash._basefor 11e3a9652a first 8 years ago lodash._bindcallback 11e3a9652a first 8 years ago lodash._getnative 11e3a9652a first 8 years ago lodash._isiterateecall 11e3a9652a first 8 years ago lodash._stack 11e3a9652a first 8 years ago lodash.assign 11e3a9652a first 8 years ago lodash.camelcase 11e3a9652a first 8 years ago lodash.clone 11e3a9652a first 8 years ago lodash.clonedeep 11e3a9652a first 8 years ago lodash.create 11e3a9652a first 8 years ago lodash.defaultsdeep 11e3a9652a first 8 years ago lodash.isarguments 11e3a9652a first 8 years ago lodash.isarray 11e3a9652a first 8 years ago lodash.isplainobject 11e3a9652a first 8 years ago lodash.keys 11e3a9652a first 8 years ago lodash.keysin 11e3a9652a first 8 years ago lodash.memoize 11e3a9652a first 8 years ago lodash.mergewith 11e3a9652a first 8 years ago lodash.rest 11e3a9652a first 8 years ago lodash.sortby 11e3a9652a first 8 years ago lodash.tail 11e3a9652a first 8 years ago lodash.uniq 11e3a9652a first 8 years ago log-symbols 11e3a9652a first 8 years ago loglevel 11e3a9652a first 8 years ago longest 11e3a9652a first 8 years ago loose-envify 11e3a9652a first 8 years ago loud-rejection 11e3a9652a first 8 years ago lower-case 11e3a9652a first 8 years ago lru-cache 11e3a9652a first 8 years ago macaddress 11e3a9652a first 8 years ago make-dir 11e3a9652a first 8 years ago makeerror 11e3a9652a first 8 years ago map-cache 11e3a9652a first 8 years ago map-obj 11e3a9652a first 8 years ago map-visit 11e3a9652a first 8 years ago math-expression-evaluator 11e3a9652a first 8 years ago md5.js 11e3a9652a first 8 years ago media-typer 11e3a9652a first 8 years ago mem 11e3a9652a first 8 years ago memory-fs 11e3a9652a first 8 years ago meow 11e3a9652a first 8 years ago merge 11e3a9652a first 8 years ago merge-descriptors 11e3a9652a first 8 years ago merge-stream 11e3a9652a first 8 years ago methods 11e3a9652a first 8 years ago micromatch 11e3a9652a first 8 years ago miller-rabin 11e3a9652a first 8 years ago mime 11e3a9652a first 8 years ago mime-db 11e3a9652a first 8 years ago mime-types 11e3a9652a first 8 years ago mimic-fn 11e3a9652a first 8 years ago minimalistic-assert 11e3a9652a first 8 years ago minimalistic-crypto-utils 11e3a9652a first 8 years ago minimatch 11e3a9652a first 8 years ago minimist 11e3a9652a first 8 years ago mississippi 11e3a9652a first 8 years ago mixin-deep 11e3a9652a first 8 years ago mixin-object 11e3a9652a first 8 years ago mkdirp 11e3a9652a first 8 years ago mkpath 11e3a9652a first 8 years ago mocha-nightwatch 11e3a9652a first 8 years ago move-concurrently 11e3a9652a first 8 years ago ms 11e3a9652a first 8 years ago multicast-dns 11e3a9652a first 8 years ago multicast-dns-service-types 11e3a9652a first 8 years ago mute-stream 11e3a9652a first 8 years ago nan 11e3a9652a first 8 years ago nanomatch 11e3a9652a first 8 years ago natural-compare 11e3a9652a first 8 years ago negotiator 11e3a9652a first 8 years ago neo-async 11e3a9652a first 8 years ago netmask 11e3a9652a first 8 years ago next-tick 11e3a9652a first 8 years ago nightwatch 11e3a9652a first 8 years ago no-case 11e3a9652a first 8 years ago node-cache 11e3a9652a first 8 years ago node-forge 11e3a9652a first 8 years ago node-gyp 11e3a9652a first 8 years ago node-int64 11e3a9652a first 8 years ago node-libs-browser 11e3a9652a first 8 years ago node-notifier 11e3a9652a first 8 years ago node-sass 11e3a9652a first 8 years ago nopt 11e3a9652a first 8 years ago normalize-package-data 11e3a9652a first 8 years ago normalize-path 11e3a9652a first 8 years ago normalize-range 11e3a9652a first 8 years ago normalize-url 11e3a9652a first 8 years ago normalize-wheel 11e3a9652a first 8 years ago npm-run-path 11e3a9652a first 8 years ago npmlog 11e3a9652a first 8 years ago nth-check 11e3a9652a first 8 years ago num2fraction 11e3a9652a first 8 years ago number-is-nan 11e3a9652a first 8 years ago nwmatcher 11e3a9652a first 8 years ago oauth-sign 11e3a9652a first 8 years ago object-assign 11e3a9652a first 8 years ago object-copy 11e3a9652a first 8 years ago object-hash 11e3a9652a first 8 years ago object-keys 11e3a9652a first 8 years ago object-visit 11e3a9652a first 8 years ago object.getownpropertydescriptors 11e3a9652a first 8 years ago object.omit 11e3a9652a first 8 years ago object.pick 11e3a9652a first 8 years ago obuf 11e3a9652a first 8 years ago on-finished 11e3a9652a first 8 years ago on-headers 11e3a9652a first 8 years ago once 11e3a9652a first 8 years ago onetime 11e3a9652a first 8 years ago opener 11e3a9652a first 8 years ago opn 11e3a9652a first 8 years ago optimist 11e3a9652a first 8 years ago optimize-css-assets-webpack-plugin 11e3a9652a first 8 years ago optionator 11e3a9652a first 8 years ago ora 11e3a9652a first 8 years ago original 11e3a9652a first 8 years ago os-browserify 11e3a9652a first 8 years ago os-homedir 11e3a9652a first 8 years ago os-locale 11e3a9652a first 8 years ago os-tmpdir 11e3a9652a first 8 years ago osenv 11e3a9652a first 8 years ago p-finally 11e3a9652a first 8 years ago p-limit 11e3a9652a first 8 years ago p-locate 11e3a9652a first 8 years ago p-map 11e3a9652a first 8 years ago p-try 11e3a9652a first 8 years ago pac-proxy-agent 11e3a9652a first 8 years ago pac-resolver 11e3a9652a first 8 years ago pako 11e3a9652a first 8 years ago parallel-transform 11e3a9652a first 8 years ago param-case 11e3a9652a first 8 years ago parse-asn1 11e3a9652a first 8 years ago parse-glob 11e3a9652a first 8 years ago parse-json 11e3a9652a first 8 years ago parse5 11e3a9652a first 8 years ago parseurl 11e3a9652a first 8 years ago pascalcase 11e3a9652a first 8 years ago path-browserify 11e3a9652a first 8 years ago path-dirname 11e3a9652a first 8 years ago path-exists 11e3a9652a first 8 years ago path-is-absolute 11e3a9652a first 8 years ago path-is-inside 11e3a9652a first 8 years ago path-key 11e3a9652a first 8 years ago path-parse 11e3a9652a first 8 years ago path-to-regexp 11e3a9652a first 8 years ago path-type 11e3a9652a first 8 years ago pbkdf2 11e3a9652a first 8 years ago pend 11e3a9652a first 8 years ago performance-now 11e3a9652a first 8 years ago pify 11e3a9652a first 8 years ago pinkie 11e3a9652a first 8 years ago pinkie-promise 11e3a9652a first 8 years ago pkg-dir 11e3a9652a first 8 years ago pluralize 11e3a9652a first 8 years ago pn 11e3a9652a first 8 years ago portfinder 11e3a9652a first 8 years ago posix-character-classes 11e3a9652a first 8 years ago postcss 11e3a9652a first 8 years ago postcss-calc 11e3a9652a first 8 years ago postcss-colormin 11e3a9652a first 8 years ago postcss-convert-values 11e3a9652a first 8 years ago postcss-discard-comments 11e3a9652a first 8 years ago postcss-discard-duplicates 11e3a9652a first 8 years ago postcss-discard-empty 11e3a9652a first 8 years ago postcss-discard-overridden 11e3a9652a first 8 years ago postcss-discard-unused 11e3a9652a first 8 years ago postcss-filter-plugins 11e3a9652a first 8 years ago postcss-import 11e3a9652a first 8 years ago postcss-load-config 11e3a9652a first 8 years ago postcss-load-options 11e3a9652a first 8 years ago postcss-load-plugins 11e3a9652a first 8 years ago postcss-loader 11e3a9652a first 8 years ago postcss-merge-idents 11e3a9652a first 8 years ago postcss-merge-longhand 11e3a9652a first 8 years ago postcss-merge-rules 11e3a9652a first 8 years ago postcss-message-helpers 11e3a9652a first 8 years ago postcss-minify-font-values 11e3a9652a first 8 years ago postcss-minify-gradients 11e3a9652a first 8 years ago postcss-minify-params 11e3a9652a first 8 years ago postcss-minify-selectors 11e3a9652a first 8 years ago postcss-modules-extract-imports 11e3a9652a first 8 years ago postcss-modules-local-by-default 11e3a9652a first 8 years ago postcss-modules-scope 11e3a9652a first 8 years ago postcss-modules-values 11e3a9652a first 8 years ago postcss-normalize-charset 11e3a9652a first 8 years ago postcss-normalize-url 11e3a9652a first 8 years ago postcss-ordered-values 11e3a9652a first 8 years ago postcss-reduce-idents 11e3a9652a first 8 years ago postcss-reduce-initial 11e3a9652a first 8 years ago postcss-reduce-transforms 11e3a9652a first 8 years ago postcss-selector-parser 11e3a9652a first 8 years ago postcss-svgo 11e3a9652a first 8 years ago postcss-unique-selectors 11e3a9652a first 8 years ago postcss-url 11e3a9652a first 8 years ago postcss-value-parser 11e3a9652a first 8 years ago postcss-zindex 11e3a9652a first 8 years ago prelude-ls 11e3a9652a first 8 years ago prepend-http 11e3a9652a first 8 years ago preserve 11e3a9652a first 8 years ago prettier 11e3a9652a first 8 years ago pretty 11e3a9652a first 8 years ago pretty-error 11e3a9652a first 8 years ago pretty-format 11e3a9652a first 8 years ago private 11e3a9652a first 8 years ago process 11e3a9652a first 8 years ago process-nextick-args 11e3a9652a first 8 years ago progress 11e3a9652a first 8 years ago promise-inflight 11e3a9652a first 8 years ago proto-list 11e3a9652a first 8 years ago proxy-addr 11e3a9652a first 8 years ago proxy-agent 11e3a9652a first 8 years ago prr 11e3a9652a first 8 years ago pseudomap 11e3a9652a first 8 years ago public-encrypt 11e3a9652a first 8 years ago pump 11e3a9652a first 8 years ago pumpify 11e3a9652a first 8 years ago punycode 11e3a9652a first 8 years ago q 11e3a9652a first 8 years ago qrcodejs2 11e3a9652a first 8 years ago qs 11e3a9652a first 8 years ago query-string 11e3a9652a first 8 years ago querystring 11e3a9652a first 8 years ago querystring-es3 11e3a9652a first 8 years ago querystringify 11e3a9652a first 8 years ago randomatic 11e3a9652a first 8 years ago randombytes 11e3a9652a first 8 years ago randomfill 11e3a9652a first 8 years ago range-parser 11e3a9652a first 8 years ago raw-body 11e3a9652a first 8 years ago read-cache 11e3a9652a first 8 years ago read-pkg 11e3a9652a first 8 years ago read-pkg-up 11e3a9652a first 8 years ago readable-stream 11e3a9652a first 8 years ago readdirp 11e3a9652a first 8 years ago realpath-native 11e3a9652a first 8 years ago rechoir 11e3a9652a first 8 years ago redent 11e3a9652a first 8 years ago reduce-css-calc 11e3a9652a first 8 years ago reduce-function-call 11e3a9652a first 8 years ago regenerate 11e3a9652a first 8 years ago regenerator-runtime 11e3a9652a first 8 years ago regenerator-transform 11e3a9652a first 8 years ago regex-cache 11e3a9652a first 8 years ago regex-not 11e3a9652a first 8 years ago regexpp 11e3a9652a first 8 years ago regexpu-core 11e3a9652a first 8 years ago regjsgen 11e3a9652a first 8 years ago regjsparser 11e3a9652a first 8 years ago relateurl 11e3a9652a first 8 years ago remove-trailing-separator 11e3a9652a first 8 years ago renderkid 11e3a9652a first 8 years ago repeat-element 11e3a9652a first 8 years ago repeat-string 11e3a9652a first 8 years ago repeating 11e3a9652a first 8 years ago request 11e3a9652a first 8 years ago request-promise-core 11e3a9652a first 8 years ago request-promise-native 11e3a9652a first 8 years ago require-directory 11e3a9652a first 8 years ago require-from-string 11e3a9652a first 8 years ago require-main-filename 11e3a9652a first 8 years ago require-uncached 11e3a9652a first 8 years ago requires-port 11e3a9652a first 8 years ago resize-observer-polyfill 11e3a9652a first 8 years ago resolve 11e3a9652a first 8 years ago resolve-cwd 11e3a9652a first 8 years ago resolve-from 11e3a9652a first 8 years ago resolve-url 11e3a9652a first 8 years ago restore-cursor 11e3a9652a first 8 years ago ret 11e3a9652a first 8 years ago right-align 11e3a9652a first 8 years ago rimraf 11e3a9652a first 8 years ago ripemd160 11e3a9652a first 8 years ago run-async 11e3a9652a first 8 years ago run-queue 11e3a9652a first 8 years ago rx-lite 11e3a9652a first 8 years ago rx-lite-aggregates 11e3a9652a first 8 years ago safe-buffer 11e3a9652a first 8 years ago safe-regex 11e3a9652a first 8 years ago safer-buffer 11e3a9652a first 8 years ago sane 11e3a9652a first 8 years ago sass-graph 11e3a9652a first 8 years ago sass-loader 11e3a9652a first 8 years ago sax 11e3a9652a first 8 years ago schema-utils 11e3a9652a first 8 years ago scss-tokenizer 11e3a9652a first 8 years ago select-hose 11e3a9652a first 8 years ago selenium-server 11e3a9652a first 8 years ago selfsigned 11e3a9652a first 8 years ago semver 11e3a9652a first 8 years ago send 11e3a9652a first 8 years ago serialize-javascript 11e3a9652a first 8 years ago serve-index 11e3a9652a first 8 years ago serve-static 11e3a9652a first 8 years ago set-blocking 11e3a9652a first 8 years ago set-immediate-shim 11e3a9652a first 8 years ago set-value 11e3a9652a first 8 years ago setimmediate 11e3a9652a first 8 years ago setprototypeof 11e3a9652a first 8 years ago sha.js 11e3a9652a first 8 years ago shallow-clone 11e3a9652a first 8 years ago shebang-command 11e3a9652a first 8 years ago shebang-regex 11e3a9652a first 8 years ago shelljs 11e3a9652a first 8 years ago shellwords 11e3a9652a first 8 years ago sigmund 11e3a9652a first 8 years ago signal-exit 11e3a9652a first 8 years ago slash 11e3a9652a first 8 years ago slice-ansi 11e3a9652a first 8 years ago smart-buffer 11e3a9652a first 8 years ago snapdragon 11e3a9652a first 8 years ago snapdragon-node 11e3a9652a first 8 years ago snapdragon-util 11e3a9652a first 8 years ago sntp 11e3a9652a first 8 years ago sockjs 11e3a9652a first 8 years ago sockjs-client 11e3a9652a first 8 years ago socks 11e3a9652a first 8 years ago socks-proxy-agent 11e3a9652a first 8 years ago sort-keys 11e3a9652a first 8 years ago source-list-map 11e3a9652a first 8 years ago source-map 11e3a9652a first 8 years ago source-map-resolve 11e3a9652a first 8 years ago source-map-support 11e3a9652a first 8 years ago source-map-url 11e3a9652a first 8 years ago spdx-correct 11e3a9652a first 8 years ago spdx-exceptions 11e3a9652a first 8 years ago spdx-expression-parse 11e3a9652a first 8 years ago spdx-license-ids 11e3a9652a first 8 years ago spdy 11e3a9652a first 8 years ago spdy-transport 11e3a9652a first 8 years ago split-string 11e3a9652a first 8 years ago sprintf-js 11e3a9652a first 8 years ago sshpk 11e3a9652a first 8 years ago ssri 11e3a9652a first 8 years ago stack-utils 11e3a9652a first 8 years ago stackframe 11e3a9652a first 8 years ago static-extend 11e3a9652a first 8 years ago statuses 11e3a9652a first 8 years ago stdout-stream 11e3a9652a first 8 years ago stealthy-require 11e3a9652a first 8 years ago stream-browserify 11e3a9652a first 8 years ago stream-each 11e3a9652a first 8 years ago stream-http 11e3a9652a first 8 years ago stream-shift 11e3a9652a first 8 years ago strict-uri-encode 11e3a9652a first 8 years ago string-length 11e3a9652a first 8 years ago string-width 11e3a9652a first 8 years ago string_decoder 11e3a9652a first 8 years ago stringstream 11e3a9652a first 8 years ago strip-ansi 11e3a9652a first 8 years ago strip-bom 11e3a9652a first 8 years ago strip-eof 11e3a9652a first 8 years ago strip-indent 11e3a9652a first 8 years ago strip-json-comments 11e3a9652a first 8 years ago supports-color 11e3a9652a first 8 years ago svg-tags 11e3a9652a first 8 years ago svgo 11e3a9652a first 8 years ago symbol-tree 11e3a9652a first 8 years ago table 11e3a9652a first 8 years ago tapable 11e3a9652a first 8 years ago tar 11e3a9652a first 8 years ago test-exclude 11e3a9652a first 8 years ago text-table 11e3a9652a first 8 years ago throat 11e3a9652a first 8 years ago throttle-debounce 11e3a9652a first 8 years ago through 11e3a9652a first 8 years ago through2 11e3a9652a first 8 years ago thunkify 11e3a9652a first 8 years ago thunky 11e3a9652a first 8 years ago time-stamp 11e3a9652a first 8 years ago timers-browserify 11e3a9652a first 8 years ago tmp 11e3a9652a first 8 years ago tmpl 11e3a9652a first 8 years ago to-arraybuffer 11e3a9652a first 8 years ago to-fast-properties 11e3a9652a first 8 years ago to-object-path 11e3a9652a first 8 years ago to-regex 11e3a9652a first 8 years ago to-regex-range 11e3a9652a first 8 years ago toposort 11e3a9652a first 8 years ago tough-cookie 11e3a9652a first 8 years ago tr46 11e3a9652a first 8 years ago trim-newlines 11e3a9652a first 8 years ago trim-right 11e3a9652a first 8 years ago true-case-path 11e3a9652a first 8 years ago tryer 11e3a9652a first 8 years ago tsconfig 11e3a9652a first 8 years ago tty-browserify 11e3a9652a first 8 years ago tunnel-agent 11e3a9652a first 8 years ago tweetnacl 11e3a9652a first 8 years ago type-check 11e3a9652a first 8 years ago type-detect 11e3a9652a first 8 years ago type-is 11e3a9652a first 8 years ago typedarray 11e3a9652a first 8 years ago uglify-js 11e3a9652a first 8 years ago uglify-to-browserify 11e3a9652a first 8 years ago uglifyjs-webpack-plugin 11e3a9652a first 8 years ago union-value 11e3a9652a first 8 years ago uniq 11e3a9652a first 8 years ago uniqid 11e3a9652a first 8 years ago uniqs 11e3a9652a first 8 years ago unique-filename 11e3a9652a first 8 years ago unique-slug 11e3a9652a first 8 years ago unpipe 11e3a9652a first 8 years ago unset-value 11e3a9652a first 8 years ago upath 11e3a9652a first 8 years ago upper-case 11e3a9652a first 8 years ago uri-js 11e3a9652a first 8 years ago urix 11e3a9652a first 8 years ago url 11e3a9652a first 8 years ago url-loader 11e3a9652a first 8 years ago url-parse 11e3a9652a first 8 years ago use 11e3a9652a first 8 years ago util 11e3a9652a first 8 years ago util-deprecate 11e3a9652a first 8 years ago util.promisify 11e3a9652a first 8 years ago utila 11e3a9652a first 8 years ago utils-merge 11e3a9652a first 8 years ago uuid 11e3a9652a first 8 years ago validate-npm-package-license 11e3a9652a first 8 years ago vary 11e3a9652a first 8 years ago vendors 11e3a9652a first 8 years ago verror 11e3a9652a first 8 years ago vm-browserify 11e3a9652a first 8 years ago vue 11e3a9652a first 8 years ago vue-eslint-parser 11e3a9652a first 8 years ago vue-hot-reload-api 11e3a9652a first 8 years ago vue-jest 11e3a9652a first 8 years ago vue-loader 11e3a9652a first 8 years ago vue-router 11e3a9652a first 8 years ago vue-style-loader 11e3a9652a first 8 years ago vue-template-compiler 11e3a9652a first 8 years ago vue-template-es2015-compiler 11e3a9652a first 8 years ago w3c-hr-time 11e3a9652a first 8 years ago walker 11e3a9652a first 8 years ago watch 11e3a9652a first 8 years ago watchpack 11e3a9652a first 8 years ago wbuf 11e3a9652a first 8 years ago webidl-conversions 11e3a9652a first 8 years ago webpack 11e3a9652a first 8 years ago webpack-bundle-analyzer 11e3a9652a first 8 years ago webpack-dev-middleware 11e3a9652a first 8 years ago webpack-dev-server 11e3a9652a first 8 years ago webpack-merge 11e3a9652a first 8 years ago webpack-sources 11e3a9652a first 8 years ago websocket-driver 11e3a9652a first 8 years ago websocket-extensions 11e3a9652a first 8 years ago whatwg-encoding 11e3a9652a first 8 years ago whatwg-mimetype 11e3a9652a first 8 years ago whatwg-url 11e3a9652a first 8 years ago whet.extend 11e3a9652a first 8 years ago which 11e3a9652a first 8 years ago which-module 11e3a9652a first 8 years ago wide-align 11e3a9652a first 8 years ago window-size 11e3a9652a first 8 years ago wordwrap 11e3a9652a first 8 years ago worker-farm 11e3a9652a first 8 years ago wrap-ansi 11e3a9652a first 8 years ago wrappy 11e3a9652a first 8 years ago write 11e3a9652a first 8 years ago write-file-atomic 11e3a9652a first 8 years ago ws 11e3a9652a first 8 years ago xml-name-validator 11e3a9652a first 8 years ago xregexp 11e3a9652a first 8 years ago xtend 11e3a9652a first 8 years ago xxhashjs 11e3a9652a first 8 years ago y18n 11e3a9652a first 8 years ago yallist 11e3a9652a first 8 years ago yargs 11e3a9652a first 8 years ago yargs-parser 11e3a9652a first 8 years ago yauzl 11e3a9652a first 8 years ago zrender 11e3a9652a first 8 years ago Sign In - Gogs: Go Git Service

Sign In

iSort & Pycodestyle · 3e9628d0c9 - Gogs: Go Git Service

iSort & Pycodestyle

huangqimin001 6 anos atrás
pai
commit
3e9628d0c9

+ 2 - 2
account/models.py

@@ -7,7 +7,7 @@ from jsonfield import JSONField
7 7
 from TimeConvert import TimeConvert as tc
8 8
 
9 9
 from kodo.basemodels import LensmanTypeBoolMixin
10
-from mch.models import MaintenancemanInfo, SaleclerkInfo, ConsumeInfoSubmitLogInfo
10
+from mch.models import ConsumeInfoSubmitLogInfo, MaintenancemanInfo, SaleclerkInfo
11 11
 from sales.models import SalesResponsibilityInfo
12 12
 
13 13
 
@@ -542,7 +542,7 @@ class UserInfo(BaseModelMixin, LensmanTypeBoolMixin):
542 542
             'created_at': tc.local_string(utc_dt=self.created_at, format='%Y-%m-%d %H:%M:%S'),
543 543
             'code_version': self.code_version,
544 544
 
545
-            #商品信息
545
+            # 商品信息
546 546
             'models': list(models),
547 547
 
548 548
             # 会员信息

+ 16 - 11
api/admin_views.py

@@ -16,9 +16,9 @@ from TimeConvert import TimeConvert as tc
16 16
 from account.models import UserInfo
17 17
 from coupon.models import UserCouponInfo
18 18
 from integral.models import SaleclerkSubmitLogInfo
19
-from mch.models import AdministratorInfo, ConsumeInfoSubmitLogInfo, ModelInfo, DistributorInfo
20
-from member.models import GoodsOrderInfo
21 19
 from logs.models import MchInfoEncryptLogInfo
20
+from mch.models import AdministratorInfo, ConsumeInfoSubmitLogInfo, DistributorInfo, ModelInfo
21
+from member.models import GoodsOrderInfo
22 22
 from statistic.models import ConsumeModelSaleStatisticInfo, ConsumeSaleStatisticInfo, ConsumeUserStatisticInfo
23 23
 from utils.error.errno_utils import (AdministratorStatusCode, ProductBrandStatusCode, ProductCouponStatusCode,
24 24
                                      ProductMachineStatusCode, UserStatusCode)
@@ -238,7 +238,7 @@ def query_userinfo(request):
238 238
 
239 239
     if sex:
240 240
         userinfos = userinfos.filter(sex=sex)
241
-    
241
+
242 242
     if province:
243 243
         userinfos = userinfos.filter(province_name=province)
244 244
 
@@ -407,7 +407,7 @@ def statistic_distributor(request):
407 407
 
408 408
         model_logs = SaleclerkSubmitLogInfo.objects.raw(model_sql)
409 409
         model_logs = [{'model_uni_name': log.model_uni_name, 'num': log.num, 'code1': log.code1, 'code2': log.code2, 'has_code1_scan_num': log.has_code1_scan_num, 'has_code2_scan_num': log.has_code2_scan_num} for log in model_logs]
410
-    
410
+
411 411
     distributor_logs = []
412 412
     if distributor_name == '':
413 413
         distributor_sql = 'select id, distributor_name, Count(*) AS num, Count(code_version=1 or NULL) AS code1 , Count(code_version=2 or NULL) AS code2, Count((code_version=1 AND has_scan=True) or NULL) AS has_code1_scan_num, Count((code_version=2 AND has_scan=True) or NULL) AS has_code2_scan_num FROM integral_saleclerksubmitloginfo where ymd >= %s AND ymd <= %s AND test_user=False AND dupload=False AND test_sn=False AND status=True %s GROUP BY distributor_name;' % (start_time, end_time, ('AND model_uni_name="%s"' % (model_name)) if model_name else '')
@@ -497,7 +497,7 @@ def statistic_consumer(request):
497 497
 
498 498
         model_logs = ConsumeInfoSubmitLogInfo.objects.raw(model_sql)
499 499
         model_logs = [{'model_uni_name': log.model_uni_name, 'num': log.num, 'code1': log.code1, 'code2': log.code2} for log in model_logs]
500
-    
500
+
501 501
     province_sql = 'select id, province, Count(id) AS num, Count(code_version=1 or NULL) AS code1, Count(code_version=2 or NULL) AS code2 FROM mch_consumeinfosubmitloginfo where ymd >= %s AND ymd <= %s AND test_user=False AND dupload=False AND status=True %s GROUP BY province ORDER BY num desc;' % (start_time, end_time, ('AND model_uni_name="%s"' % (model_name)) if model_name else '')
502 502
 
503 503
     province_logs = ConsumeInfoSubmitLogInfo.objects.raw(province_sql)
@@ -647,6 +647,7 @@ def record_sale(request):
647 647
         'left': left
648 648
     })
649 649
 
650
+
650 651
 def model_list(request):
651 652
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
652 653
     admin_id = request.POST.get('admin_id', '')
@@ -664,7 +665,8 @@ def model_list(request):
664 665
     return response(200, 'Get Model List Success', u'获取型号列表成功', data={
665 666
         'models': infos
666 667
     })
667
-    
668
+
669
+
668 670
 def distributor_list(request):
669 671
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
670 672
     admin_id = request.POST.get('admin_id', '')
@@ -682,7 +684,8 @@ def distributor_list(request):
682 684
     return response(200, 'Get Model List Success', u'获取经销商列表成功', data={
683 685
         'distributors': infos
684 686
     })
685
-    
687
+
688
+
686 689
 def member_goods_order(request):
687 690
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
688 691
     admin_id = request.POST.get('admin_id', '')
@@ -714,6 +717,7 @@ def member_goods_order(request):
714 717
         'count': count
715 718
     })
716 719
 
720
+
717 721
 def member_goods_order_update(request):
718 722
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
719 723
     admin_id = request.POST.get('admin_id', '')
@@ -732,6 +736,7 @@ def member_goods_order_update(request):
732 736
 
733 737
     return response(200, 'Get Member Goods Order Update Success', u'获取会员商品订单修改成功')
734 738
 
739
+
735 740
 def record_warehouse(request):
736 741
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
737 742
     admin_id = request.POST.get('admin_id', '')
@@ -749,17 +754,17 @@ def record_warehouse(request):
749 754
         administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
750 755
     except AdministratorInfo.DoesNotExist:
751 756
         return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
752
-    
757
+
753 758
     models = ModelInfo.objects.filter(model_name__icontains=model_name, status=True).values_list('pk', flat=True)
754 759
     logs = MchInfoEncryptLogInfo.objects.filter(model_pk__in=models, sn__icontains=sn, status=True)
755 760
 
756 761
     if start_time and end_time:
757 762
         start_time = datetime.strptime(start_time, '%Y%m%d')
758
-        end_time = datetime.strptime(end_time+' 23:59:59', '%Y%m%d %H:%M:%S')
763
+        end_time = datetime.strptime(end_time + ' 23:59:59', '%Y%m%d %H:%M:%S')
759 764
         logs = logs.filter(created_at__range=(start_time, end_time))
760
-    
765
+
761 766
     logs = logs.order_by('-created_at')
762
-    
767
+
763 768
     count = logs.count()
764 769
     logs, left = pagination(logs, page, num)
765 770
     logs = [log.admindata for log in logs]

+ 1 - 3
api/mch_views.py

@@ -292,7 +292,7 @@ def consumer_info_api(request):
292 292
         during_activity = False
293 293
     else:
294 294
         during_activity = True if activities else False
295
-        
295
+
296 296
         # 更新销售员提交的表
297 297
         SaleclerkSubmitLogInfo.objects.filter(code=serialNo, model_pk=model.pk, status=True).update(has_scan=True)
298 298
 
@@ -355,10 +355,8 @@ def consumer_info_api(request):
355 355
             submit_pk=log.pk,
356 356
         )
357 357
 
358
-
359 358
     if not user.test_user and not dupload:
360 359
         # TODO: Make statistic async
361
-
362 360
         cusi, _ = ConsumeUserStatisticInfo.objects.get_or_create(
363 361
             brand_id=brand.brand_id,
364 362
             ymd=ymd,

+ 16 - 17
api/staff_views.py

@@ -1,19 +1,18 @@
1 1
 # -*- coding: utf-8 -*-
2 2
 
3 3
 from django.conf import settings
4
-from django.contrib.admin.views.decorators import staff_member_required
5 4
 from django.db import transaction
6 5
 from django_logit import logit
7 6
 from django_response import response
8 7
 
9
-from integral.models import SaleclerkIntegralIncomeExpensesInfo, SaleclerkSubmitLogInfo
10
-from mch.models import BrandInfo, DistributorInfo, ModelInfo, SaleclerkInfo, ConsumeInfoSubmitLogInfo, ActivityInfo
11
-from staff.models import StaffDeleteClerkSaleSubmitLogInfo
12
-from coupon.models import CouponInfo, UserCouponInfo
13 8
 from account.models import UserInfo
9
+from coupon.models import CouponInfo, UserCouponInfo
10
+from integral.models import SaleclerkIntegralIncomeExpensesInfo, SaleclerkSubmitLogInfo
11
+from mch.models import BrandInfo, ConsumeInfoSubmitLogInfo, DistributorInfo, ModelInfo, SaleclerkInfo
14 12
 from member.models import RightInfo
15
-from statistic.models import (DistributorSaleStatisticInfo, ModelSaleStatisticInfo, ProvinceSaleStatisticInfo,
16
-                              SaleclerkSaleStatisticInfo, SaleStatisticInfo, ConsumeSaleStatisticInfo, ConsumeDistributorSaleStatisticInfo, ConsumeModelSaleStatisticInfo, ConsumeProvinceSaleStatisticInfo, ConsumeUserStatisticInfo)
13
+from statistic.models import (ConsumeModelSaleStatisticInfo, ConsumeSaleStatisticInfo, ConsumeUserStatisticInfo,
14
+                              DistributorSaleStatisticInfo, ModelSaleStatisticInfo, ProvinceSaleStatisticInfo,
15
+                              SaleclerkSaleStatisticInfo, SaleStatisticInfo)
17 16
 
18 17
 
19 18
 def exec_del_clerk_sale_submit(pk):
@@ -52,15 +51,15 @@ def exec_del_clerk_sale_submit(pk):
52 51
     ymd = str(ssli.ymd)
53 52
 
54 53
     if not clerk.test_user and not ssli.dupload:
55
-        #删除积分
56
-
54
+        # 删除积分
57 55
         try:
58 56
             income = SaleclerkIntegralIncomeExpensesInfo.objects.select_for_update().get(model_id=model.model_id, code=ssli.code, clerk_id=ssli.clerk_id)
59
-            income.status = False
60
-            income.save()
61 57
         except SaleclerkIntegralIncomeExpensesInfo.DoesNotExist:
62 58
             return response()
63
-        
59
+
60
+        income.status = False
61
+        income.save()
62
+
64 63
         integral = model.integral
65 64
 
66 65
         clerk.num -= 1
@@ -221,6 +220,7 @@ def del_clerk_sale_submit_api(request):
221 220
 
222 221
     return response(200, 'Del Success', u'删除成功')
223 222
 
223
+
224 224
 def exec_del_consumer_submit(pk):
225 225
     try:
226 226
         ssli = ConsumeInfoSubmitLogInfo.objects.select_for_update().get(pk=pk)
@@ -236,7 +236,7 @@ def exec_del_consumer_submit(pk):
236 236
     ssli.save()
237 237
 
238 238
     ConsumeInfoSubmitLogInfo.objects.filter(serialNo=sn, model_id=ssli.model_id, dupload=True, status=True).update(status=False)
239
-    
239
+
240 240
     if ssli.dupload:
241 241
         return response()
242 242
 
@@ -255,7 +255,7 @@ def exec_del_consumer_submit(pk):
255 255
     except UserInfo.DoesNotExist:
256 256
         return response()
257 257
 
258
-    #消除用户劵
258
+    # 消除用户劵
259 259
     if user.shots_num <= 5:
260 260
         rights = RightInfo.objects.filter(is_send_coupon=True, status=True)
261 261
         for right in rights:
@@ -285,12 +285,12 @@ def exec_del_consumer_submit(pk):
285 285
             user_coupons = UserCouponInfo.objects.filter(user_id=user.user_id, coupon_id=coupon_id, coupon_from='MEMBER_BENEFITS', status=True, has_used=False).values_list('pk', flat=True)
286 286
             # 防止用户部分劵已使用,不够消除
287 287
             UserCouponInfo.objects.filter(pk__in=list(user_coupons)[0:min(coupon_num, len(user_coupons))]).update(status=False)
288
-    
288
+
289 289
     # 消除活动劵
290 290
     if ssli.submit_during_activity:
291 291
         UserCouponInfo.objects.filter(user_id=user.user_id, coupon_from='PROMOTION', submit_pk=ssli.pk).update(status=False)
292 292
 
293
-    #消除积分及会员等级
293
+    # 消除积分及会员等级
294 294
     integral = model.shot_member_integral
295 295
 
296 296
     if user.shots_num <= 5:
@@ -327,7 +327,6 @@ def exec_del_consumer_submit(pk):
327 327
         ssi.num -= 1
328 328
         ssi.save()
329 329
 
330
-
331 330
         # 日用户统计
332 331
         ussi, _ = ConsumeUserStatisticInfo.objects.select_for_update().get_or_create(
333 332
             brand_id=brand.brand_id,

+ 2 - 2
commands/management/commands/qiniu.py

@@ -44,14 +44,14 @@ class Command(CompatibilityBaseCommand):
44 44
                     try:
45 45
                         upload_file_path(ssli.image.path, key=ssli.image.name, bucket='tamron')
46 46
                         os.remove(ssli.image.path)
47
-                    except:
47
+                    except Exception:
48 48
                         pass
49 49
 
50 50
                 if ssli.code_image:
51 51
                     try:
52 52
                         upload_file_path(ssli.code_image.path, key=ssli.code_image.name, bucket='tamron')
53 53
                         os.remove(ssli.code_image.path)
54
-                    except:
54
+                    except Exception:
55 55
                         pass
56 56
 
57 57
                 ssli.is_upload_qiniu = True

+ 2 - 2
commands/management/commands/qiniuproducer.py

@@ -21,6 +21,6 @@ class Command(CompatibilityBaseCommand):
21 21
 
22 22
         for ssli in sslis:
23 23
             r.rpushjson(QINIU_UPLOAD_LIST, {
24
-               'model': 'SaleclerkSubmitLogInfo',
25
-               'pk': ssli.pk,
24
+                'model': 'SaleclerkSubmitLogInfo',
25
+                'pk': ssli.pk,
26 26
             })

+ 1 - 1
isort.sh

@@ -1,3 +1,3 @@
1 1
 #!/bin/bash
2 2
 
3
-isort -rc -sp . .
3
+isort .

+ 5 - 2
kodo/oauth_settings.py

@@ -44,15 +44,16 @@ def DJANGO_WE_MESSAGE_CALLBACK_FUNC(request, data, decrypted=None):
44 44
 
45 45
 def DJANGO_WE_COMPONENT_CALLBACK_FUNC(request, appid, data, decrypted=None):
46 46
     """ WeChat Component Message Callback Func """
47
-    from account.models import UserInfo
48 47
     from django_we.models import SubscribeUserInfo
49 48
     from pywe_component_authorizer_token import authorizer_access_token
50 49
     from pywe_custom_message import send_custom_card_message
51 50
     from pywe_event_message import parse_eventkey
52 51
     from pywe_storage import RedisStorage
53 52
     from pywe_user import get_user_info
53
+
54
+    from account.models import UserInfo
54 55
     from utils.redis.connect import r
55
-    from utils.redis.rkeys import SUBSCRIBE_USERINFO_LIST, MEMBERCARD_USERINFO_LIST
56
+    from utils.redis.rkeys import MEMBERCARD_USERINFO_LIST, SUBSCRIBE_USERINFO_LIST
56 57
 
57 58
     logger.info(appid)
58 59
     logger.info(data)
@@ -202,6 +203,7 @@ def DJANGO_FILE_UPLOAD_CALLBACK_FUNC(request, file_path=None, file_url=None):
202 203
     zbar = int(request.POST.get('zbar', 0))
203 204
     if zbar:
204 205
         import os
206
+
205 207
         from utils.zbar.zbar import zbar
206 208
 
207 209
         file_path = os.path.join(settings.MEDIA_ROOT, file_path)
@@ -214,6 +216,7 @@ def DJANGO_FILE_UPLOAD_CALLBACK_FUNC(request, file_path=None, file_url=None):
214 216
     zbar2 = int(request.POST.get('zbar2', 0))
215 217
     if zbar:
216 218
         import os
219
+
217 220
         from utils.zbar.zbar2 import zbar2
218 221
 
219 222
         file_path = os.path.join(settings.MEDIA_ROOT, file_path)

+ 4 - 3
logs/models.py

@@ -3,10 +3,11 @@
3 3
 from django.db import models
4 4
 from django.utils.translation import ugettext_lazy as _
5 5
 from django_models_ext import BaseModelMixin, upload_file_url, upload_path
6
-from mch.models import ModelInfo, OperatorInfo
7 6
 from shortuuidfield import ShortUUIDField
8 7
 from TimeConvert import TimeConvert as tc
9 8
 
9
+from mch.models import ModelInfo, OperatorInfo
10
+
10 11
 
11 12
 class MchInfoEncryptLogInfo(BaseModelMixin):
12 13
     plaintext = models.CharField(_(u'plaintext'), max_length=64, blank=True, null=True, help_text=u'待加密字符串', db_index=True, unique=True)
@@ -36,13 +37,13 @@ class MchInfoEncryptLogInfo(BaseModelMixin):
36 37
 
37 38
     def __unicode__(self):
38 39
         return unicode(self.pk)
39
-    
40
+
40 41
     @property
41 42
     def admindata(self):
42 43
         model = ModelInfo.objects.get(pk=self.model_pk, status=True)
43 44
         try:
44 45
             operator_name = OperatorInfo.objects.get(operator_id=self.operator_id).name
45
-        except:
46
+        except OperatorInfo.DoesNotExist:
46 47
             operator_name = '深圳捷成'
47 48
 
48 49
         return {

+ 1 - 2
member/models.py

@@ -135,7 +135,7 @@ class GoodsOrderInfo(BaseModelMixin):
135 135
 
136 136
     def __unicode__(self):
137 137
         return unicode(self.pk)
138
-    
138
+
139 139
     @property
140 140
     def admindata(self):
141 141
         good = GoodsInfo.objects.get(good_id=self.good_id)
@@ -312,7 +312,6 @@ class MemberActivityInfo(BaseModelMixin):
312 312
 
313 313
     position = models.IntegerField(_(u'position'), default=1, help_text=u'排序', db_index=True)
314 314
 
315
-
316 315
     is_signup = models.BooleanField(_(u'is_signup'), default=True, help_text=u'是否有报名功能', db_index=True)
317 316
 
318 317
     class Meta:

+ 4 - 3
miniapp/views.py

@@ -156,14 +156,15 @@ def mini_login_api(request):
156 156
     user.appid = appId
157 157
     if unionid:
158 158
         user.unionid = unionid
159
-    
159
+
160 160
     # 同步销售员手机号
161 161
     try:
162 162
         saleclerk = SaleclerkInfo.objects.get(unionid=unionid, is_auth=True, status=True)
163
-        user.phone = saleclerk.clerk_phone
164 163
     except SaleclerkInfo.DoesNotExist:
165
-        saleclerk = None        
164
+        saleclerk = None
166 165
 
166
+    if saleclerk:
167
+        user.phone = saleclerk.clerk_phone
167 168
     user.user_status = UserInfo.ACTIVATED
168 169
     user.signup_ip = client_ip(request)
169 170
     user.signup_at = tc.utc_datetime()

+ 1 - 1
simditor/urls.py

@@ -24,7 +24,7 @@ elif django.VERSION >= (1, 8):
24 24
             name='simditor_upload'),
25 25
     ]
26 26
 else:
27
-    from django.conf.urls import patterns    # pylint disable=C0411
27
+    from django.conf.urls import patterns  # pylint disable=C0411
28 28
 
29 29
     # pylint disable=C0103
30 30
     urlpatterns = patterns(

+ 1 - 1
simditor/widgets.py

@@ -25,7 +25,7 @@ try:
25 25
     from django.forms.utils import flatatt
26 26
 except ImportError:
27 27
     # Django <1.7
28
-    from django.forms.util import flatatt        # pylint disable=E0611, E0401
28
+    from django.forms.util import flatatt  # pylint disable=E0611, E0401
29 29
 
30 30
 
31 31
 class LazyEncoder(DjangoJSONEncoder):

+ 0 - 1
utils/zbar/zbar.py

@@ -2,7 +2,6 @@
2 2
 
3 3
 from django.conf import settings
4 4
 from PIL import Image, ImageEnhance
5
-
6 5
 from pyzbar import pyzbar
7 6
 
8 7