Free icons

This commit is contained in:
Adrian Woźniak 2020-04-19 22:31:01 +02:00
parent 87da5a28c2
commit 1db393a424
11 changed files with 12857 additions and 45 deletions

Binary file not shown.

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -52,6 +52,8 @@ aside#navbar-left .item:hover {
aside#navbar-left .item > .styledIcon {
position: absolute;
left: 18px;
height: 42px;
line-height: 42px;
}
aside#navbar-left > .item > .styledIcon.search {
@ -79,6 +81,7 @@ aside#navbar-left .item > .itemText {
font-family: var(--font-bold);
font-size: 12px;
transition-property: right, visibility, opacity;
display: block;
}
aside#navbar-left > .bottom {

File diff suppressed because it is too large Load Diff

View File

@ -25,20 +25,23 @@ i.styledIcon:before {
-moz-osx-font-smoothing: grayscale;
}
i.styledIcon.bug:before {
content: "\e90f";
}
i.styledIcon.stopwatch:before {
content: "\e914";
}
i.styledIcon.bug:before {
font-family: 'IcoFont';
content: "\eec7";
}
i.styledIcon.task:before {
content: "\e910";
font-family: 'IcoFont';
content: "\ef27";
}
i.styledIcon.story:before {
content: "\e911";
font-family: 'IcoFont';
content: "\ef2d";
}
i.styledIcon.arrowDown:before {
@ -70,7 +73,8 @@ i.styledIcon.chevronUp:before {
}
i.styledIcon.board:before {
content: "\e904";
font-family: 'IcoFont';
content: "\ead0";
}
i.styledIcon.help:before {
@ -94,11 +98,13 @@ i.styledIcon.attach:before {
}
i.styledIcon.plus:before {
content: "\e906";
font-family: 'IcoFont';
content: "\efc2";
}
i.styledIcon.search:before {
content: "\e907";
font-family: 'IcoFont';
content: "\ec82";
}
i.styledIcon.issues:before {
@ -106,7 +112,8 @@ i.styledIcon.issues:before {
}
i.styledIcon.settings:before {
content: "\e909";
font-family: 'IcoFont';
content: "\efe2";
}
i.styledIcon.close:before {

View File

@ -1,5 +1,6 @@
@import "./css/normalize.css";
@import "./css/fonts.css";
@import "./css/iconfonts.css";
@import "./css/variables.css";
@import "./css/global.css";
@import "./css/sidebar.css";

View File

@ -2,19 +2,19 @@ use std::collections::HashMap;
use actix::*;
use actix_web::web::Data;
use futures::executor::block_on;
use jirs_data::{IssueFieldId, PayloadVariant, WsMsg};
use crate::db::issue_assignees::LoadAssignees;
use crate::db::issues::{LoadProjectIssues, UpdateIssue};
use crate::db::DbExecutor;
use crate::ws::{current_user, WsResult};
use crate::ws::{current_user, WebSocketActor, WsResult};
/*
pub struct UpdateIssueHandler {
id: i32,
field_id: IssueFieldId,
payload: PayloadVariant,
pub id: i32,
pub field_id: IssueFieldId,
pub payload: PayloadVariant,
}
impl Message for UpdateIssueHandler {
@ -28,7 +28,7 @@ impl Actor for UpdateIssueHandler {
impl Handler<UpdateIssueHandler> for WebSocketActor {
type Result = WsResult;
fn handle(&mut self, msg: UpdateIssueHandler, ctx: &mut Self::Context) -> Self::Result {
fn handle(&mut self, msg: UpdateIssueHandler, _ctx: &mut Self::Context) -> Self::Result {
self.require_user()?;
let UpdateIssueHandler {
@ -76,34 +76,17 @@ impl Handler<UpdateIssueHandler> for WebSocketActor {
_ => (),
};
let mut updated: Option<jirs_data::Issue> = None;
self.db
.send(msg)
.into_actor(self)
.then(move |res, _act, _ctx| {
updated = res.ok().and_then(|r| r.ok()).map(|i| i.into());
fut::ready(())
})
.wait(ctx);
let mut issue = match updated {
Some(issue) => issue,
let mut issue: jirs_data::Issue = match block_on(self.db.send(msg)) {
Ok(Ok(issue)) => issue.into(),
_ => return Ok(None),
};
let mut assignees = vec![];
self.db
.send(LoadAssignees { issue_id: issue.id })
.into_actor(self)
.then(|res, _act, _ctx| {
if let Ok(Ok(v)) = res {
assignees = v;
}
fut::ready(())
})
.wait(ctx);
use crate::models::IssueAssignee;
let assignees: Vec<IssueAssignee> =
match block_on(self.db.send(LoadAssignees { issue_id: issue.id })) {
Ok(Ok(v)) => v,
_ => return Ok(None),
};
for assignee in assignees {
issue.user_ids.push(assignee.user_id);
@ -112,7 +95,6 @@ impl Handler<UpdateIssueHandler> for WebSocketActor {
Ok(Some(WsMsg::IssueUpdated(issue)))
}
}
*/
pub async fn update_issue(
db: &Data<Addr<DbExecutor>>,

View File

@ -229,9 +229,9 @@ impl WebSocketActor {
};
}
// fn require_user(&self) -> Result<&jirs_data::User, WsMsg> {
// current_user(&self.current_user)
// }
fn require_user(&self) -> Result<&jirs_data::User, WsMsg> {
current_user(&self.current_user)
}
}
impl StreamHandler<Result<ws::Message, ws::ProtocolError>> for WebSocketActor {