App-Alice

 view release on metacpan or  search on metacpan

share/static/alice-dark.css  view on Meta::CPAN

  display: block;
  position: absolute;
  top: 0px;
  left: 0px;
  bottom: 0px;
  width: 22px;
  border: none;
  padding: 0;
  margin: 0;
  opacity: 0;
  font-size: 12px; }

select#tab_overflow_overlay option.unread {
  font-weight: bold; }

li#tab_overflow_button {
  background: url(image/sprites.png) 3px -174px no-repeat; }

li#tab_overflow_button.unread {
  background: url(image/sprites.png) 3px -194px no-repeat; }

li#config_button {
  background: url(image/sprites.png) 4px -216px no-repeat; }

body {
  font-family: "Lucida Grande", Helvetica, sans-serif;
  text-rendering: optimizeLegibility;
  background: #222222; }

a:link, a:visited, a:hover, a:active {
  color: white; }

a:hover {
  text-shadow: rgba(255, 255, 255, 0.8) 0 1px 1px; }

div.window {

share/static/alice-dark.css  view on Meta::CPAN


tr.input div.editor,
tr.input textarea {
  line-height: 1.2em;
  min-height: 1.2em;
  width: 100%;
  padding: 3px 0;
  border: none;
  margin: 0;
  outline: 0 none;
  font-size: 12px;
  overflow: hidden;
  resize: none;
  font-family: "Lucida Grande", Helvetica, sans-serif; }

div.editor {
  white-space: pre-wrap;
  -khtml-nbsp-mode: space; }

tr.input div.editor_toolbar {
  overflow: hidden;
  position: absolute;
  right: -170px;
  padding-right: 8px;

share/static/alice-dark.css  view on Meta::CPAN

  opacity: 0.2;
  -webkit-transition-property: right;
  -webkit-transition-duration: 0.3s; }

tr.input div.editor_toolbar button {
  visibility: hidden;
  display: block;
  float: left;
  color: #222222;
  line-height: 10px;
  font-size: 11px;
  margin: 0;
  padding: 4px 3px 5px 3px;
  text-align: center;
  background: none;
  cursor: pointer;
  border: none; }

tr.input div.editor_toolbar button:hover {
  color: black; }

tr.input div.editor_toolbar button.selected {
  color: yellow; }

.bold {
  font-weight: bold; }

.italic {
  font-style: italic; }

.underline {
  text-decoration: underline; }

tr.input div.editor_toolbar:hover {
  opacity: 0.4;
  cursor: pointer; }

tr.input div.editor_toolbar.visible:hover {
  opacity: 1;

share/static/alice-dark.css  view on Meta::CPAN

  visibility: visible; }

div.editor div,
div.editor p,
div.editor h1,
div.editor h2,
div.editor h3,
div.editor h4,
div.editor h5,
div.editor span {
  font-size: 1em !important;
  margin: 0 !important;
  padding: 0 !important; }

div.editor img {
  display: none !important; }

tr.input input.send {
  display: none; }

div#tab_container {

share/static/alice-dark.css  view on Meta::CPAN

  height: 23px;
  background: #444444; }

body.blurred div#tab_container {
  background: #333333; }

ul#tabs {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 11px;
  position: relative;
  float: left;
  margin-right: 62px;
  padding-left: 3px; }

body.blurred ul#tabs li {
  background: #333333;
  color: #cccccc; }

ul#tabs li {

share/static/alice-dark.css  view on Meta::CPAN

  width: 16px;
  padding: 4px 3px 3px 3px;
  cursor: pointer; }

ul#controls li:hover {
  background-color: #3a3a3a; }

tr.topic td {
  width: 100%;
  background: #3a3a3a;
  font-size: 11px;
  text-align: center;
  border-top: 1px solid #666666;
  border-bottom: 1px solid black;
  padding: 1px 0;
  height: 1.2em; }

tr.topic td div.topic {
  height: 1.2em;
  overflow: hidden; }

share/static/alice-dark.css  view on Meta::CPAN

  background: #222222; }

ul.messages {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  margin: 3px 0; }

