protected void CopyDesignToProduction_Click(object sender, EventArgs e)
    {
        Util util = new Util();
        Hashtable State = (Hashtable)HttpRuntime.Cache[Session.SessionID];
        if (util.CheckSessionTimeout(State, Response, "../Default.aspx")) return;

        util.CopyStagingDesignToProduction(State);
        CopyDesignMessage.Text = "Done.";
        ProductionDesignExists.Visible = true;
    }
    protected void CopyDesignToProduction_Click(object sender, EventArgs e)
    {
        Util util = new Util();
        Hashtable State = (Hashtable)HttpRuntime.Cache[Session.SessionID];
        if (util.CheckSessionTimeout(State, Response, "../../Default.aspx")) return;

        util.CopyStagingDesignToProduction(State);
        CopyDesignMessage.Text = "Done.";
        ProductionDesignExists.Visible = true;

        //reset Dynamo DB so that a new production design is saved during high volume downloads
        DynamoDB ddb = new DynamoDB();
        ddb.DeleteItem(State, "apps", State["Username"].ToString(), util.GetProductionAppName(State));
    }