|  | @@ -2,19 +2,32 @@ var DomainStore = require('../stores').Domains;
 | 
	
		
			
				|  |  |  var React = require('react');
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  var DevModeToggle = React.createClass({
 | 
	
		
			
				|  |  | +  getInitialState: function() {
 | 
	
		
			
				|  |  | +    return {toggling: false};
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  componentWillReceiveProps: function() {
 | 
	
		
			
				|  |  | +    this.setState({toggling: false});
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  toggleDevMode: function() {
 | 
	
		
			
				|  |  | +    this.setState({toggling: true});
 | 
	
		
			
				|  |  | +    DomainStore.setDevelopmentMode(this.props.domain, this.props.devMode == 0);
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  |    render: function() {
 | 
	
		
			
				|  |  | -    if(this.props.devMode > 0) {
 | 
	
		
			
				|  |  | +    if(this.state.toggling) {
 | 
	
		
			
				|  |  | +      return <button className="btn btn-warning" disabled>{this.props.devMode > 0 ? 'Disabling...' : 'Enabling...'}</button>
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +    else if(this.props.devMode > 0) {
 | 
	
		
			
				|  |  |        var date = new Date(this.props.devMode*1000);
 | 
	
		
			
				|  |  |        var dateString = date.getFullYear()+'/'+(1+date.getMonth())+'/'+date.getDate()+' '+date.getHours()+':'+date.getMinutes();
 | 
	
		
			
				|  |  |        return (
 | 
	
		
			
				|  |  |          <div>
 | 
	
		
			
				|  |  | -          <button className='btn btn-success' onClick={this.props.onClick}>On</button>
 | 
	
		
			
				|  |  | +          <button className='btn btn-success' onClick={this.toggleDevMode}>On</button>
 | 
	
		
			
				|  |  |            <span> Active until {dateString}</span>
 | 
	
		
			
				|  |  |          </div>
 | 
	
		
			
				|  |  |        );
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |      else {
 | 
	
		
			
				|  |  | -      return <button className='btn btn-default' onClick={this.props.onClick}>Off</button>
 | 
	
		
			
				|  |  | +      return <button className='btn btn-default' onClick={this.toggleDevMode}>Off</button>
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  });
 | 
	
	
		
			
				|  | @@ -42,9 +55,6 @@ var PurgeButton = React.createClass({
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  });
 | 
	
		
			
				|  |  |  var Settings = React.createClass({
 | 
	
		
			
				|  |  | -  toggleDevMode: function() {
 | 
	
		
			
				|  |  | -    DomainStore.setDevelopmentMode(this.props.domain, this.props.settings.dev_mode.val() == 0);
 | 
	
		
			
				|  |  | -  },
 | 
	
		
			
				|  |  |    render: function() {
 | 
	
		
			
				|  |  |      if(!this.props.settings.val()) {
 | 
	
		
			
				|  |  |        return <div className="alert alert-info">Loading...</div>
 | 
	
	
		
			
				|  | @@ -55,7 +65,7 @@ var Settings = React.createClass({
 | 
	
		
			
				|  |  |          <table className="table">
 | 
	
		
			
				|  |  |            <tr>
 | 
	
		
			
				|  |  |              <td>Development Mode</td>
 | 
	
		
			
				|  |  | -            <td><DevModeToggle devMode={this.props.settings.dev_mode.val()} onClick={this.toggleDevMode} /></td>
 | 
	
		
			
				|  |  | +            <td><DevModeToggle domain={this.props.domain} devMode={this.props.settings.dev_mode.val()} /></td>
 | 
	
		
			
				|  |  |            </tr>
 | 
	
		
			
				|  |  |            <tr>
 | 
	
		
			
				|  |  |              <td>Purge Cache</td>
 |