ul.messages > li {
  font-size: 13px;
  display: block;
  position: relative;
  background-color: #111111; }

ul.messages > li:not(.consecutive) {
  clear: both; }

ul.messages li.highlight {
  border-right: 5px solid #eb2222; }

share/static/alice-dark.css  view on Meta::CPAN


ul.messages li div.msg {
  background: #222222; }

ul.messages li.consecutive div.left {
  display: none; }

div.left {
  float: left;
  width: 95px;
  font-weight: bold;
  text-align: right;
  padding: 4px 0;
  padding-right: 4px;
  padding-bottom: 0;
  text-overflow: ellipsis;
  position: relative; }

li.event a,
li.event {
  color: #cccccc; }

share/static/alice-dark.css  view on Meta::CPAN

  padding: 0 2px;
  min-width: 28px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  text-shadow: black 0 1px 1px;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-in-out; }

div.timehint {
  position: absolute;
  font-size: 10px;
  right: 0px;
  top: 1px;
  padding: 6px 4px 2px 4px;
  color: #cccccc;
  opacity: 0;
  text-shadow: black 0 0 3px;
  background: #222222; }

.info ul.messages li.highlight div.timehint,
li.self div.timehint {

share/static/alice-dark.css  view on Meta::CPAN

  word-break: break-all; }

div.msg img {
  display: block;
  border: none; }

ul.messages li.monospace + li.monospace.consecutive {
  margin-top: -5px; }

ul.messages li.monospace div.msg {
  font-family: Monaco, monospace;
  font-size: 10px;
  line-height: 12px;
  word-wrap: normal;
  white-space: pre-wrap; }

li.monospace div.msg span[style*="bold"] {
  letter-spacing: -1px; }

ul.messages li.event {
  font-size: 11px;
  background: #333333;
  border-bottom: 1px solid #111111; }

ul.messages li.event.notice {
  background: #eb2222;
  color: #fff; }

ul.messages li.event.notice a {
  color: #fffc00;
  text-decoration: none; }

share/static/alice-dark.css  view on Meta::CPAN


ul.messages li.event.happynotice {
  background: #3fc842;
  color: #fff; }

ul.messages li.event div.msg {
  background: none;
  border-left: none; }

ul.messages li.event div.left {
  font-weight: normal; }

ul.messages li.announce div.msg {
  color: #777;
  white-space: pre-wrap; }

ul.messages li.announce div.msg ul.avatar_grid {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;

share/static/alice-dark.css  view on Meta::CPAN

ul.messages li.announce div.msg ul.avatar_grid li {
  width: 50px;
  height: 50px;
  float: left;
  margin: 0;
  padding: 0;
  text-align: center;
  clear: none;
  display: block;
  overflow: hidden;
  font-size: 10px;
  text-overflow: ellipsis; }

ul.messages li.announce div.msg ul.avatar_grid li div.gridimg {
  width: 32px;
  height: 32px;
  margin: 0 auto; }

ul.messages li.announce div.msg ul.avatar_grid li img {
  max-width: 32px;
  max-height: 32px;

share/static/alice-dark.css  view on Meta::CPAN

  background: #eee;
  border-bottom: 1px solid #999;
  position: fixed;
  top: 0px;
  left: 0px;
  right: 0px;
  height: 28px;
  padding: 5px 0 0 0; }

div#logsearch label {
  font-size: 0.7em;
  padding-right: 2px;
  padding-left: 10px;
  color: #666; }

div#logsearch form {
  display: block;
  margin: 0; }

ul#logresults {
  list-style: none;

share/static/alice-dark.css  view on Meta::CPAN

  position: absolute;
  top: 34px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  overflow: auto; }

ul#logresults li {
  border-bottom: 1px solid #eee;
  padding: 0;
  font-size: 0.8em;
  cursor: pointer; }

ul#logresults div.focus:hover {
  background: #eee; }

ul#logresults li div.focus {
  background: #fff;
  padding: 5px 10px; }

ul#logresults li.context div.focus:hover {

share/static/alice-dark.css  view on Meta::CPAN

  border: none;
  margin: 0;
  padding: 2px 0; }

ul#logresults li.context {
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
  background: url(image/shadow-bottom.png) bottom left repeat-x, url(image/shadow-top.png) top left repeat-x #eeeeee; }

ul#logresults span.metadata {
  font-size: 0.7em;
  color: #666; }

div#help {
  position: absolute;
  z-index: 999;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  left: 20px;
  right: 20px;
  top: 25px;

share/static/alice-dark.css  view on Meta::CPAN

  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.9); }

div#help div#helpclose {
  position: absolute;
  top: 17px;
  right: 20px;
  color: rgba(255, 255, 255, 0.75);
  font-size: 9px;
  letter-spacing: 1px;
  text-shadow: none;
  text-transform: uppercase; }

div#help div#helpclose:hover {
  cursor: pointer;
  color: #fff; }

div#help div#topics {
  position: absolute;
  top: 34px;
  bottom: 15px;
  left: 20px;
  right: 20px;
  overflow-y: auto; }

div#help h1 {
  margin: 0;
  font-size: 20px;
  border-bottom: 1px solid #999;
  font-weight: normal; }

div#help dl {
  width: 48%;
  font-size: 12px;
  margin-top: 0;
  padding-top: 10px;
  float: left;
  display: block;
  border-right: 1px solid #666;
  padding-right: 2%; }

div#help dl#shortcuts {
  border-right: none;
  float: right;
  padding-right: 0;
  padding-left: 2%; }

