(if pj/work-computer-p
(progn
(setq url-using-proxy t)
(setq url-proxy-services
'(("http" . "proxy:8080")
("no_proxy" . "^.*\\(corp\\|network\\)\.thales")))
(setq pj/alist-of-proxy-logins
'(("my-login" . "my-password")))
(defvar pj/proxy-login nil)
(defadvice read-string (after pj/read-string-after)
(setq pj/proxy-login ad-return-value))
(ad-activate 'read-string)
(defadvice read-password (around pj/read-password-around)
(let ((password-found (cdr (assoc pj/proxy-login pj/alist-of-proxy-logins))))
(if password-found
(progn
(setq ad-return-value password-found)
(setq pj/proxy-login nil))
(ad-do-it))))
(ad-activate 'read-password)))