Skip to content

Commit 090b44f

Browse files
authored
Update Attestation.sol
1 parent a610670 commit 090b44f

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

contracts/Attestation.sol

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ contract Attestation {
1919
struct Connection {
2020
bool active;
2121
bytes32 data;
22+
uint256 start;
23+
uint256 end;
2224
Direction direction;
2325
}
2426

@@ -60,28 +62,28 @@ contract Attestation {
6062
CompanyUsers[_company_address][msg.sender] = 1;
6163
}
6264

63-
function attestByUser(address _company_address, bytes32 _connection_type, Direction _direction) companyExist(_company_address){
65+
function attestByUser(address _company_address, bytes32 _connection_type, Direction _direction, uint256 _start, uint256 _end) companyExist(_company_address){
6466
if(!Users[msg.sender].active)
6567
{
6668
createUser(msg.sender,bytes32(0));
6769
}
68-
createConnection(msg.sender,_company_address,_connection_type,_direction);
70+
upsertConnection(msg.sender,_company_address,_connection_type,_direction,_start,_end);
6971
}
7072

71-
function attestByCompany(address _user_address,address _company_address, bytes32 _connection_type, Direction _direction) companyExist(_company_address) onlyCompanyUser(_company_address) {
73+
function attestByCompany(address _user_address,address _company_address, bytes32 _connection_type, Direction _direction, uint256 _start, uint256 _end) companyExist(_company_address) onlyCompanyUser(_company_address) {
7274
if(!Users[_user_address].active)
7375
{
7476
createUser(_user_address,bytes32(0));
7577
}
76-
createConnection(_user_address,_company_address,_connection_type,_direction);
78+
upsertConnection(_user_address,_company_address,_connection_type,_direction,_start,_end);
7779
}
7880

79-
function createConnection(address _user_address,address _company_address,bytes32 _connection_type, Direction _direction)
80-
{
81+
function upsertConnection(address _user_address,address _company_address,bytes32 _connection_type, Direction _direction, uint256 _start, uint256 _end) internal {
8182
UserDetails storage userDetails = Users[_user_address];
82-
assert(!userDetails.connections[_company_address][_connection_type].active);
8383
Connection storage connection = userDetails.connections[_company_address][_connection_type];
8484
connection.active = true;
85+
connection.start= _start;
86+
connection.end= _end;
8587
connection.direction = _direction;
8688
}
8789

0 commit comments

Comments
 (0)