div#help h2 {
  color: yellow;
  margin-top: 0;
  font-weight: normal; }

div#help dt {
  font-weight: bold; }

div#help dd {
  font-weight: normal;
  margin: 0;
  margin-bottom: 10px; }

div.color_picker {
  position: absolute;
  right: 25px;
  bottom: 27px;
  width: 80px;
  border-bottom: none;
  margin: 0;

share/static/alice-dark.css  view on Meta::CPAN

  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.6);
  -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.6); }

div.color_picker div.toggle {
  height: 18px; }

div.color_picker div.toggle span.blank {
  float: right;
  color: red;
  font-weight: bold;
  text-align: center;
  width: 20px;
  line-height: 9px; }

div.color_picker div.toggle span#fg,
div.color_picker div.toggle span#bg {
  float: left;
  font-size: 9px;
  background: none;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  color: white;
  text-align: center;
  padding: 2px 5px; }

div.color_picker div.toggle span#fg.active,
div.color_picker div.toggle span#bg.active {

share/static/alice-dark.css  view on Meta::CPAN

div.config div.field {
  float: left;
  margin-bottom: 10px;
  margin-right: 8px; }

div.config div.field.clear {
  clear: both; }

div.config label, div.config input {
  display: block;
  font-size: 0.8em; }

div.config span {
  font-size: 0.8em; }

div.config select {
  width: 135px;
  font-size: 0.8em;
  outline: 0 none; }

div.config[multiple] {
  height: 100px; }

div.config div#server_controls {
  position: absolute;
  bottom: 18px;
  left: 6px; }

div.config div.controls {
  clear: both;
  font-size: 0.7em; }

div.config div.controls a {
  text-decoration: none;
  margin: 0 5px 0 0; }

div.config div.controls a:hover {
  text-shadow: none;
  text-decoration: underline; }

div.config label {

share/static/alice-dark.css  view on Meta::CPAN

  width: 150px;
  background: #fff;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc; }

div.config ul#connections li.header {
  background: #efefef;
  text-transform: uppercase;
  color: #777;
  letter-spacing: 1px;
  font-size: 0.7em;
  cursor: default; }

div.config ul#connections li.header:hover {
  background: #efefef; }

div.config ul#connections li {
  padding: 5px 8px;
  font-size: 0.9em;
  cursor: pointer;
  border: 1px solid #fff;
  border-bottom: none; }

div.config ul#connections li:hover {
  background: #ffffcc; }

div.config ul#connections li.disconnected.active,
div.config ul#connections li.connected.active {
  background: #3875d7;

share/static/alice-default.css  view on Meta::CPAN

  display: block;
  position: absolute;
  top: 0px;
  left: 0px;
  bottom: 0px;
  width: 22px;
  border: none;
  padding: 0;
  margin: 0;
  opacity: 0;
  font-size: 12px; }

select#tab_overflow_overlay option.unread {
  font-weight: bold; }

li#tab_overflow_button {
  background: url(image/sprites.png) 3px -174px no-repeat; }

li#tab_overflow_button.unread {
  background: url(image/sprites.png) 3px -194px no-repeat; }

li#config_button {
  background: url(image/sprites.png) 4px -216px no-repeat; }

body {
  font-family: "Lucida Grande", Helvetica, sans-serif;
  text-rendering: optimizeLegibility;
  background: white; }

a:link, a:visited, a:hover, a:active {
  color: #0033cc; }

a:hover {
  text-shadow: rgba(0, 0, 0, 0.3) 0 1px 1px; }

div.window {

share/static/alice-default.css  view on Meta::CPAN


tr.input div.editor,
tr.input textarea {
  line-height: 1.2em;
  min-height: 1.2em;
  width: 100%;
  padding: 3px 0;
  border: none;
  margin: 0;
  outline: 0 none;
  font-size: 12px;
  overflow: hidden;
  resize: none;
  font-family: "Lucida Grande", Helvetica, sans-serif; }

div.editor {
  white-space: pre-wrap;
  -khtml-nbsp-mode: space; }

tr.input div.editor_toolbar {
  overflow: hidden;
  position: absolute;
  right: -170px;
  padding-right: 8px;

share/static/alice-default.css  view on Meta::CPAN

  opacity: 0.2;
  -webkit-transition-property: right;
  -webkit-transition-duration: 0.3s; }

tr.input div.editor_toolbar button {
  visibility: hidden;
  display: block;
  float: left;
  color: #eeeeee;
  line-height: 10px;
  font-size: 11px;
  margin: 0;
  padding: 4px 3px 5px 3px;
  text-align: center;
  background: none;
  cursor: pointer;
  border: none; }

tr.input div.editor_toolbar button:hover {
  color: white; }

tr.input div.editor_toolbar button.selected {
  color: yellow; }

.bold {
  font-weight: bold; }

.italic {
  font-style: italic; }

.underline {
  text-decoration: underline; }

tr.input div.editor_toolbar:hover {
  opacity: 0.4;
  cursor: pointer; }

tr.input div.editor_toolbar.visible:hover {
  opacity: 1;

share/static/alice-default.css  view on Meta::CPAN

  visibility: visible; }

div.editor div,
div.editor p,
div.editor h1,
div.editor h2,
div.editor h3,
div.editor h4,
div.editor h5,
div.editor span {
  font-size: 1em !important;
  margin: 0 !important;
  padding: 0 !important; }

div.editor img {
  display: none !important; }

tr.input input.send {
  display: none; }

div#tab_container {

share/static/alice-default.css  view on Meta::CPAN

  height: 23px;
  background: #dddddd; }

body.blurred div#tab_container {
  background: #eeeeee; }

ul#tabs {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 11px;
  position: relative;
  float: left;
  margin-right: 62px;
  padding-left: 3px; }

body.blurred ul#tabs li {
  background: #eeeeee;
  color: #777777; }

ul#tabs li {

share/static/alice-default.css  view on Meta::CPAN

  width: 16px;
  padding: 4px 3px 3px 3px;
  cursor: pointer; }

