@@ -135,6 +135,7 @@ contract VanityURL is Ownable,Pausable {
135
135
}
136
136
137
137
event VanityReserved (address _from , string _vanity_url );
138
+ event VanityTransfered (address _to ,address _from , string _vanity_url );
138
139
139
140
/* function to update Token address */
140
141
function updateTokenAddress (address _tokenAddress ) onlyOwner public {
@@ -259,12 +260,33 @@ contract VanityURL is Ownable,Pausable {
259
260
require (bytes (address_vanity_mapping[msg .sender ]).length != 0 );
260
261
address_vanity_mapping[_to] = address_vanity_mapping[msg .sender ];
261
262
vanity_address_mapping[address_vanity_mapping[msg .sender ]] = _to;
262
- VanityReserved ( _to, address_vanity_mapping[msg .sender ]);
263
+ VanityTransfered ( msg . sender , _to,address_vanity_mapping[msg .sender ]);
263
264
delete (address_vanity_mapping[msg .sender ]);
264
265
}
265
266
266
267
/*
267
- function to kill contract
268
+ function to transfer ownership for Vanity URL by Owner
269
+ */
270
+ function reserveVanityURLByOwner (address _to ,string _vanity_url ) whenNotPaused onlyOwner public {
271
+ _vanity_url = _toLower (_vanity_url);
272
+ require (checkForValidity (_vanity_url));
273
+ require (reservedKeywords[_vanity_url] != 1 );
274
+ /* check if vanity url is being used by anyone */
275
+ if (vanity_address_mapping[_vanity_url] != address (0x0 ))
276
+ {
277
+ /* delete from address mapping */
278
+ delete (address_vanity_mapping[vanity_address_mapping[_vanity_url]]);
279
+ /* delete from vanity mapping */
280
+ delete (vanity_address_mapping[_vanity_url]);
281
+ }
282
+ /* add new address to mapping */
283
+ vanity_address_mapping[_vanity_url] = _to;
284
+ address_vanity_mapping[_to] = _vanity_url;
285
+ VanityReserved (_to, _vanity_url);
286
+ }
287
+
288
+ /*
289
+ function to kill contract
268
290
*/
269
291
270
292
function kill () onlyOwner {
0 commit comments