ul#controls li:hover {
  background-color: #cccccc; }

tr.topic td {
  width: 100%;
  background: #efefef;
  font-size: 11px;
  text-align: center;
  border-top: 1px solid white;
  border-bottom: 1px solid #aaaaaa;
  padding: 1px 0;
  height: 1.2em; }

tr.topic td div.topic {
  height: 1.2em;
  overflow: hidden; }

share/static/alice-default.css  view on Meta::CPAN

  background: white; }

ul.messages {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  margin: 3px 0; }

ul.messages > li {
  font-size: 13px;
  display: block;
  position: relative;
  background-color: #eaeaea; }

ul.messages > li:not(.consecutive) {
  clear: both; }

ul.messages li.highlight {
  border-right: 5px solid #eb2222; }

share/static/alice-default.css  view on Meta::CPAN


ul.messages li div.msg {
  background: white; }

ul.messages li.consecutive div.left {
  display: none; }

div.left {
  float: left;
  width: 95px;
  font-weight: bold;
  text-align: right;
  padding: 4px 0;
  padding-right: 4px;
  padding-bottom: 0;
  text-overflow: ellipsis;
  position: relative; }

li.event a,
li.event {
  color: black; }

share/static/alice-default.css  view on Meta::CPAN

  padding: 0 2px;
  min-width: 28px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  text-shadow: black 0 1px 1px;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease-in-out; }

div.timehint {
  position: absolute;
  font-size: 10px;
  right: 0px;
  top: 1px;
  padding: 6px 4px 2px 4px;
  color: #555555;
  opacity: 0;
  text-shadow: white 0 0 3px;
  background: white; }

.info ul.messages li.highlight div.timehint,
li.self div.timehint {

share/static/alice-default.css  view on Meta::CPAN

  word-break: break-all; }

div.msg img {
  display: block;
  border: none; }

ul.messages li.monospace + li.monospace.consecutive {
  margin-top: -5px; }

ul.messages li.monospace div.msg {
  font-family: Monaco, monospace;
  font-size: 10px;
  line-height: 12px;
  word-wrap: normal;
  white-space: pre-wrap; }

li.monospace div.msg span[style*="bold"] {
  letter-spacing: -1px; }

ul.messages li.event {
  font-size: 11px;
  background: #d9e7fb;
  border-bottom: 1px solid white; }

ul.messages li.event.notice {
  background: #eb2222;
  color: #fff; }

ul.messages li.event.notice a {
  color: #fffc00;
  text-decoration: none; }

share/static/alice-default.css  view on Meta::CPAN


ul.messages li.event.happynotice {
  background: #3fc842;
  color: #fff; }

ul.messages li.event div.msg {
  background: none;
  border-left: none; }

ul.messages li.event div.left {
  font-weight: normal; }

ul.messages li.announce div.msg {
  color: #777;
  white-space: pre-wrap; }

ul.messages li.announce div.msg ul.avatar_grid {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;

share/static/alice-default.css  view on Meta::CPAN

ul.messages li.announce div.msg ul.avatar_grid li {
  width: 50px;
  height: 50px;
  float: left;
  margin: 0;
  padding: 0;
  text-align: center;
  clear: none;
  display: block;
  overflow: hidden;
  font-size: 10px;
  text-overflow: ellipsis; }

ul.messages li.announce div.msg ul.avatar_grid li div.gridimg {
  width: 32px;
  height: 32px;
  margin: 0 auto; }

ul.messages li.announce div.msg ul.avatar_grid li img {
  max-width: 32px;
  max-height: 32px;

share/static/alice-default.css  view on Meta::CPAN

  background: #eee;
  border-bottom: 1px solid #999;
  position: fixed;
  top: 0px;
  left: 0px;
  right: 0px;
  height: 28px;
  padding: 5px 0 0 0; }

div#logsearch label {
  font-size: 0.7em;
  padding-right: 2px;
  padding-left: 10px;
  color: #666; }

div#logsearch form {
  display: block;
  margin: 0; }

ul#logresults {
  list-style: none;

share/static/alice-default.css  view on Meta::CPAN

  position: absolute;
  top: 34px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  overflow: auto; }

ul#logresults li {
  border-bottom: 1px solid #eee;
  padding: 0;
  font-size: 0.8em;
  cursor: pointer; }

ul#logresults div.focus:hover {
  background: #eee; }

ul#logresults li div.focus {
  background: #fff;
  padding: 5px 10px; }

ul#logresults li.context div.focus:hover {

share/static/alice-default.css  view on Meta::CPAN

  border: none;
  margin: 0;
  padding: 2px 0; }

ul#logresults li.context {
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
  background: url(image/shadow-bottom.png) bottom left repeat-x, url(image/shadow-top.png) top left repeat-x #eeeeee; }

ul#logresults span.metadata {
  font-size: 0.7em;
  color: #666; }

div#help {
  position: absolute;
  z-index: 999;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  left: 20px;
  right: 20px;
  top: 25px;

share/static/alice-default.css  view on Meta::CPAN

  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.9); }

div#help div#helpclose {
  position: absolute;
  top: 17px;
  right: 20px;
  color: rgba(255, 255, 255, 0.75);
  font-size: 9px;
  letter-spacing: 1px;
  text-shadow: none;
  text-transform: uppercase; }

div#help div#helpclose:hover {
  cursor: pointer;
  color: #fff; }

div#help div#topics {
  position: absolute;
  top: 34px;
  bottom: 15px;
  left: 20px;
  right: 20px;
  overflow-y: auto; }

div#help h1 {
  margin: 0;
  font-size: 20px;
  border-bottom: 1px solid #999;
  font-weight: normal; }

div#help dl {
  width: 48%;
  font-size: 12px;
  margin-top: 0;
  padding-top: 10px;
  float: left;
  display: block;
  border-right: 1px solid #666;
  padding-right: 2%; }

div#help dl#shortcuts {
  border-right: none;
  float: right;
  padding-right: 0;
  padding-left: 2%; }

div#help h2 {
  color: yellow;
  margin-top: 0;
  font-weight: normal; }

div#help dt {
  font-weight: bold; }

div#help dd {
  font-weight: normal;
  margin: 0;
  margin-bottom: 10px; }

div.color_picker {
  position: absolute;
  right: 25px;
  bottom: 27px;
  width: 80px;
  border-bottom: none;
  margin: 0;

share/static/alice-default.css  view on Meta::CPAN

  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.6);
  -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.6); }

div.color_picker div.toggle {
  height: 18px; }

div.color_picker div.toggle span.blank {
  float: right;
  color: red;
  font-weight: bold;
  text-align: center;
  width: 20px;
  line-height: 9px; }

div.color_picker div.toggle span#fg,
div.color_picker div.toggle span#bg {
  float: left;
  font-size: 9px;
  background: none;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  color: black;
  text-align: center;
  padding: 2px 5px; }

div.color_picker div.toggle span#fg.active,
div.color_picker div.toggle span#bg.active {

share/static/alice-default.css  view on Meta::CPAN

div.config div.field {
  float: left;
  margin-bottom: 10px;
  margin-right: 8px; }

div.config div.field.clear {
  clear: both; }

div.config label, div.config input {
  display: block;
  font-size: 0.8em; }

div.config span {
  font-size: 0.8em; }

div.config select {
  width: 135px;
  font-size: 0.8em;
  outline: 0 none; }

div.config[multiple] {
  height: 100px; }

div.config div#server_controls {
  position: absolute;
  bottom: 18px;
  left: 6px; }

div.config div.controls {
  clear: both;
  font-size: 0.7em; }

div.config div.controls a {
  text-decoration: none;
  margin: 0 5px 0 0; }

div.config div.controls a:hover {
  text-shadow: none;
  text-decoration: underline; }

div.config label {

share/static/alice-default.css  view on Meta::CPAN

  width: 150px;
  background: #fff;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc; }

div.config ul#connections li.header {
  background: #efefef;
  text-transform: uppercase;
  color: #777;
  letter-spacing: 1px;
  font-size: 0.7em;
  cursor: default; }

div.config ul#connections li.header:hover {
  background: #efefef; }

div.config ul#connections li {
  padding: 5px 8px;
  font-size: 0.9em;
  cursor: pointer;
  border: 1px solid #fff;
  border-bottom: none; }

div.config ul#connections li:hover {
  background: #ffffcc; }

div.config ul#connections li.disconnected.active,
div.config ul#connections li.connected.active {
  background: #3875d7;

share/static/alice.js  view on Meta::CPAN

Element.collectTextNodesIgnoreClass = function(element, className) {
  return $A($(element).childNodes).collect( function(node) {
    return (node.nodeType==3 ? node.nodeValue :
      ((node.hasChildNodes() && !Element.hasClassName(node,className)) ?
        Element.collectTextNodesIgnoreClass(node, className) : ''));
  }).flatten().join('');
};

Element.setContentZoom = function(element, percent) {
  element = $(element);
  element.setStyle({fontSize: (percent/100) + 'em'});
  if (Prototype.Browser.WebKit) window.scrollBy(0,0);
  return element;
};

Element.getInlineOpacity = function(element){
  return $(element).style.opacity || '';
};

Element.forceRerendering = function(element) {
  try {

share/static/alice.js  view on Meta::CPAN

      scaleFrom: 100.0,
      scaleTo:   percent
    }, arguments[2] || { });
    this.start(options);
  },
  setup: function() {
    this.restoreAfterFinish = this.options.restoreAfterFinish || false;
    this.elementPositioning = this.element.getStyle('position');

    this.originalStyle = { };
    ['top','left','width','height','fontSize'].each( function(k) {
      this.originalStyle[k] = this.element.style[k];
    }.bind(this));

    this.originalTop  = this.element.offsetTop;
    this.originalLeft = this.element.offsetLeft;

    var fontSize = this.element.getStyle('font-size') || '100%';
    ['em','px','%','pt'].each( function(fontSizeType) {
      if (fontSize.indexOf(fontSizeType)>0) {
        this.fontSize     = parseFloat(fontSize);
        this.fontSizeType = fontSizeType;
      }
    }.bind(this));

    this.factor = (this.options.scaleTo - this.options.scaleFrom)/100;

    this.dims = null;
    if (this.options.scaleMode=='box')
      this.dims = [this.element.offsetHeight, this.element.offsetWidth];
    if (/^content/.test(this.options.scaleMode))
      this.dims = [this.element.scrollHeight, this.element.scrollWidth];
    if (!this.dims)
      this.dims = [this.options.scaleMode.originalHeight,
                   this.options.scaleMode.originalWidth];
  },
  update: function(position) {
    var currentScale = (this.options.scaleFrom/100.0) + (this.factor * position);
    if (this.options.scaleContent && this.fontSize)
      this.element.setStyle({fontSize: this.fontSize * currentScale + this.fontSizeType });
    this.setDimensions(this.dims[0] * currentScale, this.dims[1] * currentScale);
  },
  finish: function(position) {
    if (this.restoreAfterFinish) this.element.setStyle(this.originalStyle);
  },
  setDimensions: function(height, width) {
    var d = { };
    if (this.options.scaleX) d.width = width.round() + 'px';
    if (this.options.scaleY) d.height = height.round() + 'px';
    if (this.options.scaleFromCenter) {

share/static/alice.js  view on Meta::CPAN

      this.options
    );
  }
});

Element.CSS_PROPERTIES = $w(
  'backgroundColor backgroundPosition borderBottomColor borderBottomStyle ' +
  'borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth ' +
  'borderRightColor borderRightStyle borderRightWidth borderSpacing ' +
  'borderTopColor borderTopStyle borderTopWidth bottom clip color ' +
  'fontSize fontWeight height left letterSpacing lineHeight ' +
  'marginBottom marginLeft marginRight marginTop markerOffset maxHeight '+
  'maxWidth minHeight minWidth opacity outlineColor outlineOffset ' +
  'outlineWidth paddingBottom paddingLeft paddingRight paddingTop ' +
  'right textIndent top width wordSpacing zIndex');

Element.CSS_LENGTH = /^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;

String.__parseStyleElement = document.createElement('div');
String.prototype.parseStyle = function(){
  var style, styleRules = $H();

share/static/alice.js  view on Meta::CPAN

    } else {
      this.indentSelection();
    }
  }

  function indentSelected() {
    var node = window.getSelection().getNode();
    return node.match("blockquote, blockquote *");
  }

  function fontSelection(font) {
    this.execCommand('fontname', false, font);
  }

  function fontSizeSelection(fontSize) {
    this.execCommand('fontsize', false, fontSize);
  }

  function colorSelection(color) {
    this.execCommand('forecolor', false, color);
  }

  function backgroundColorSelection(color) {
    if(Prototype.Browser.Gecko) {
      this.execCommand('hilitecolor', false, color);
    } else {

share/static/alice.js  view on Meta::CPAN

     boldSelected:             boldSelected,
     underlineSelection:       underlineSelection,
     underlineSelected:        underlineSelected,
     italicSelection:          italicSelection,
     italicSelected:           italicSelected,
     strikethroughSelection:   strikethroughSelection,
     indentSelection:          indentSelection,
     outdentSelection:         outdentSelection,
     toggleIndentation:        toggleIndentation,
     indentSelected:           indentSelected,
     fontSelection:            fontSelection,
     fontSizeSelection:        fontSizeSelection,
     colorSelection:           colorSelection,
     backgroundColorSelection: backgroundColorSelection,
     alignSelection:           alignSelection,
     alignSelected:            alignSelected,
     linkSelection:            linkSelection,
     unlinkSelection:          unlinkSelection,
     linkSelected:             linkSelected,
     formatblockSelection:     formatblockSelection,
     toggleOrderedList:        toggleOrderedList,
     insertOrderedList:        insertOrderedList,

share/static/alice.js  view on Meta::CPAN


    commands: $H({}),

    queryCommands: $H({
      link:          linkSelected,
      orderedlist:   orderedListSelected,
      unorderedlist: unorderedListSelected
    }),

    styleSelectors: $H({
      fontname:    'fontFamily',
      fontsize:    'fontSize',
      forecolor:   'color',
      hilitecolor: 'backgroundColor',
      backcolor:   'backgroundColor'
    })
  };
})(window);


if (Prototype.Browser.IE) {
  Object.extend(Selection.prototype, (function() {

share/static/alice.js  view on Meta::CPAN

      function spanify(element, style) {
        element.replace(
          '<span style="' + style +
          '" class="Apple-style-span">' +
          element.innerHTML + '</span>'
        );
      }

      function convertStrongsToSpans() {
        container.select("strong").each(function(element) {
          spanify(element, "font-weight: bold");
        });
      }

      function convertEmsToSpans() {
        container.select("em").each(function(element) {
          spanify(element, "font-style: italic");
        });
      }

      function convertDivsToParagraphs() {
        container.select("div").each(function(element) {
          element.replace("<p>" + element.innerHTML + "</p>");
        });
      }

      if (Prototype.Browser.WebKit || Prototype.Browser.Gecko) {

share/static/alice.js  view on Meta::CPAN

      }

      function read(value) {
        accumulate(document.createTextNode(value));
      }

      function accumulateInlineElement(tagName, node) {
        var element = node.cloneNode(false);

        if (tagName == "span") {
          if ($(node).getStyle("fontWeight") == "bold") {
            element = new Element("strong");

          } else if ($(node).getStyle("fontStyle") == "italic") {
            element = new Element("em");
          }
        }

        accumulate(element);
        lineContainer = element;
      }

      function accumulate(node) {
        if (mode != EXPECTING_LIST_ITEM) {

share/static/alice.js  view on Meta::CPAN

      }
    }).bind(this).defer();
  },

  getContentHeight: function() {
    var element = new Element("div").setStyle({
      position:   "absolute",
      visibility: "hidden",
      left:       "-" + this.element.getWidth() + "px",
      width:      this.element.getWidth() - 7 + "px",
      fontFamily: this.element.getStyle("fontFamily"),
      fontSize:   this.element.getStyle("fontSize"),
      lineHeight: this.element.getStyle("lineHeight"),
      whiteSpace: "pre-wrap",
      wordWrap:   "break-word"
    });

    if (this.editor) element.addClassName("editor");

    var value = this.getValue();
    element.update(value.replace(/\n$/, "\n\n").replace("\n", "<br>"));
    $(document.body).insert(element);

share/templates/login.html  view on Meta::CPAN

? my ($app, $error) = @_;
<html>
  <head>
    <title>Use Alice Login</title>
    <link rel="shortcut icon" href="<?= $app->static_url("favicon.ico") ?>">
    <style type="text/css">
      body {
        text-align: center;
        font-family: Helvetica, Arial, sans-serif;
        font-size: 12px;
        background: #eee;
      }
      form {
        display: block;
        width: 150px;
        margin: 0 auto;
        text-align: left;
        background: #fff;
        border: 8px solid #ccc;
        padding: 20px;
      }
      input, label {
        display: block;
        width: 150px;
      }
      input {
        margin-bottom: 15px;
      }
      input[type="submit"] {
        font-size: 16px;
        margin-bottom: 0;
        margin-top: 30px;
      }
      .error {
        color: #d00b0b;
        display: block;
        margin-top: 15px;
      }
    </style>
    <link rel="apple-touch-icon" href="<?= $app->static_url("image/alice.png") ?>" />

share/templates/new_server.html  view on Meta::CPAN

  </div>
  <div class="field clear">
    <label>Server address</label>
    <input type="text" name="<?= $alias ?>_host" value="" size="15"/>
  </div>
  <div class="field">
    <label>Port</label>
    <input type="text" name="<?= $alias ?>_port" value="6667" size="6" style="float:left"/>
    <div style="float:left">
    <input type="checkbox" name="<?= $alias ?>_ssl" style="display:inline;margin-right:0px"/>
    <span style="font-size:0.7em">SSL</span>
    </div>
  </div
  <div class="field clear">
    <label>Nick</label>
    <input type="text" name="<?= $alias ?>_nick" value="" size="15" />
  </div>
  <div class="field">
    <label>Ircname</label>
    <input type="text" name="<?= $alias ?>_ircname" value="" size="15" />
  </div>
  <div class="field clear">
    <label>Username</label>
    <input type="text" name="<?= $alias ?>_username" value="" size="15" />
  </div>
  <div class="field">
    <label>Password</label>
    <input type="text" name="<?= $alias ?>_password" value="" size="15" />
  </div>
  <div class="field clear">
    <label>Channels
      <span style="font-size:0.8em">(e.g. <span style="font-family:monospace;font-size:1em">#alice</span>)</span>
    </label>
    <select name="<?= $alias ?>_channels" multiple="multiple" id="channels_<?= $alias ?>" class="channelselect">
    </select>
    <div class="controls">
      <a href="#" onclick="return addChannel('<?= $alias ?>')">New</a>
      <a href="#" onclick="return removeChannels('<?= $alias ?>')">Remove</a>
    </div>
  </div>
  <div class="field">
    <label>Commands</label>

share/templates/prefs.html  view on Meta::CPAN

    </div>

    <div class="field clear" style="width:150px">
      <input type="checkbox"<? if ($app->config->avatars eq "show") { ?> checked="checked"<? } ?> name="avatars" id="avatars" />
      <label>Show avatars?</label>
    </div>

    <div class="field clear" style="width:150px">
      <input type="checkbox"<? if ($app->config->alerts eq "show") { ?> checked="checked"<? } ?> name="alerts" id="alerts" />
      <label>Enable alerts?</label>
      <a style="font-size:10px" href="javascript:void(0)" onclick="window.webkitNotifications.requestPermission()">Grant permission</a>
    </div>

    <div class="field clear" style="width: 150px">
      <label for="style">Style <span style="font-size:0.8em">(refresh required)</span></label>
      <select name="style" id="style">
        <option value="default"<? if ($app->config->style eq "default") {?> selected<? } ?>>Default</option>
        <option value="dark"<? if ($app->config->style eq "dark") {?> selected<? } ?>>Dark</option>
      </select>
    </div>

    <div class="field clear" style="width: 150px">
      <label for="timeformat">Time Format</label>
      <select name="timeformat" id="timeformat">
        <option value="12"<? if ($app->config->timeformat eq "12") {?> selected<? } ?>>12 Hour</option>

share/templates/servers.html  view on Meta::CPAN

      <div class="field clear">
        <label>Server address</label>
        <input type="text" name="<?= $alias ?>_host" value="<?= $connection->config->{host} || "" ?>" size="15"/>
      </div>

      <div class="field">
        <label>Port</label>
        <input type="text" name="<?= $alias ?>_port" value="<?= $connection->config->{port} || "" ?>" size="6" style="float:left"/>
        <div style="float:left">
          <input type="checkbox" name="<?= $alias ?>_ssl"<? if ($connection->config->{ssl}) { ?> checked="checked"<? } ?> />
          <span style="font-size:0.7em">SSL</span>
        </div>
      </div>

      <div class="field clear">
        <label>Nick</label>
        <input type="text" name="<?= $alias ?>_nick" value="<?= $connection->config->{nick} || ""?>" size="15" />
      </div>

      <div class="field">
        <label>Name or Avatar URL</label>

share/templates/servers.html  view on Meta::CPAN

        <input type="text" name="<?= $alias ?>_username" value="<?= $connection->config->{username} || ""?>" size="15" />
      </div>

      <div class="field">
        <label>Password</label>
        <input type="text" name="<?= $alias ?>_password" value="<?= $connection->config->{password} || ""?>" size="15" />
      </div>

      <div class="field clear">
        <label>Channels
          <span style="font-size:0.8em">(e.g. <span style="font-family:monospace;font-size:1em">#alice</span>)</span>
        </label>
        <select name="<?= $alias ?>_channels" multiple="multiple" id="channels_<?= $alias ?>" class="channelselect">
          <? for my $channel (@{$connection->config->{channels}}) { ?>
          <option value="<?= $channel ?>"><?= $channel ?></option>
          <? } ?>
        </select>
        <div class="controls">
          <a href="#" onclick="return Alice.connections.addChannel('<?= $alias ?>')">Add</a>
          <a href="#" onclick="return Alice.connections.removeChannels('<?= $alias ?>')">Remove</a>
        </div>



( run in 1.086 second using v1.01-cache-2.11-cpan-5735350b133 )